On Fri, Dec 15, 2017 at 3:19 PM, Yegor Yefremov
<yegorslists@xxxxxxxxxxxxxx> wrote:
> Hello Thomas,
>
> On Fri, Dec 15, 2017 at 3:09 PM, <yegorslists@xxxxxxxxxxxxxx> wrote:
>> From: Samuel Martin <s.martin49@xxxxxxxxx>
>>
>> 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.martin49@xxxxxxxxx>
>> Signed-off-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx>
>> ---
>> 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+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|