diff options
author | Vitaliy Kirsanov <krokoziabla@yandex-team.ru> | 2019-04-29 12:48:24 +0300 |
---|---|---|
committer | Erik de Castro Lopo <erikd@mega-nerd.com> | 2019-05-04 11:41:48 +1000 |
commit | 573dbc12ae3fc68e8edea08842f5864c553cd311 (patch) | |
tree | b5d350a00d8b8b19dd10befe550fe5f86777416f /src | |
parent | 1cb968a7d45eea5f45451981c32df79e5b798739 (diff) | |
download | flac-573dbc12ae3fc68e8edea08842f5864c553cd311.tar.gz |
Use of BUILD_SHARED_LIBS added
Diffstat (limited to 'src')
-rw-r--r-- | src/flac/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/libFLAC++/CMakeLists.txt | 32 | ||||
-rw-r--r-- | src/libFLAC/CMakeLists.txt | 40 | ||||
-rw-r--r-- | src/metaflac/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/share/grabbag/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_grabbag/cuesheet/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_grabbag/picture/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_libFLAC++/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_libFLAC/CMakeLists.txt | 11 | ||||
-rw-r--r-- | src/test_libs_common/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_seeking/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/test_streams/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/utils/flacdiff/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/utils/flactimer/CMakeLists.txt | 2 |
14 files changed, 49 insertions, 56 deletions
diff --git a/src/flac/CMakeLists.txt b/src/flac/CMakeLists.txt index c347c9a4..97903577 100644 --- a/src/flac/CMakeLists.txt +++ b/src/flac/CMakeLists.txt @@ -11,7 +11,7 @@ add_executable(flac utils.c vorbiscomment.c) target_link_libraries(flac - FLAC-static + FLAC getopt replaygain_synthesis utf8) diff --git a/src/libFLAC++/CMakeLists.txt b/src/libFLAC++/CMakeLists.txt index 35d145c4..d6e3dfd6 100644 --- a/src/libFLAC++/CMakeLists.txt +++ b/src/libFLAC++/CMakeLists.txt @@ -18,30 +18,26 @@ check_cxx_source_compiles(" #endif" HAVE_CXX_VARARRAYS) -set(SOURCES +add_library(FLAC++ metadata.cpp stream_decoder.cpp stream_encoder.cpp) - -add_library(FLAC++-static STATIC ${SOURCES}) -target_compile_definitions(FLAC++-static PUBLIC FLAC__NO_DLL) -target_include_directories(FLAC++-static INTERFACE - "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>" - "$<INSTALL_INTERFACE:include>") -target_link_libraries(FLAC++-static PUBLIC FLAC-static) - -add_library(FLAC++ SHARED ${SOURCES}) -target_compile_definitions(FLAC++ PRIVATE FLACPP_API_EXPORTS FLAC__USE_VISIBILITY_ATTR) +target_compile_definitions(FLAC++ + PRIVATE $<$<BOOL:${BUILD_SHARED_LIBS}>:FLACPP_API_EXPORTS> + PRIVATE $<$<BOOL:${BUILD_SHARED_LIBS}>:FLAC__USE_VISIBILITY_ATTR> + PUBLIC $<$<NOT:$<BOOL:${BUILD_SHARED_LIBS}>>:FLAC__NO_DLL>) target_include_directories(FLAC++ INTERFACE "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>" - "$<INSTALL_INTERFACE:include>") -target_link_libraries(FLAC++ PRIVATE FLAC) -set_target_properties(FLAC++ PROPERTIES - CXX_VISIBILITY_PRESET hidden - VERSION 6.3.0 - SOVERSION 6) + "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>") +target_link_libraries(FLAC++ PUBLIC FLAC) +if(BUILD_SHARED_LIBS) + set_target_properties(FLAC++ PROPERTIES + CXX_VISIBILITY_PRESET hidden + VERSION 6.3.0 + SOVERSION 6) +endif() -install(TARGETS FLAC++ FLAC++-static EXPORT targets +install(TARGETS FLAC++ EXPORT targets ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}/" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/" RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}/") diff --git a/src/libFLAC/CMakeLists.txt b/src/libFLAC/CMakeLists.txt index 16afbe73..0f287e0b 100644 --- a/src/libFLAC/CMakeLists.txt +++ b/src/libFLAC/CMakeLists.txt @@ -54,7 +54,9 @@ set(libdir "${CMAKE_INSTALL_FULL_LIBDIR}") set(includedir "${CMAKE_INSTALL_FULL_INCLUDEDIR}") configure_file(flac.pc.in flac.pc @ONLY) -set(SOURCES +include_directories("include") + +add_library(FLAC bitmath.c bitreader.c bitwriter.c @@ -88,38 +90,28 @@ set(SOURCES $<$<BOOL:${OGG_FOUND}>:ogg_mapping.c> $<$<BOOL:${WIN32}>:windows_unicode_filenames.c>) if(TARGET FLAC-asm) - list(APPEND SOURCES $<TARGET_OBJECTS:FLAC-asm>) -endif() - -include_directories("include") - -add_library(FLAC-static STATIC ${SOURCES}) -target_compile_definitions(FLAC-static PUBLIC FLAC__NO_DLL) -target_include_directories(FLAC-static INTERFACE - "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>" - "$<INSTALL_INTERFACE:include>") -target_link_libraries(FLAC-static PUBLIC $<$<BOOL:${HAVE_LROUND}>:m>) -if(TARGET Ogg::Ogg-static) - target_link_libraries(FLAC-static PUBLIC Ogg::Ogg-static) -elseif(TARGET Ogg::Ogg) - target_link_libraries(FLAC-static PUBLIC Ogg::Ogg) + target_sources(FLAC PRIVATE $<TARGET_OBJECTS:FLAC-asm>) endif() -add_library(FLAC SHARED ${SOURCES}) -target_compile_definitions(FLAC PRIVATE FLAC_API_EXPORTS FLAC__USE_VISIBILITY_ATTR) +target_compile_definitions(FLAC + PRIVATE $<$<BOOL:${BUILD_SHARED_LIBS}>:FLAC_API_EXPORTS> + PRIVATE $<$<BOOL:${BUILD_SHARED_LIBS}>:FLAC__USE_VISIBILITY_ATTR> + PUBLIC $<$<NOT:$<BOOL:${BUILD_SHARED_LIBS}>>:FLAC__NO_DLL>) target_include_directories(FLAC INTERFACE "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>" - "$<INSTALL_INTERFACE:include>") + "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>") target_link_libraries(FLAC PRIVATE $<$<BOOL:${HAVE_LROUND}>:m>) if(TARGET Ogg::Ogg) target_link_libraries(FLAC PUBLIC Ogg::Ogg) endif() -set_target_properties(FLAC PROPERTIES - C_VISIBILITY_PRESET hidden - VERSION 8.3.0 - SOVERSION 8) +if(BUILD_SHARED_LIBS) + set_target_properties(FLAC PROPERTIES + C_VISIBILITY_PRESET hidden + VERSION 8.3.0 + SOVERSION 8) +endif() -install(TARGETS FLAC FLAC-static EXPORT targets +install(TARGETS FLAC EXPORT targets ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}/" LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/" RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}/") diff --git a/src/metaflac/CMakeLists.txt b/src/metaflac/CMakeLists.txt index 93f1ec6e..77eafbdb 100644 --- a/src/metaflac/CMakeLists.txt +++ b/src/metaflac/CMakeLists.txt @@ -9,7 +9,7 @@ add_executable(metaflac options.c usage.c utils.c) -target_link_libraries(metaflac FLAC-static getopt utf8) +target_link_libraries(metaflac FLAC getopt utf8) if(TARGET win_utf8_io) target_link_libraries(metaflac win_utf8_io) endif() diff --git a/src/share/grabbag/CMakeLists.txt b/src/share/grabbag/CMakeLists.txt index 8332fb49..203ae3f4 100644 --- a/src/share/grabbag/CMakeLists.txt +++ b/src/share/grabbag/CMakeLists.txt @@ -7,7 +7,7 @@ add_library(grabbag STATIC seektable.c snprintf.c) target_link_libraries(grabbag PUBLIC - FLAC-static + FLAC replaygain_analysis) if(TARGET win_utf8_io) target_link_libraries(grabbag PUBLIC win_utf8_io) diff --git a/src/test_grabbag/cuesheet/CMakeLists.txt b/src/test_grabbag/cuesheet/CMakeLists.txt index 35c1987d..dbe3a1a6 100644 --- a/src/test_grabbag/cuesheet/CMakeLists.txt +++ b/src/test_grabbag/cuesheet/CMakeLists.txt @@ -1,2 +1,2 @@ add_executable(test_cuesheet main.c) -target_link_libraries(test_cuesheet FLAC-static grabbag) +target_link_libraries(test_cuesheet FLAC grabbag) diff --git a/src/test_grabbag/picture/CMakeLists.txt b/src/test_grabbag/picture/CMakeLists.txt index 0ae66449..a51f7db8 100644 --- a/src/test_grabbag/picture/CMakeLists.txt +++ b/src/test_grabbag/picture/CMakeLists.txt @@ -1,2 +1,2 @@ add_executable(test_picture main.c) -target_link_libraries(test_picture FLAC-static grabbag) +target_link_libraries(test_picture FLAC grabbag) diff --git a/src/test_libFLAC++/CMakeLists.txt b/src/test_libFLAC++/CMakeLists.txt index 91d2a173..11c0052c 100644 --- a/src/test_libFLAC++/CMakeLists.txt +++ b/src/test_libFLAC++/CMakeLists.txt @@ -5,4 +5,4 @@ add_executable(test_libFLAC++ metadata.cpp metadata_manip.cpp metadata_object.cpp) -target_link_libraries(test_libFLAC++ FLAC++-static test_libs_common grabbag) +target_link_libraries(test_libFLAC++ FLAC++ test_libs_common grabbag) diff --git a/src/test_libFLAC/CMakeLists.txt b/src/test_libFLAC/CMakeLists.txt index 5679cf25..4bbadb9c 100644 --- a/src/test_libFLAC/CMakeLists.txt +++ b/src/test_libFLAC/CMakeLists.txt @@ -10,9 +10,14 @@ add_executable(test_libFLAC metadata.c metadata_manip.c metadata_object.c - md5.c) + md5.c + "$<TARGET_PROPERTY:FLAC,SOURCE_DIR>/bitreader.c" + "$<TARGET_PROPERTY:FLAC,SOURCE_DIR>/bitwriter.c" + "$<TARGET_PROPERTY:FLAC,SOURCE_DIR>/crc.c" + "$<TARGET_PROPERTY:FLAC,SOURCE_DIR>/md5.c") target_compile_definitions(test_libFLAC PRIVATE $<$<BOOL:${ENABLE_64_BIT_WORDS}>:ENABLE_64_BIT_WORDS>) -target_include_directories(test_libFLAC PRIVATE "$<TARGET_PROPERTY:FLAC-static,SOURCE_DIR>/include") -target_link_libraries(test_libFLAC FLAC-static grabbag test_libs_common) +target_include_directories(test_libFLAC PRIVATE + "$<TARGET_PROPERTY:FLAC,SOURCE_DIR>/include") +target_link_libraries(test_libFLAC FLAC grabbag test_libs_common) diff --git a/src/test_libs_common/CMakeLists.txt b/src/test_libs_common/CMakeLists.txt index 806f3530..8a0c8712 100644 --- a/src/test_libs_common/CMakeLists.txt +++ b/src/test_libs_common/CMakeLists.txt @@ -1,4 +1,4 @@ add_library(test_libs_common STATIC file_utils_flac.c metadata_utils.c) -target_link_libraries(test_libs_common PUBLIC FLAC-static) +target_link_libraries(test_libs_common PUBLIC FLAC) diff --git a/src/test_seeking/CMakeLists.txt b/src/test_seeking/CMakeLists.txt index 1c2a2f4b..dc7ae799 100644 --- a/src/test_seeking/CMakeLists.txt +++ b/src/test_seeking/CMakeLists.txt @@ -1,2 +1,2 @@ add_executable(test_seeking main.c) -target_link_libraries(test_seeking FLAC-static) +target_link_libraries(test_seeking FLAC) diff --git a/src/test_streams/CMakeLists.txt b/src/test_streams/CMakeLists.txt index 13e30234..f9fafb9d 100644 --- a/src/test_streams/CMakeLists.txt +++ b/src/test_streams/CMakeLists.txt @@ -1,2 +1,2 @@ add_executable(test_streams main.c) -target_link_libraries(test_streams FLAC-static grabbag) +target_link_libraries(test_streams FLAC grabbag) diff --git a/src/utils/flacdiff/CMakeLists.txt b/src/utils/flacdiff/CMakeLists.txt index f212b0ea..e6d08a63 100644 --- a/src/utils/flacdiff/CMakeLists.txt +++ b/src/utils/flacdiff/CMakeLists.txt @@ -1,5 +1,5 @@ add_executable(flacdiff main.cpp) -target_link_libraries(flacdiff FLAC++-static) +target_link_libraries(flacdiff FLAC++) if(TARGET win_utf8_io) target_link_libraries(flacdiff win_utf8_io) endif() diff --git a/src/utils/flactimer/CMakeLists.txt b/src/utils/flactimer/CMakeLists.txt index 40db1cf1..47bf1e5f 100644 --- a/src/utils/flactimer/CMakeLists.txt +++ b/src/utils/flactimer/CMakeLists.txt @@ -1,2 +1,2 @@ add_executable(flactimer main.cpp) -target_link_libraries(flactimer FLAC++-static) +target_link_libraries(flactimer FLAC++) |