CMake: bump the minimal required version to 3.5
[libftdi.git] / ftdipp / CMakeLists.txt
blob360a831d2aba7c5d132ed36ab9a9178153cc8281
1 # Targets
2 set(cpp_sources ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.cpp CACHE INTERNAL "List of cpp sources" )
3 set(cpp_headers ${CMAKE_CURRENT_SOURCE_DIR}/ftdi.hpp CACHE INTERNAL "List of cpp headers" )
5 # Includes
6 include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}
7   ${CMAKE_CURRENT_SOURCE_DIR}
8   ${PROJECT_SOURCE_DIR}/src
11 include_directories(${Boost_INCLUDE_DIRS})
13 # Shared library
14 add_library(ftdipp1 SHARED ${cpp_sources})
16 math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1")    # Compatibility with previous releases
17 set_target_properties(ftdipp1 PROPERTIES VERSION ${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 3)
19 # Prevent clobbering each other during the build
20 set_target_properties(ftdipp1 PROPERTIES CLEAN_DIRECT_OUTPUT 1)
22 # Dependencies
23 target_link_libraries(ftdipp1 ftdi1 ${LIBUSB_LIBRARIES} ${BOOST_LIBRARIES})
25 install ( TARGETS ftdipp1
26           RUNTIME DESTINATION bin
27           LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
28           ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
31 # Static library
32 if ( STATICLIBS )
33   add_library(ftdipp1-static STATIC ${cpp_sources})
34   set_target_properties(ftdipp1-static PROPERTIES OUTPUT_NAME "ftdipp1")
35   set_target_properties(ftdipp1-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
37   install ( TARGETS ftdipp1-static
38             ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
39             COMPONENT staticlibs
40   )
41 endif ()
43 install ( FILES ${cpp_headers}
44           DESTINATION include/${PROJECT_NAME}
45           COMPONENT headers