Generalized build ID for all subprojects

This commit is contained in:
Jean Pierre Cimalando 2021-04-30 18:02:20 +02:00
parent 90f34bd7ec
commit 3e4da876b3
4 changed files with 20 additions and 11 deletions

View file

@ -74,9 +74,7 @@ add_library(sfizz_editor STATIC EXCLUDE_FROM_ALL
src/editor/layout/about.hpp
src/editor/utility/vstgui_after.h
src/editor/utility/vstgui_before.h
src/editor/GitBuildId.h
${UI_FILES}
"${CMAKE_CURRENT_BINARY_DIR}/git-build-id/GitBuildId.c")
${UI_FILES})
add_library(sfizz::editor ALIAS sfizz_editor)
target_include_directories(sfizz_editor PUBLIC "src")
target_link_libraries(sfizz_editor PUBLIC sfizz::messaging sfizz::plugins-common)
@ -138,11 +136,5 @@ if(NOT CMAKE_CROSSCOMPILING)
endforeach()
endif()
# git build identifier
add_custom_target(sfizz_editor_git_build_id
COMMAND "${CMAKE_COMMAND}"
"-DSOURCE_DIR=${PROJECT_SOURCE_DIR}"
"-DOUTPUT_FILE=${CMAKE_CURRENT_BINARY_DIR}/git-build-id/GitBuildId.c"
"-P" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/GitBuildID.cmake"
BYPRODUCTS "git-build-id/GitBuildId.c")
add_dependencies(sfizz_editor sfizz_editor_git_build_id)
# Git build identifier
target_link_libraries(sfizz_editor PRIVATE sfizz-git-build-id)

View file

@ -351,6 +351,19 @@ endif()
# Generic library alias
add_library(sfizz::sfizz ALIAS sfizz_static)
# Git build identifier
add_custom_target(sfizz-generate-git-build-id
COMMAND "${CMAKE_COMMAND}"
"-DSOURCE_DIR=${PROJECT_SOURCE_DIR}"
"-DOUTPUT_FILE=${PROJECT_BINARY_DIR}/git-build-id/GitBuildId.c"
"-P" "${PROJECT_SOURCE_DIR}/cmake/GitBuildID.cmake"
BYPRODUCTS "${PROJECT_BINARY_DIR}/git-build-id/GitBuildId.c")
add_library(sfizz-git-build-id STATIC EXCLUDE_FROM_ALL
"sfizz/git-build-id/GitBuildId.h"
"${PROJECT_BINARY_DIR}/git-build-id/GitBuildId.c")
target_include_directories(sfizz-git-build-id PUBLIC "sfizz/git-build-id")
add_dependencies(sfizz-git-build-id sfizz-generate-git-build-id)
# Preserve generated files (Faust)
set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM TRUE)

View file

@ -6,7 +6,9 @@
#pragma once
#if defined(__cplusplus)
extern "C" {
#endif
/**
* @brief Short identifier of the current head commit.
@ -14,4 +16,6 @@ extern "C" {
*/
extern const char* GitBuildId;
#if defined(__cplusplus)
} // extern "C"
#endif