diff options
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 92ecb7c..d171572 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -103,6 +103,14 @@ if(WITH_OLD_UTILS) list(APPEND libADLMIDI_INSTALLS adldumpmiles) endif() +if(WITH_ADLMIDI2 OR (WITH_EMBEDDED_BANKS AND WITH_GENADLDATA)) + find_package(OpenMP) +endif() + +if(WITH_HQ_RESAMPLER) + find_library(ZITA_RESAMPLER_LIBRARY "zita-resampler" REQUIRED) +endif() + if(WITH_EMBEDDED_BANKS) if(WITH_GENADLDATA) set(GEN_ADLDATA_SRC) @@ -151,6 +159,10 @@ if(WITH_EMBEDDED_BANKS) set_target_properties(gen_adldata PROPERTIES CXX_STANDARD 11 CXX_STANDARD_REQUIRED YES) + if(OPENMP_FOUND) + target_compile_options(gen_adldata PUBLIC "-fopenmp") + target_link_libraries(gen_adldata "-fopenmp") + endif() endif() else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") message("Turned on C++11 on MSVC") @@ -161,12 +173,16 @@ if(WITH_EMBEDDED_BANKS) target_compile_options(gen_adldata PUBLIC "-DADLDATA_WITH_COMMENTS") endif() - add_custom_target( - gen-adldata-run - COMMAND gen_adldata ${libADLMIDI_SOURCE_DIR}/src/adldata.cpp + set(ADLDATA_DATABASE + "${libADLMIDI_SOURCE_DIR}/src/adldata.cpp" + ) + add_custom_target(gen-adldata-run #OUTPUT ${ADLDATA_DATABASE} + COMMAND gen_adldata "${ADLDATA_DATABASE}" WORKING_DIRECTORY ${libADLMIDI_SOURCE_DIR} + DEPENDS gen_adldata "${libADLMIDI_SOURCE_DIR}/banks.ini" + COMMENT "Running Embedded FM banks database generation" + VERBATIM ) - add_dependencies(gen-adldata-run gen_adldata) endif() endif() @@ -333,8 +349,6 @@ if(WITH_MIDIPLAY) endif() if(WITH_ADLMIDI2) - find_package(OpenMP) - if(NOT WIN32 AND NOT DJGPP AND NOT MSDOS) find_library(SDL2_LIBRARY SDL2 REQUIRED) include_directories(${SDL2_INCLUDE_DIR}) @@ -483,12 +497,12 @@ if(WITH_VLC_PLUGIN) endif() if(WITH_HQ_RESAMPLER) - find_library(ZITA_RESAMPLER_LIBRARY "zita-resampler" REQUIRED) - add_definitions(-DADLMIDI_ENABLE_HQ_RESAMPLER) if(libADLMIDI_SHARED) + target_compile_definitions(ADLMIDI_shared PRIVATE -DADLMIDI_ENABLE_HQ_RESAMPLER) target_link_libraries(ADLMIDI_shared PUBLIC "${ZITA_RESAMPLER_LIBRARY}") endif() if(libADLMIDI_STATIC) + target_compile_definitions(ADLMIDI_static PRIVATE -DADLMIDI_ENABLE_HQ_RESAMPLER) target_link_libraries(ADLMIDI_static PUBLIC "${ZITA_RESAMPLER_LIBRARY}") endif() endif() |