X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=blobdiff_plain;f=CMakeLists.txt;h=8a0baff86dc0a621d3051548bd99e2fca488cb75;hp=028495eca15618eacfe11b505021adc30093efbc;hb=6ac169eafa5ac3e12d901cf8d1737d28176a3001;hpb=0b2d00fcee8dee36c47060e933d4adbefa05a56e diff --git a/CMakeLists.txt b/CMakeLists.txt index 028495e..8a0baff 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,8 +2,8 @@ project(libftdi) set(MAJOR_VERSION 0) set(MINOR_VERSION 15) -set(PATCH_VERSION 0) -set(VERSION_STRING ${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}) +set(VERSION_STRING ${MAJOR_VERSION}.${MINOR_VERSION}) +SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}") # CMake if("${CMAKE_BUILD_TYPE}" STREQUAL "") @@ -18,6 +18,9 @@ if(${CMAKE_BUILD_TYPE} STREQUAL Debug) add_definitions(-DDEBUG) endif(${CMAKE_BUILD_TYPE} STREQUAL Debug) +FIND_PACKAGE(USB REQUIRED) +INCLUDE_DIRECTORIES(${LIBUSB_INCLUDE_DIR}) + # Set components set(CPACK_COMPONENTS_ALL sharedlibs staticlibs headers) set(CPACK_COMPONENT_SHAREDLIBS_DISPLAY_NAME "Shared libraries") @@ -27,18 +30,38 @@ set(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ Headers") set(CPACK_COMPONENT_SHAREDLIBS_DESCRIPTION "Shared library for general use.") set(CPACK_COMPONENT_STATICLIBS_DESCRIPTION -"Static library, good if you want to embed libkitclient in your application.") +"Static library, good if you want to embed libftdi in your application.") set(CPACK_COMPONENT_HEADERS_DESCRIPTION "C/C++ header files.") set(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development") set(CPACK_COMPONENT_STATICLIBS_GROUP "Development") -set(CPACK_COMPONENT_HEADERS_GROUP "Development") +set(CPACK_COMPONENT_HEADERS_GROUP "Development") + +# Documentation +find_package(Doxygen) +if(DOXYGEN_FOUND) + + # Set variables + set(PACKAGE libftdi) + set(VERSION ${VERSION_STRING}) + set(top_srcdir ${CMAKE_SOURCE_DIR}) + + # Find doxy config + message(STATUS "Doxygen found.") + set(DOXY_DIR "${CMAKE_SOURCE_DIR}/doc") + set(DOXY_CONFIG "${DOXY_DIR}/Doxyfile.in") + + # Copy doxy.config.in + configure_file("${DOXY_CONFIG}" "${CMAKE_BINARY_DIR}/doxy.config") + add_custom_target(doc "${DOXYGEN_EXECUTABLE}" "doxy.config") + +endif(DOXYGEN_FOUND) # Package information set(CPACK_PACKAGE_VERSION ${VERSION_STRING}) set(CPACK_PACKAGE_CONTACT "Marek Vavrusa ") -set(CPACK_PACKAGE_DESCRIPTION "FITKit multiplatform library.") +set(CPACK_PACKAGE_DESCRIPTION "libftdi library.") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY ${CPACK_PACKAGE_DESCRIPTION} ) # Package settings @@ -62,6 +85,10 @@ endif(${WIN32}) set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/COPYING.LIB) +set(CPACK_SOURCE_GENERATOR TGZ) +set(CPACK_SOURCE_IGNORE_FILES "\\\\.git") +set(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME}) + # Subdirectories if(${UNIX}) set(CPACK_SET_DESTDIR "ON") @@ -72,4 +99,26 @@ add_subdirectory(ftdipp) add_subdirectory(examples) add_subdirectory(packages) +# PkgConfig +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(exec_prefix ${CMAKE_INSTALL_PREFIX}/bin) +set(includedir ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}) + +if(${UNIX}) + set(libdir ${CMAKE_INSTALL_PREFIX}/lib) +endif(${UNIX}) +if(${WIN32}) + set(libdir ${CMAKE_INSTALL_PREFIX}/bin) +endif(${WIN32}) + +configure_file(${CMAKE_SOURCE_DIR}/libftdi.pc.in ${CMAKE_BINARY_DIR}/libftdi.pc @ONLY) +configure_file(${CMAKE_SOURCE_DIR}/libftdipp.pc.in ${CMAKE_BINARY_DIR}/libftdipp.pc @ONLY) +install(FILES ${CMAKE_BINARY_DIR}/libftdi.pc ${CMAKE_BINARY_DIR}/libftdipp.pc + DESTINATION lib/pkgconfig) + +if(${UNIX}) + configure_file(${CMAKE_SOURCE_DIR}/libftdi-config.in ${CMAKE_BINARY_DIR}/libftdi-config @ONLY) + install(PROGRAMS ${CMAKE_BINARY_DIR}/libftdi-config DESTINATION bin) +endif(${UNIX}) + include(CPack)