epel9
Nicolas Chauvet 5 years ago
parent 9059f07e45
commit bc0149a602

@ -0,0 +1,87 @@
diff -up libmysofa-1.1/CMakeLists.txt.static libmysofa-1.1/CMakeLists.txt
--- libmysofa-1.1/CMakeLists.txt.static 2020-06-13 17:02:13.000000000 +0200
+++ libmysofa-1.1/CMakeLists.txt 2020-07-08 10:13:45.639569055 +0200
@@ -7,6 +7,7 @@ include(GNUInstallDirs)
option(BUILD_TESTS "Build test programs" ON)
option(BUILD_SHARED_LIBS "Build shared library" ON)
+option(BUILD_STATIC_LIBS "Build static library" OFF)
option(CODE_COVERAGE "Enable coverage reporting" ON)
set(CPACK_PACKAGE_DESCRIPTION "SOFA file reader for better HRTFs")
diff -up libmysofa-1.1/src/CMakeLists.txt.static libmysofa-1.1/src/CMakeLists.txt
--- libmysofa-1.1/src/CMakeLists.txt.static 2020-06-13 17:02:13.000000000 +0200
+++ libmysofa-1.1/src/CMakeLists.txt 2020-07-08 10:18:22.885044829 +0200
@@ -75,6 +75,7 @@ set(libsrc
hrtf/easy.c
hrtf/cache.c
resampler/speex_resampler.c)
+if(BUILD_STATIC_LIBS)
add_library(mysofa-static STATIC ${libsrc})
target_link_libraries(mysofa-static LINK_PRIVATE ${MATH} ${ZLIB_LIBRARIES})
set_target_properties(
@@ -83,15 +84,16 @@ set_target_properties(
ON)
install(TARGETS mysofa-static ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-if(UNIX
- AND CODE_COVERAGE
- AND CMAKE_CXX_COMPILER_ID MATCHES "GNU")
- target_compile_options(mysofa-static PUBLIC -g -O0 -Wall -fprofile-arcs
- -ftest-coverage)
- if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13)
- target_link_options(mysofa-static PUBLIC --coverage)
- else()
- target_link_libraries(mysofa-static LINK_PUBLIC gcov --coverage)
+ if(UNIX
+ AND CODE_COVERAGE
+ AND CMAKE_CXX_COMPILER_ID MATCHES "GNU")
+ target_compile_options(mysofa-static PUBLIC -g -O0 -Wall -fprofile-arcs
+ -ftest-coverage)
+ if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13)
+ target_link_options(mysofa-static PUBLIC --coverage)
+ else()
+ target_link_libraries(mysofa-static LINK_PUBLIC gcov --coverage)
+ endif()
endif()
endif()
@@ -137,7 +139,11 @@ install(FILES hrtf/mysofa.h DESTINATION
if(BUILD_TESTS)
add_executable(mysofa2json tests/sofa2json.c tests/json.c)
- target_link_libraries(mysofa2json mysofa-static)
+ if(BUILD_STATIC_LIBS)
+ target_link_libraries(mysofa2json mysofa-static)
+ else()
+ target_link_libraries(mysofa2json mysofa-shared)
+ endif()
add_executable(
external
@@ -159,7 +159,11 @@ if(BUILD_TESTS)
tests/cache.c
tests/json.c
tests/user_defined_variable.c)
- target_link_libraries(external mysofa-static ${CUNIT_LIBRARIES})
+ if(BUILD_STATIC_LIBS)
+ target_link_libraries(external mysofa-static ${CUNIT_LIBRARIES})
+ else()
+ target_link_libraries(external mysofa-shared ${CUNIT_LIBRARIES} m)
+ endif()
add_test(
NAME external
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
@@ -173,7 +177,11 @@ if(BUILD_TESTS)
COMMAND internal)
add_executable(multithread tests/multithread.c)
- target_link_libraries(multithread mysofa-static pthread)
+ if(BUILD_STATIC_LIBS)
+ target_link_libraries(multithread mysofa-static pthread)
+ else()
+ target_link_libraries(multithread mysofa-shared pthread m)
+ endif()
add_test(
NAME multithread
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
Loading…
Cancel
Save