+21
-1
@@ -61,6 +61,7 @@ set(VAMP_CORE_SOURCES
|
||||
src/vamp_zero/errors.cpp
|
||||
src/vamp_zero/library.cpp
|
||||
src/vamp_zero/navigation.cpp
|
||||
src/vamp_zero/notation.cpp
|
||||
src/vamp_zero/page_control.cpp
|
||||
src/vamp_zero/portal.cpp
|
||||
src/vamp_zero/score.cpp
|
||||
@@ -69,6 +70,17 @@ set(VAMP_CORE_SOURCES
|
||||
)
|
||||
|
||||
add_library(vamp-zero-core STATIC ${VAMP_CORE_SOURCES})
|
||||
set(VAMP_SCORE_METRICS ${CMAKE_CURRENT_BINARY_DIR}/generated/vamp_zero/score_metrics.hpp)
|
||||
add_custom_command(
|
||||
OUTPUT ${VAMP_SCORE_METRICS}
|
||||
COMMAND ${Python3_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/tools/generate_score_metrics.py
|
||||
--font ${CMAKE_CURRENT_SOURCE_DIR}/package/assets/fonts/petaluma/Petaluma.otf
|
||||
--output ${VAMP_SCORE_METRICS}
|
||||
DEPENDS tools/generate_score_metrics.py tools/requirements.txt package/assets/fonts/petaluma/Petaluma.otf
|
||||
VERBATIM
|
||||
)
|
||||
target_sources(vamp-zero-core PRIVATE ${VAMP_SCORE_METRICS})
|
||||
target_include_directories(vamp-zero-core PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/generated)
|
||||
target_include_directories(vamp-zero-core PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
)
|
||||
@@ -103,15 +115,20 @@ set(VAMP_MANIFEST ${VAMP_BUNDLE_DIR}/manifest.json)
|
||||
configure_file(package/manifest.json.in ${VAMP_MANIFEST} @ONLY)
|
||||
|
||||
file(GLOB_RECURSE VAMP_GENERATOR_INPUTS CONFIGURE_DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/data/*.musicxml
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/data/*.json
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/data/**/*.json
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/generator/*.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/generator/**/*.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/tools/requirements.txt
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/package/assets/fonts/*
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/package/assets/fonts/**/*
|
||||
)
|
||||
set(VAMP_GENERATED_ASSETS_DIR ${CMAKE_CURRENT_BINARY_DIR}/generated-assets)
|
||||
set(VAMP_GENERATED_ASSETS_STAMP ${CMAKE_CURRENT_BINARY_DIR}/generated-assets.stamp)
|
||||
string(JOIN "\n" VAMP_GENERATOR_INPUT_MANIFEST ${VAMP_GENERATOR_INPUTS})
|
||||
file(CONFIGURE OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated-assets.inputs
|
||||
CONTENT "@VAMP_GENERATOR_INPUT_MANIFEST@\n" @ONLY)
|
||||
add_custom_command(
|
||||
OUTPUT ${VAMP_GENERATED_ASSETS_STAMP}
|
||||
COMMAND ${Python3_EXECUTABLE}
|
||||
@@ -123,10 +140,13 @@ add_custom_command(
|
||||
--check
|
||||
COMMAND ${CMAKE_COMMAND} -E touch ${VAMP_GENERATED_ASSETS_STAMP}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DEPENDS ${VAMP_GENERATOR_INPUTS}
|
||||
DEPENDS ${VAMP_GENERATOR_INPUTS} ${CMAKE_CURRENT_BINARY_DIR}/generated-assets.inputs
|
||||
VERBATIM
|
||||
)
|
||||
add_custom_target(vamp-generated-assets ALL DEPENDS ${VAMP_GENERATED_ASSETS_STAMP})
|
||||
if(BUILD_TESTING)
|
||||
add_dependencies(product-vamp-test vamp-generated-assets)
|
||||
endif()
|
||||
|
||||
install(TARGETS vamp-zero
|
||||
RUNTIME DESTINATION zero/bin
|
||||
|
||||
Reference in New Issue
Block a user