Skip to content

Commit 7832937

Browse files
committed
Update CMakeLists and package.xm for ros2
1 parent f338306 commit 7832937

File tree

2 files changed

+59
-60
lines changed

2 files changed

+59
-60
lines changed

CMakeLists.txt

Lines changed: 58 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ endif()
1515
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
1616

1717
find_package( Boost REQUIRED COMPONENTS system )
18+
find_package(g3log REQUIRED)
1819

1920
# Actually not using full SDK, just the header files
2021
# in thirdparty/Oculus
@@ -46,63 +47,61 @@ if (FIPS_CONFIG)
4647
fips_finish()
4748

4849
else()
49-
# == ROS / Catkin-specific section =================================
50-
project(liboculus)
51-
52-
find_package(catkin REQUIRED
53-
#cmake_modules
54-
g3log_ros )
55-
56-
catkin_package(
57-
CATKIN_DEPENDS g3log_ros
58-
INCLUDE_DIRS include thirdparty
59-
LIBRARIES liboculus_LIB )
60-
61-
add_compile_options(-std=c++14)
62-
63-
include_directories(
64-
include
65-
thirdparty
66-
${catkin_INCLUDE_DIRS} )
67-
68-
set(oculus_SRCS
69-
lib/DataRx.cpp
70-
lib/SonarConfiguration.cpp
71-
lib/SonarStatus.cpp
72-
lib/StatusRx.cpp
73-
lib/SonarPlayer.cpp
74-
lib/OculusMessageHandler.cpp
75-
lib/SimpleFireMessage.cpp
76-
lib/IoServiceThread.cpp )
77-
78-
79-
add_library(liboculus_LIB ${oculus_SRCS})
80-
target_link_libraries(liboculus_LIB ${catkin_LIBRARIES})
81-
82-
install(TARGETS liboculus_LIB
83-
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
84-
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
85-
RUNTIME DESTINATION ${CATKIN_GLOBAL_BIN_DESTINATION})
86-
87-
## Install headers
88-
install(DIRECTORY include/${PROJECT_NAME}/ thirdparty/
89-
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
90-
FILES_MATCHING PATTERN "*.hpp" PATTERN "*.h"
91-
PATTERN ".git" EXCLUDE)
92-
93-
if (CATKIN_ENABLE_TESTING)
94-
add_definitions(-DTEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}/test/data")
95-
include_directories( test/data/ )
96-
97-
file(GLOB oculus_test_SRCS
98-
test/unit/*cpp )
99-
100-
catkin_add_gtest(oculus_test ${oculus_test_SRCS})
101-
102-
target_link_libraries(oculus_test ${catkin_LIBRARIES}
103-
liboculus_LIB
104-
Boost::system )
50+
# == ament/ROS2 section =================================
51+
if(NOT FIPS_CONFIG)
52+
find_package(ament_cmake REQUIRED)
53+
find_package(Boost REQUIRED COMPONENTS system)
54+
find_package(g3log_ros REQUIRED)
55+
56+
set(CMAKE_CXX_STANDARD 17)
57+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
58+
add_compile_options(-std=c++17)
59+
60+
include_directories(
61+
include
62+
thirdparty
63+
${CMAKE_INSTALL_PREFIX}/include/g3log
64+
)
65+
66+
set(oculus_SRCS
67+
lib/DataRx.cpp
68+
lib/SonarConfiguration.cpp
69+
lib/SonarStatus.cpp
70+
lib/StatusRx.cpp
71+
lib/SonarPlayer.cpp
72+
lib/OculusMessageHandler.cpp
73+
lib/SimpleFireMessage.cpp
74+
lib/IoServiceThread.cpp
75+
)
76+
77+
add_library(oculus SHARED ${oculus_SRCS})
78+
target_link_libraries(oculus
79+
Boost::system
80+
g3log_ros::g3log_ros
81+
g3log
82+
)
83+
ament_target_dependencies(oculus Boost g3log_ros)
84+
85+
install(
86+
TARGETS oculus
87+
EXPORT oculus
88+
ARCHIVE DESTINATION lib
89+
LIBRARY DESTINATION lib
90+
RUNTIME DESTINATION bin
91+
)
92+
93+
install(
94+
DIRECTORY include/${PROJECT_NAME}/ thirdparty/
95+
DESTINATION include
96+
FILES_MATCHING PATTERN "*.hpp" PATTERN "*.h"
97+
PATTERN ".git" EXCLUDE
98+
)
99+
100+
ament_export_targets(oculus HAS_LIBRARY_TARGET)
101+
ament_export_include_directories(include)
102+
ament_export_libraries(oculus)
103+
104+
ament_package()
105+
return()
105106
endif()
106-
107-
108-
endif()
107+
endif()

package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
<license>BSD</license>
1010

11-
<buildtool_depend>catkin</buildtool_depend>
11+
<buildtool_depend>ament_cmake</buildtool_depend>
1212

1313
<depend>g3log_ros</depend>
1414

0 commit comments

Comments
 (0)