1
0
mirror of https://github.com/wjwwood/serial.git synced 2026-01-22 19:54:57 +08:00

feat: Catkin dependancy is now optional

This commit is contained in:
blabbe 2019-12-03 11:53:40 +01:00
parent 683e12d2f6
commit 690990ccb0

View File

@ -1,18 +1,15 @@
cmake_minimum_required(VERSION 2.8.3) cmake_minimum_required(VERSION 2.8.3)
project(serial) project(serial)
## Options
# Use Catkin (disabled by default)
option(USE_CATKIN off)
# Find catkin # Find catkin
if(USE_CATKIN)
find_package(catkin REQUIRED) find_package(catkin REQUIRED)
if(APPLE)
find_library(IOKIT_LIBRARY IOKit)
find_library(FOUNDATION_LIBRARY Foundation)
endif()
if(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
# If Linux, add rt and pthread # If Linux, add rt and pthread
set(rt_LIBRARIES rt)
set(pthread_LIBRARIES pthread)
catkin_package( catkin_package(
LIBRARIES ${PROJECT_NAME} LIBRARIES ${PROJECT_NAME}
INCLUDE_DIRS include INCLUDE_DIRS include
@ -25,7 +22,14 @@ else()
INCLUDE_DIRS include INCLUDE_DIRS include
) )
endif() endif()
endif()
if(APPLE)
find_library(IOKIT_LIBRARY IOKit)
find_library(FOUNDATION_LIBRARY Foundation)
endif()
## Sources ## Sources
set(serial_SRCS set(serial_SRCS
src/serial.cc src/serial.cc
@ -64,6 +68,10 @@ target_link_libraries(serial_example ${PROJECT_NAME})
## Include headers ## Include headers
include_directories(include) include_directories(include)
if(USE_CATKIN)
## Install headers
install(FILES include/serial/serial.h include/serial/v8stdint.h
DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION}/serial)
## Install executable ## Install executable
install(TARGETS ${PROJECT_NAME} install(TARGETS ${PROJECT_NAME}
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
@ -73,6 +81,7 @@ install(TARGETS ${PROJECT_NAME}
## Install headers ## Install headers
install(FILES include/serial/serial.h include/serial/v8stdint.h install(FILES include/serial/serial.h include/serial/v8stdint.h
DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION}/serial) DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION}/serial)
endif()
## Tests ## Tests
if(CATKIN_ENABLE_TESTING) if(CATKIN_ENABLE_TESTING)