Skip to content

Commit 72638a2

Browse files
committed
Added CBMC_VERSION defines to CMake configuration
1 parent 8a7893c commit 72638a2

File tree

10 files changed

+50
-0
lines changed

10 files changed

+50
-0
lines changed

CMakeLists.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,3 +95,18 @@ set_target_properties(
9595
CXX_STANDARD_REQUIRED true
9696
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "Developer ID Application: Daniel Kroening"
9797
)
98+
99+
find_package(Git)
100+
if(GIT_FOUND)
101+
message(STATUS "Found Git executable: ${GIT_EXECUTABLE}")
102+
execute_process(
103+
COMMAND "${GIT_EXECUTABLE}" "describe" "--tags" "--always" "--long"
104+
OUTPUT_VARIABLE git_repo_version
105+
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
106+
OUTPUT_STRIP_TRAILING_WHITESPACE
107+
)
108+
message(STATUS "Executable is version ${git_repo_version}")
109+
else()
110+
message(WARNING "Git is not installed, cannot generate version string")
111+
set(git_repo_version "n/a")
112+
endif()

jbmc/src/janalyzer/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,7 @@ target_link_libraries(janalyzer-lib
2424
# Executable
2525
add_executable(janalyzer janalyzer_main.cpp)
2626
target_link_libraries(janalyzer janalyzer-lib)
27+
28+
target_compile_definitions(janalyzer
29+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
30+
)

jbmc/src/jbmc/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,7 @@ target_link_libraries(jbmc-lib
2929
# Executable
3030
add_executable(jbmc jbmc_main.cpp)
3131
target_link_libraries(jbmc jbmc-lib)
32+
33+
target_compile_definitions(jbmc
34+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
35+
)

jbmc/src/jdiff/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,7 @@ target_link_libraries(jdiff-lib
2626
# Executable
2727
add_executable(jdiff jdiff_main.cpp)
2828
target_link_libraries(jdiff jdiff-lib)
29+
30+
target_compile_definitions(jdiff
31+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
32+
)

src/cbmc/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,7 @@ add_if_library(cbmc-lib jsil)
3131
# Executable
3232
add_executable(cbmc cbmc_main.cpp)
3333
target_link_libraries(cbmc cbmc-lib)
34+
35+
target_compile_definitions(cbmc
36+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
37+
)

src/clobber/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,6 @@ add_if_library(clobber-lib bv_refinement)
3030
add_executable(clobber clobber_main.cpp)
3131
target_link_libraries(clobber clobber-lib)
3232

33+
target_compile_definitions(clobber
34+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
35+
)

src/goto-analyzer/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,7 @@ add_if_library(goto-analyzer-lib jsil)
2626
# Executable
2727
add_executable(goto-analyzer goto_analyzer_main.cpp)
2828
target_link_libraries(goto-analyzer goto-analyzer-lib)
29+
30+
target_compile_definitions(goto-analyzer
31+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
32+
)

src/goto-cc/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,7 @@ else()
3434
COMMAND "${CMAKE_COMMAND}" -E create_symlink
3535
goto-cc $<TARGET_FILE_DIR:goto-cc>/goto-gcc)
3636
endif()
37+
38+
target_compile_definitions(goto-cc
39+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
40+
)

src/goto-diff/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,7 @@ add_if_library(goto-diff-lib jsil)
2828
# Executable
2929
add_executable(goto-diff goto_diff_main.cpp)
3030
target_link_libraries(goto-diff goto-diff-lib)
31+
32+
target_compile_definitions(goto-diff
33+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
34+
)

src/memory-models/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,7 @@ add_library(mmcc
1111
generic_includes(mmcc)
1212

1313
target_link_libraries(mmcc util)
14+
15+
target_compile_definitions(mmcc
16+
PRIVATE "-DCBMC_VERSION=\"${git_repo_version}\""
17+
)

0 commit comments

Comments
 (0)