You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
124 lines
4.5 KiB
124 lines
4.5 KiB
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}
|