| make static libs optional. already sent upstream. |
| |
| --- a/CMakeLists.txt |
| +++ b/CMakeLists.txt |
| @@ -46,6 +46,8 @@ set(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development") |
| "Static library, good if you want to embed libftdi1 in your application.") |
| set(CPACK_COMPONENT_HEADERS_DESCRIPTION |
| "C/C++ header files.") |
| + |
| +option ( STATICLIBS "Build static libraries" ON ) |
| |
| set(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development") |
| set(CPACK_COMPONENT_STATICLIBS_GROUP "Development") |
| --- a/ftdipp/CMakeLists.txt |
| +++ b/ftdipp/CMakeLists.txt |
| @@ -30,12 +30,16 @@ if (FTDIPP) |
| set_target_properties(ftdipp1 PROPERTIES VERSION ${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 2) |
| |
| # Static library |
| - add_library(ftdipp1-static STATIC ${cpp_sources}) |
| - set_target_properties(ftdipp1-static PROPERTIES OUTPUT_NAME "ftdipp1") |
| + if (STATICLIBS) |
| + add_library(ftdipp1-static STATIC ${cpp_sources}) |
| + set_target_properties(ftdipp1-static PROPERTIES OUTPUT_NAME "ftdipp1") |
| + endif (STATICLIBS) |
| |
| # Prevent clobbering each other during the build |
| set_target_properties(ftdipp1 PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| - set_target_properties(ftdipp1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| + if (STATICLIBS) |
| + set_target_properties(ftdipp1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| + endif (STATICLIBS) |
| |
| # Dependencies |
| target_link_libraries(ftdipp1 ftdi1 ${LIBUSB_LIBRARIES} ${BOOST_LIBRARIES}) |
| @@ -46,10 +50,12 @@ if (FTDIPP) |
| LIBRARY DESTINATION lib${LIB_SUFFIX} |
| COMPONENT sharedlibs |
| ) |
| - install( TARGETS ftdipp1-static |
| - ARCHIVE DESTINATION lib${LIB_SUFFIX} |
| - COMPONENT staticlibs |
| - ) |
| + if (STATICLIBS) |
| + install( TARGETS ftdipp1-static |
| + ARCHIVE DESTINATION lib${LIB_SUFFIX} |
| + COMPONENT staticlibs |
| + ) |
| + endif (STATICLIBS) |
| install( FILES ${cpp_headers} |
| DESTINATION include/${PROJECT_NAME} |
| COMPONENT headers |
| @@ -61,10 +67,12 @@ if (FTDIPP) |
| DESTINATION bin |
| COMPONENT sharedlibs |
| ) |
| - install( TARGETS ftdipp1-static |
| - DESTINATION bin |
| - COMPONENT staticlibs |
| - ) |
| + if (STATICLIBS) |
| + install( TARGETS ftdipp1-static |
| + DESTINATION bin |
| + COMPONENT staticlibs |
| + ) |
| + endif (STATICLIBS) |
| install( FILES ${cpp_headers} |
| DESTINATION include/${PROJECT_NAME} |
| COMPONENT headers |
| --- a/src/CMakeLists.txt |
| +++ b/src/CMakeLists.txt |
| @@ -28,11 +28,15 @@ set_target_properties(ftdi1 PROPERTIES VERSION ${VERSION_FIXUP}.${MINOR_VERSION} |
| |
| # Static library |
| add_library(ftdi1-static STATIC ${c_sources}) |
| -set_target_properties(ftdi1-static PROPERTIES OUTPUT_NAME "ftdi1") |
| +if (STATICLIBS) |
| + set_target_properties(ftdi1-static PROPERTIES OUTPUT_NAME "ftdi1") |
| +endif (STATICLIBS) |
| |
| # Prevent clobbering each other during the build |
| set_target_properties(ftdi1 PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| -set_target_properties(ftdi1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| +if (STATICLIBS) |
| + set_target_properties(ftdi1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) |
| +endif (STATICLIBS) |
| |
| # Dependencies |
| target_link_libraries(ftdi1 ${LIBUSB_LIBRARIES}) |
| @@ -45,10 +49,12 @@ if(${UNIX}) |
| COMPONENT sharedlibs |
| ) |
| |
| - install( TARGETS ftdi1-static |
| - ARCHIVE DESTINATION lib${LIB_SUFFIX} |
| - COMPONENT staticlibs |
| - ) |
| + if (STATICLIBS) |
| + install( TARGETS ftdi1-static |
| + ARCHIVE DESTINATION lib${LIB_SUFFIX} |
| + COMPONENT staticlibs |
| + ) |
| + endif (STATICLIBS) |
| |
| install( FILES ${c_headers} |
| DESTINATION include/${PROJECT_NAME} |
| @@ -64,10 +70,12 @@ if(${WIN32}) |
| COMPONENT sharedlibs |
| ) |
| |
| - install( TARGETS ftdi1-static |
| - DESTINATION bin |
| - COMPONENT staticlibs |
| - ) |
| + if (STATICLIBS) |
| + install( TARGETS ftdi1-static |
| + DESTINATION bin |
| + COMPONENT staticlibs |
| + ) |
| + endif (STATICLIBS) |
| |
| install( FILES ${c_headers} |
| DESTINATION include/${PROJECT_NAME} |