The branch, master has been updated
via 998266bf16a3f88480382070b4af670d5998a1c5 (commit)
from 604ec22bb3844196da13a3dca71d930c3623d8e7 (commit)
- Log -----------------------------------------------------------------
commit 998266bf16a3f88480382070b4af670d5998a1c5
Author: Emmanuel Blot <eblot@xxxxxxxxxxxxxxxxxx>
Date: Sat Jun 19 22:59:54 2010 +0200
Fix up build on Mac OS X:
* Fix up Boost library management
* Fix up Python bindings
* Discard attempt to build C++ examples when Boost is not available
-----------------------------------------------------------------------
Summary of changes:
CMakeLists.txt | 24 +++++++---
bindings/CMakeLists.txt | 5 +-
examples/CMakeLists.txt | 15 ++++---
ftdipp/CMakeLists.txt | 114 +++++++++++++++++++++-------------------------
4 files changed, 80 insertions(+), 78 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d082932..8a87178 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -26,6 +26,9 @@ endif(${CMAKE_BUILD_TYPE} STREQUAL Debug)
FIND_PACKAGE(USB1 REQUIRED)
INCLUDE_DIRECTORIES(${LIBUSB_INCLUDE_DIR})
+# Find Boost (optional package)
+find_package(Boost)
+
# Set components
set(CPACK_COMPONENTS_ALL sharedlibs staticlibs headers)
set(CPACK_COMPONENT_SHAREDLIBS_DISPLAY_NAME "Shared libraries")
@@ -43,14 +46,19 @@ set(CPACK_COMPONENT_SHAREDLIBS_GROUP "Development")
set(CPACK_COMPONENT_STATICLIBS_GROUP "Development")
set(CPACK_COMPONENT_HEADERS_GROUP "Development")
-# Create suffix to eventually install in lib64
-IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
- SET(LIB_SUFFIX "")
- SET(PACK_ARCH "")
- ELSE(CMAKE_SIZEOF_VOID_P EQUAL 8)
- SET(LIB_SUFFIX 64)
- SET(PACK_ARCH .x86_64)
-endif(CMAKE_SIZEOF_VOID_P EQUAL 4)
+if(NOT APPLE)
+ # Create suffix to eventually install in lib64
+ if(CMAKE_SIZEOF_VOID_P EQUAL 4)
+ SET(LIB_SUFFIX "")
+ SET(PACK_ARCH "")
+ else(CMAKE_SIZEOF_VOID_P EQUAL 8)
+ SET(LIB_SUFFIX 64)
+ SET(PACK_ARCH .x86_64)
+ endif(CMAKE_SIZEOF_VOID_P EQUAL 4)
+else(NOT APPLE)
+ SET(LIB_SUFFIX "")
+ SET(PACK_ARCH "")
+endif(NOT APPLE)
# Package information
set(CPACK_PACKAGE_VERSION ${VERSION_STRING})
diff --git a/bindings/CMakeLists.txt b/bindings/CMakeLists.txt
index 48f535c..5333035 100644
--- a/bindings/CMakeLists.txt
+++ b/bindings/CMakeLists.txt
@@ -7,9 +7,10 @@ option(PYTHON_BINDINGS "Build python bindings via swig" ON)
if(PYTHON_BINDINGS AND SWIG_FOUND AND PYTHONLIBS_FOUND)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../src)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
-
+ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../src)
+
SWIG_ADD_MODULE(ftdi python ftdi.i)
- SWIG_LINK_LIBRARIES(ftdi ${PYTHON_LIBRARIES})
+ SWIG_LINK_LIBRARIES(ftdi ftdi ${PYTHON_LIBRARIES})
GET_FILENAME_COMPONENT(PYTHON_LIB_INSTALL ${PYTHON_LIBRARY} PATH)
GET_FILENAME_COMPONENT(SITEPACKAGE ${PYTHON_LIB_INSTALL}/../site-packages
ABSOLUTE)
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 7b702c2..af7f57a 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -35,14 +35,17 @@ if (EXAMPLES)
# libftdi++ examples
if(FTDI_BUILD_CPP)
- message(STATUS "Building libftdi++ examples.")
- include_directories(${CMAKE_SOURCE_DIR}/ftdipp)
+ if(Boost_FOUND)
+ message(STATUS "Building libftdi++ examples.")
+ include_directories(${CMAKE_SOURCE_DIR}/ftdipp
+ ${Boost_INCLUDE_DIRS})
- # Targest
- add_executable(find_all_pp find_all_pp.cpp)
+ # Target
+ add_executable(find_all_pp find_all_pp.cpp)
- # Linkage
- target_link_libraries(find_all_pp ftdipp)
+ # Linkage
+ target_link_libraries(find_all_pp ftdipp)
+ endif(Boost_FOUND)
endif(FTDI_BUILD_CPP)
else(EXAMPLES)
message(STATUS "Not building example programs.")
diff --git a/ftdipp/CMakeLists.txt b/ftdipp/CMakeLists.txt
index 8423b2e..43057ce 100644
--- a/ftdipp/CMakeLists.txt
+++ b/ftdipp/CMakeLists.txt
@@ -5,80 +5,71 @@ option(FTDIPP "Build C++ binding library libftdi++" ON)
if (FTDIPP)
- # Includes
- include_directories( ${CMAKE_CURRENT_BINARY_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}/../src
- )
-
- # Targets
- set(cpp_sources ftdi.cpp)
- set(cpp_headers ftdi.hpp)
-
- # Find Boost
- find_package(Boost)
if(Boost_FOUND)
- set(FTDI_BUILD_CPP True PARENT_SCOPE)
- message(STATUS "Building libftdi++")
-
- # Targets
- add_library(ftdipp SHARED ${cpp_sources})
-
- math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1") # Compatiblity with
previous releases
- set_target_properties(ftdipp PROPERTIES VERSION
${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 1)
-
- # Static library
- add_library(ftdipp-static STATIC ${cpp_sources})
- set_target_properties(ftdipp-static PROPERTIES OUTPUT_NAME "ftdipp")
-
- # Prevent clobbering each other during the build
- set_target_properties(ftdipp PROPERTIES CLEAN_DIRECT_OUTPUT 1)
- set_target_properties(ftdipp-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
-
- # Dependencies
- target_link_libraries(ftdipp ftdi ${LIBUSB_LIBRARIES} ${BOOST_LIBRARIES})
- # Install
- if(${UNIX})
+ # Includes
+ include_directories(${Boost_INCLUDE_DIRS}
+ ${CMAKE_CURRENT_BINARY_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_SOURCE_DIR}/../src)
- install( TARGETS ftdipp
- LIBRARY DESTINATION lib${LIB_SUFFIX}
- COMPONENT sharedlibs
- )
+ # Targets
+ set(cpp_sources ftdi.cpp)
+ set(cpp_headers ftdi.hpp)
- install( TARGETS ftdipp-static
- ARCHIVE DESTINATION lib${LIB_SUFFIX}
- COMPONENT staticlibs
- )
+ set(FTDI_BUILD_CPP True PARENT_SCOPE)
+ message(STATUS "Building libftdi++")
- install( FILES ${cpp_headers}
- DESTINATION include/${PROJECT_NAME}
- COMPONENT headers
- )
+ # Shared library
+ add_library(ftdipp SHARED ${cpp_sources})
- endif(${UNIX})
+ math(EXPR VERSION_FIXUP "${MAJOR_VERSION} + 1") # Compatiblity with
previous releases
+ set_target_properties(ftdipp PROPERTIES VERSION
${VERSION_FIXUP}.${MINOR_VERSION}.0 SOVERSION 1)
- if(${WIN32})
+ # Static library
+ add_library(ftdipp-static STATIC ${cpp_sources})
+ set_target_properties(ftdipp-static PROPERTIES OUTPUT_NAME "ftdipp")
- install( TARGETS ftdipp
- DESTINATION bin
- COMPONENT sharedlibs
- )
+ # Prevent clobbering each other during the build
+ set_target_properties(ftdipp PROPERTIES CLEAN_DIRECT_OUTPUT 1)
+ set_target_properties(ftdipp-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
- install( TARGETS ftdipp-static
- DESTINATION bin
- COMPONENT staticlibs
- )
+ # Dependencies
+ target_link_libraries(ftdipp ftdi ${LIBUSB_LIBRARIES}
${BOOST_LIBRARIES})
- install( FILES ${cpp_headers}
- DESTINATION include/${PROJECT_NAME}
- COMPONENT headers
- )
+ # Install
+ if(${UNIX})
+ install( TARGETS ftdipp
+ LIBRARY DESTINATION lib${LIB_SUFFIX}
+ COMPONENT sharedlibs
+ )
+ install( TARGETS ftdipp-static
+ ARCHIVE DESTINATION lib${LIB_SUFFIX}
+ COMPONENT staticlibs
+ )
+ install( FILES ${cpp_headers}
+ DESTINATION include/${PROJECT_NAME}
+ COMPONENT headers
+ )
+ endif(${UNIX})
- endif(${WIN32})
+ if(${WIN32})
+ install( TARGETS ftdipp
+ DESTINATION bin
+ COMPONENT sharedlibs
+ )
+ install( TARGETS ftdipp-static
+ DESTINATION bin
+ COMPONENT staticlibs
+ )
+ install( FILES ${cpp_headers}
+ DESTINATION include/${PROJECT_NAME}
+ COMPONENT headers
+ )
+ endif(${WIN32})
else(Boost_FOUND)
- message(STATUS "Boost not found, won't build libftdi++")
+ message(STATUS "Boost not found, won't build libftdi++")
endif(Boost_FOUND)
else(FTDIPP)
@@ -86,4 +77,3 @@ else(FTDIPP)
message(STATUS "Not building libftdi++")
endif(FTDIPP)
-
hooks/post-receive
--
port libftdi to libusb-1.0
--
libftdi-git - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi-git+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx
|