Skip to content

Commit 76f99a5

Browse files
psychocoderHPCSimeonEhrig
authored andcommitted
add version number to alpaka3
1 parent 440d769 commit 76f99a5

File tree

4 files changed

+53
-1
lines changed

4 files changed

+53
-1
lines changed

CMakeLists.txt

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,39 @@
55
#
66

77
cmake_minimum_required(VERSION 3.25)
8-
project(alpaka)
8+
9+
# Find alpaka version.
10+
file(
11+
STRINGS
12+
"${CMAKE_CURRENT_LIST_DIR}/include/alpaka/version.hpp"
13+
alpaka_VERSION_MAJOR_HPP
14+
REGEX "#define ALPAKA_VERSION_MAJOR "
15+
)
16+
file(
17+
STRINGS
18+
"${CMAKE_CURRENT_LIST_DIR}/include/alpaka/version.hpp"
19+
alpaka_VERSION_MINOR_HPP
20+
REGEX "#define ALPAKA_VERSION_MINOR "
21+
)
22+
file(
23+
STRINGS
24+
"${CMAKE_CURRENT_LIST_DIR}/include/alpaka/version.hpp"
25+
alpaka_VERSION_PATCH_HPP
26+
REGEX "#define ALPAKA_VERSION_PATCH "
27+
)
28+
29+
string(REGEX MATCH "([0-9]+)" alpaka_VERSION_MAJOR ${alpaka_VERSION_MAJOR_HPP})
30+
string(REGEX MATCH "([0-9]+)" alpaka_VERSION_MINOR ${alpaka_VERSION_MINOR_HPP})
31+
string(REGEX MATCH "([0-9]+)" alpaka_VERSION_PATCH ${alpaka_VERSION_PATCH_HPP})
32+
33+
set(PACKAGE_VERSION "${alpaka_VERSION_MAJOR}.${alpaka_VERSION_MINOR}.${alpaka_VERSION_PATCH}")
34+
35+
project(
36+
alpaka
37+
VERSION ${alpaka_VERSION_MAJOR}.${alpaka_VERSION_MINOR}.${alpaka_VERSION_PATCH}
38+
DESCRIPTION "The alpaka library is a header-only C++20 abstraction library for accelerator development."
39+
HOMEPAGE_URL "https://github.com/alpaka-group/alpaka3"
40+
)
941

1042
# This file's directory.
1143
set(_alpaka_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR})

cmake/alpakaCommon.cmake

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,11 @@ if(NOT TARGET alpaka)
114114
target_compile_definitions(alpaka_target_headers INTERFACE ALPAKA_CMAKE_TARGET_HEADERS)
115115

116116
add_library(alpaka INTERFACE)
117+
set_target_properties(alpaka PROPERTIES VERSION ${PROJECT_VERSION})
118+
119+
get_target_property(version alpaka VERSION)
120+
message(STATUS "Alpaka version: ${version}")
121+
117122
add_library(alpaka::alpaka ALIAS alpaka)
118123
target_compile_definitions(alpaka INTERFACE ALPAKA_CMAKE_TARGET_ALPAKA)
119124

include/alpaka/core/config.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
#include "alpaka/core/PP.hpp"
99
#include "alpaka/core/hipConfig.hpp"
10+
#include "alpaka/version.hpp"
1011

1112
// guard cmake target alpaka
1213
#if defined(ALPAKA_CMAKE_TARGET_ALPAKA) && !defined(ALPAKA_CMAKE_TARGET_ALPAKA_FINALIZE_CALLED)

include/alpaka/version.hpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/* Copyright 2025 Benjamin Worpitz, Erik Zenker, Jan Stephan, René Widera
2+
* SPDX-License-Identifier: MPL-2.0
3+
*/
4+
5+
#pragma once
6+
7+
#include "core/PP.hpp"
8+
9+
#define ALPAKA_VERSION_MAJOR 3
10+
#define ALPAKA_VERSION_MINOR 0
11+
#define ALPAKA_VERSION_PATCH 0
12+
13+
//! The alpaka library version number
14+
#define ALPAKA_VERSION ALPAKA_VERSION_NUMBER(ALPAKA_VERSION_MAJOR, ALPAKA_VERSION_MINOR, ALPAKA_VERSION_PATCH)

0 commit comments

Comments
 (0)