On Fri, Dec 15, 2017 at 3:19 PM, Yegor Yefremov <yegorsli...@googlemail.com> wrote: > Hello Thomas, > > On Fri, Dec 15, 2017 at 3:09 PM, <yegorsli...@googlemail.com> wrote: >> From: Samuel Martin <s.marti...@gmail.com> >> >> Remove the STATICLIBS CMake option (and the code handling it) and let >> the standard CMake flags drive the shared object build. >> >> Build shared library: >> cmake -DBUILD_SHARED_LIBS=ON >> >> Build static library: >> cmake -DBUILD_SHARED_LIBS=OFF >> >> Signed-off-by: Samuel Martin <s.marti...@gmail.com> >> Signed-off-by: Yegor Yefremov <yegorsli...@googlemail.com> >> --- >> CMakeLists.txt | 2 -- >> ftdipp/CMakeLists.txt | 15 +-------------- >> src/CMakeLists.txt | 13 +------------ >> 3 files changed, 2 insertions(+), 28 deletions(-) >> >> diff --git a/CMakeLists.txt b/CMakeLists.txt >> index 66abe4c..6ed4363 100644 >> --- a/CMakeLists.txt >> +++ b/CMakeLists.txt >> @@ -46,8 +46,6 @@ set(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development") >> set(CPACK_COMPONENT_STATICLIBS_GROUP "Development") >> set(CPACK_COMPONENT_HEADERS_GROUP "Development") >> >> -option ( STATICLIBS "Build static libraries" ON ) >> - >> # guess LIB_SUFFIX, don't take debian multiarch into account >> if ( NOT DEFINED LIB_SUFFIX ) >> if( CMAKE_SYSTEM_NAME MATCHES "Linux" >> diff --git a/ftdipp/CMakeLists.txt b/ftdipp/CMakeLists.txt >> index 27fbe8d..1dd0881 100644 >> --- a/ftdipp/CMakeLists.txt >> +++ b/ftdipp/CMakeLists.txt >> @@ -23,8 +23,7 @@ if (FTDIPP) >> set(FTDI_BUILD_CPP True PARENT_SCOPE) >> message(STATUS "Building libftdi1++") >> >> - # Shared library >> - add_library(ftdipp1 SHARED ${cpp_sources}) >> + add_library(ftdipp1 ${cpp_sources}) >> >> math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1") # Compatiblity with >> previous releases >> set_target_properties(ftdipp1 PROPERTIES VERSION >> ${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 3) >> @@ -41,18 +40,6 @@ if (FTDIPP) >> LIBRARY DESTINATION lib${LIB_SUFFIX} >> ARCHIVE DESTINATION lib${LIB_SUFFIX} >> ) >> - >> - # Static library >> - if ( STATICLIBS ) >> - add_library(ftdipp1-static STATIC ${cpp_sources}) >> - set_target_properties(ftdipp1-static PROPERTIES OUTPUT_NAME "ftdipp1") >> - set_target_properties(ftdipp1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) >> - >> - install ( TARGETS ftdipp1-static >> - ARCHIVE DESTINATION lib${LIB_SUFFIX} >> - COMPONENT staticlibs >> - ) >> - endif () >> >> install ( FILES ${cpp_headers} >> DESTINATION include/${PROJECT_NAME} >> diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt >> index 9fd86a6..501d4a8 100644 >> --- a/src/CMakeLists.txt >> +++ b/src/CMakeLists.txt >> @@ -21,7 +21,7 @@ configure_file(ftdi_version_i.h.in >> "${CMAKE_CURRENT_BINARY_DIR}/ftdi_version_i.h >> set(c_sources ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.c >> ${CMAKE_CURRENT_SOURCE_DIR}/ftdi_stream.c CACHE INTERNAL "List of c sources" >> ) >> set(c_headers ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.h CACHE INTERNAL "List >> of c headers" ) >> >> -add_library(ftdi1 SHARED ${c_sources}) >> +add_library(ftdi1 ${c_sources}) >> >> math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1") # Compatiblity with >> previous releases >> set_target_properties(ftdi1 PROPERTIES VERSION >> ${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 2) >> @@ -38,17 +38,6 @@ install ( TARGETS ftdi1 >> ARCHIVE DESTINATION lib${LIB_SUFFIX} >> ) >> >> -if ( STATICLIBS ) >> - add_library(ftdi1-static STATIC ${c_sources}) >> - target_link_libraries(ftdi1-static ${LIBUSB_LIBRARIES}) >> - set_target_properties(ftdi1-static PROPERTIES OUTPUT_NAME "ftdi1") >> - set_target_properties(ftdi1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) >> - install ( TARGETS ftdi1-static >> - ARCHIVE DESTINATION lib${LIB_SUFFIX} >> - COMPONENT staticlibs >> - ) >> -endif () >> - >> install ( FILES ${c_headers} >> DESTINATION include/${PROJECT_NAME} >> COMPONENT headers >> -- >> 2.11.0 > > There are two more patches in Buildroot [1], that we would like to see > upstream. Should Samuel or I resend them or can you take them from BR > git repo? > > Thanks. > > [1] https://git.busybox.net/buildroot/tree/package/libftdi1
Forget about the STATICLIBS related patch, as libftdi1 creates both dynamic and static libs at once. Yegor -- libftdi - see http://www.intra2net.com/en/developer/libftdi for details. To unsubscribe send a mail to libftdi+unsubscr...@developer.intra2net.com