diff options
Diffstat (limited to 'utils')
-rw-r--r-- | utils/adlmidi-2/CMakeLists.txt | 65 | ||||
-rw-r--r-- | utils/gen_adldata/CMakeLists.txt | 21 | ||||
-rw-r--r-- | utils/midiplay/CMakeLists.txt | 50 | ||||
-rw-r--r-- | utils/vlc_codec/CMakeLists.txt | 13 |
4 files changed, 54 insertions, 95 deletions
diff --git a/utils/adlmidi-2/CMakeLists.txt b/utils/adlmidi-2/CMakeLists.txt index 87fa810..6907b15 100644 --- a/utils/adlmidi-2/CMakeLists.txt +++ b/utils/adlmidi-2/CMakeLists.txt @@ -4,18 +4,16 @@ project(adlmidi2 CXX) set(CMAKE_CXX_STANDARD 11) find_package(OpenMP) +if(OPENMP_FOUND) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") +endif() set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) if(NOT WIN32 AND NOT DJGPP AND NOT MSDOS) - find_library(SDL2_LIBRARY SDL2 REQUIRED) - include_directories(${SDL2_INCLUDE_DIR}) - message("Found ${SDL2_LIBRARY}") -endif() - -if(NOT WIN32 AND NOT DJGPP AND NOT MSDOS) - set(ADLMIDI2_HAS_PUZZLE_GAME "TRUE") - set(ADLMIDI2_VIDEO_OUT_SUPPORT "TRUE") + set(ADLMIDI2_HAS_PUZZLE_GAME TRUE) + set(ADLMIDI2_VIDEO_OUT_SUPPORT TRUE) endif() @@ -30,62 +28,49 @@ if(ADLMIDI2_HAS_PUZZLE_GAME) endif() add_executable(adlmidi2 ${adlmidi2_src}) +target_link_libraries(adlmidi2 PRIVATE ADLMIDI) + +if(NOT WIN32 AND NOT DJGPP AND NOT MSDOS) + find_package(SDL2 REQUIRED) + string(STRIP ${SDL2_LIBRARIES} SDL2_LIBRARIES) + target_include_directories(adlmidi2 PRIVATE ${SDL2_INCLUDE_DIRS}) + target_link_libraries(adlmidi2 PRIVATE ${SDL2_LIBRARIES}) +endif() if(ADLMIDI2_HAS_PUZZLE_GAME) - target_compile_definitions(adlmidi2 PUBLIC "-DSUPPORT_PUZZLE_GAME") + target_compile_definitions(adlmidi2 PUBLIC SUPPORT_PUZZLE_GAME) endif() if(ADLMIDI2_VIDEO_OUT_SUPPORT) - target_compile_definitions(adlmidi2 PUBLIC "-DSUPPORT_VIDEO_OUTPUT") + target_compile_definitions(adlmidi2 PUBLIC SUPPORT_VIDEO_OUTPUT) endif() if(MSDOS OR DJGPP) - target_compile_definitions(adlmidi2 PUBLIC "-DHARDWARE_OPL3") + target_compile_definitions(adlmidi2 PUBLIC HARDWARE_OPL3) message("Turn on hardware OPL3 support on ADLMIDI2 tool") endif() if(WIN32) - target_link_libraries(adlmidi2 ADLMIDI_IF winmm) -elseif(DJGPP OR MSDOS) - target_link_libraries(adlmidi2 ADLMIDI_IF) -else() - set(ADLMIDI2_LIBS ADLMIDI_IF ${SDL2_LIBRARY} pthread dl m stdc++) - if(OPENBSD_LOCALBASE) - list(REMOVE_ITEM ADLMIDI2_LIBS dl) + target_link_libraries(adlmidi2 PRIVATE winmm) +else(NOT DJGPP AND NOT MSDOS) + if(NOT OPENBSD_LOCALBASE) + target_link_libraries(adlmidi2 PRIVATE dl) endif() - target_link_libraries(adlmidi2 ${ADLMIDI2_LIBS}) + target_link_libraries(adlmidi2 PRIVATE pthread m stdc++) endif() if(NOT WITH_CPP_EXTRAS) message(FATAL_ERROR "ADLMIDI2 Requires C++ Extras. Please enable WITH_CPP_EXTRAS option!") endif() -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MinGW" OR - CMAKE_COMPILER_IS_MINGW) - if(OPENMP_FOUND) - target_compile_options(adlmidi2 PUBLIC "-fopenmp") - target_link_libraries(adlmidi2 "-fopenmp") - endif() -else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") +if(MSVC) message("Turned on C++11 on MSVC") target_compile_options(adlmidi2 PUBLIC "/std:c++latest") endif() -if(libADLMIDI_SHARED) - add_dependencies(adlmidi2 ADLMIDI_shared) - if(NOT MSVC) - set_target_properties(adlmidi2 PROPERTIES COMPILE_FLAGS "-Wl,-rpath='$$ORIGIN/../lib'") - endif() -else() - if(NOT libADLMIDI_STATIC) - message(FATAL_ERROR "libADLMIDI is required to be built!") - endif() - add_dependencies(adlmidi2 ADLMIDI_static) +if(TARGET ADLMIDI_shared AND NOT MSVC) + set_target_properties(adlmidi2 PROPERTIES COMPILE_FLAGS "-Wl,-rpath='$$ORIGIN/../lib'") endif() install(TARGETS adlmidi2 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") - diff --git a/utils/gen_adldata/CMakeLists.txt b/utils/gen_adldata/CMakeLists.txt index 766b9b7..40aa4b5 100644 --- a/utils/gen_adldata/CMakeLists.txt +++ b/utils/gen_adldata/CMakeLists.txt @@ -4,6 +4,10 @@ project(gen_adldata CXX) set(CMAKE_CXX_STANDARD 11) find_package(OpenMP) +if(OPENMP_FOUND) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") +endif() set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) @@ -40,21 +44,11 @@ endif() add_executable(gen_adldata ${GEN_ADLDATA_SRC} ) -if(NOT MSVC) - target_link_libraries(gen_adldata pthread m stdc++) -endif() -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel" OR - "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MinGW" OR - CMAKE_COMPILER_IS_MINGW) - if(OPENMP_FOUND) - target_compile_options(gen_adldata PUBLIC "-fopenmp") - target_link_libraries(gen_adldata "-fopenmp") - endif() -else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") +if(MSVC) message("Turned on C++11 on MSVC") target_compile_options(gen_adldata PUBLIC "/std:c++latest") +else() + target_link_libraries(gen_adldata PRIVATE pthread m stdc++) endif() if(WITH_GENADLDATA_COMMENTS) @@ -71,4 +65,3 @@ add_custom_target(gen-adldata-run #OUTPUT ${ADLDATA_DATABASE} COMMENT "Running Embedded FM banks database generation" VERBATIM ) - diff --git a/utils/midiplay/CMakeLists.txt b/utils/midiplay/CMakeLists.txt index ac5d4c2..3dceee4 100644 --- a/utils/midiplay/CMakeLists.txt +++ b/utils/midiplay/CMakeLists.txt @@ -3,60 +3,44 @@ project(adlmidiplay CXX) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) -if(NOT MSDOS AND NOT DJGPP AND NOT MIDIPLAY_WAVE_ONLY) - find_library(SDL2_LIBRARY SDL2 REQUIRED) - include_directories(${SDL2_INCLUDE_DIR}) - message("Found ${SDL2_LIBRARY}") -else() - unset(SDL2_LIBRARY) -endif() - add_executable(adlmidiplay adlmidiplay.cpp wave_writer.c ) +if(NOT MSDOS AND NOT DJGPP AND NOT MIDIPLAY_WAVE_ONLY) + find_package(SDL2 REQUIRED) + string(STRIP ${SDL2_LIBRARIES} SDL2_LIBRARIES) + target_include_directories(adlmidiplay PRIVATE ${SDL2_INCLUDE_DIRS}) + target_link_libraries(adlmidiplay PRIVATE ${SDL2_LIBRARIES}) +endif() + if(MIDIPLAY_WAVE_ONLY) - target_compile_definitions(adlmidiplay PUBLIC "-DOUTPUT_WAVE_ONLY") + target_compile_definitions(adlmidiplay PUBLIC OUTPUT_WAVE_ONLY) message("Demo tool will only output WAVE file, no playing support.") endif() if(MSDOS OR DJGPP) - target_compile_definitions(adlmidiplay PUBLIC "-DHARDWARE_OPL3") + target_compile_definitions(adlmidiplay PUBLIC HARDWARE_OPL3) message("Turn on hardware OPL3 support on demo tool") endif() +target_link_libraries(adlmidiplay PRIVATE ADLMIDI) + if(WIN32) - if(MSVC) - target_link_libraries(adlmidiplay ADLMIDI_IF ${SDL2_LIBRARY}) - else() - target_link_libraries(adlmidiplay ADLMIDI_IF ${SDL2_LIBRARY} pthread) + if(NOT MSVC) + target_link_libraries(adlmidiplay PRIVATE pthread) endif() -else() - if(MSDOS OR DJGPP) - target_link_libraries(adlmidiplay ADLMIDI_IF) - else() - set(ADLMIDIPLAY_LIBS ADLMIDI_IF ${SDL2_LIBRARY} pthread dl m stdc++) - if(OPENBSD_LOCALBASE) - list(REMOVE_ITEM ADLMIDIPLAY_LIBS dl) - endif() - target_link_libraries(adlmidiplay ${ADLMIDIPLAY_LIBS}) +elseif(NOT MSDOS AND NOT DJGPP) + if(NOT OPENBSD_LOCALBASE) + target_link_libraries(adlmidiplay PRIVATE dl) endif() + target_link_libraries(adlmidiplay PRIVATE pthread m stdc++) endif() if(MSDOS OR DJGPP) set_target_properties(adlmidiplay PROPERTIES OUTPUT_NAME adlmidi) endif() -if(libADLMIDI_SHARED) - add_dependencies(adlmidiplay ADLMIDI_shared) -else() - if(NOT libADLMIDI_STATIC) - message(FATAL_ERROR "libADLMIDI is required to be built!") - endif() - add_dependencies(adlmidiplay ADLMIDI_static) -endif() - install(TARGETS adlmidiplay RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") - diff --git a/utils/vlc_codec/CMakeLists.txt b/utils/vlc_codec/CMakeLists.txt index 2973b13..aecf582 100644 --- a/utils/vlc_codec/CMakeLists.txt +++ b/utils/vlc_codec/CMakeLists.txt @@ -3,7 +3,8 @@ project(adlmidi_vlc_plugin C) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) -include(../../cmake/FindLIBVLC.cmake) +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/../../cmake") +find_package(LIBVLC REQUIRED) message("Found ${LIBVLCCORE_LIBRARY} of version ${LIBVLC_VERSION} with includes ${LIBVLC_INCLUDE_DIR}") set(adlmidi_vlc_src) @@ -21,16 +22,15 @@ target_include_directories(adlmidi_vlc_plugin PRIVATE ${LIBVLC_INCLUDE_DIR}/vlc/plugins ${LIBVLC_INCLUDE_DIR}/vlc) -set(ADLMIDIVLC_LIBS ADLMIDI_IF_STATIC ${LIBVLCCORE_LIBRARY} m) +target_link_libraries(adlmidi_vlc_plugin PRIVATE ADLMIDI_static ${LIBVLCCORE_LIBRARY} m) -if(CMAKE_SYSTEM_NAME STREQUAL "Windows" AND CMAKE_COMPILER_IS_GNUCXX) +if(WIN32 AND CMAKE_COMPILER_IS_GNUCXX) set_property(TARGET adlmidi_vlc_plugin APPEND_STRING PROPERTY LINK_FLAGS " -static-libgcc -static-libstdc++") set_property(TARGET adlmidi_vlc_plugin APPEND_STRING PROPERTY LINK_FLAGS " -Wl,-Bstatic,--whole-archive -lpthread -Wl,-Bdynamic,--no-whole-archive") elseif(NOT WIN32) - list(APPEND ADLMIDIVLC_LIBS stdc++) + target_link_libraries(adlmidi_vlc_plugin PRIVATE stdc++) endif() -target_link_libraries(adlmidi_vlc_plugin ${ADLMIDIVLC_LIBS}) # target_link_libraries(adlmidi_vlc_plugin INTERFACE "-export-symbol-regex ^vlc_entry") if(NOT VLC_PLUGIN_NOINSTALL) @@ -38,6 +38,3 @@ if(NOT VLC_PLUGIN_NOINSTALL) else() install(TARGETS adlmidi_vlc_plugin DESTINATION "${CMAKE_INSTALL_LIBDIR}/vlc-codec/") endif() - -add_dependencies(adlmidi_vlc_plugin ADLMIDI_static) - |