From a91e670b1a0f2e10bab7750d1da9f844266777e5 Mon Sep 17 00:00:00 2001 From: Kei Okada Date: Fri, 15 Mar 2019 04:41:34 +0000 Subject: [PATCH] catkinize package CMakeLists.txt package.xml --- CMakeLists.txt | 179 +++++++++++++++++++++++++++++++++++++++++++++++++ package.xml | 16 +++++ 2 files changed, 195 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 package.xml diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..afb5a18 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,179 @@ +cmake_minimum_required(VERSION 2.8.3) +project(openslam_gmapping) + +## Find catkin macros and libraries +find_package(catkin REQUIRED) + +################################### +## catkin specific configuration ## +################################### +## The catkin_package macro generates cmake config files for your package +## Declare things to be passed to dependent projects +catkin_package( + INCLUDE_DIRS include + LIBRARIES utils sensor_base sensor_odometry sensor_range log configfile scanmatcher gridfastslam +) + +########### +## Build ## +########### + +## Specify additional locations of header files +## Your package locations should be listed before other locations +include_directories(include) + +#SUBDIRS=utils sensor log configfile scanmatcher gridfastslam gui + +# utils/ +# OBJS= stat.o movement.o +# APPS= autoptr_test #stat_test +# CPPFLAGS+= -DFSLINE +add_library(utils + utils/stat.cpp + utils/movement.cpp) +add_executable(autoptr_test + utils/autoptr_test.cpp) + +# sensor/ +# SUBDIRS=sensor_base sensor_odometry sensor_range + +# sensor/sensor_base/ +# OBJS= sensor.o sensorreading.o +add_library(sensor_base + sensor/sensor_base/sensor.cpp + sensor/sensor_base/sensorreading.cpp) + +# sensor/sensor_odometry/ +# LDFLAGS+= -lsensor_base +# OBJS= odometrysensor.o odometryreading.o +add_library(sensor_odometry + sensor/sensor_odometry/odometrysensor.cpp + sensor/sensor_odometry/odometryreading.cpp) +target_link_libraries(sensor_odometry + sensor_base) + +# sensor/sensor_range/ +# CPPFLAGS+= -I../ +# LDFLAGS+= -lsensor_base +# OBJS= rangesensor.o rangereading.o +add_library(sensor_range + sensor/sensor_range/rangesensor.cpp + sensor/sensor_range/rangereading.cpp) +target_link_libraries(sensor_range + sensor_base) + +# log/ +# CPPFLAGS+= -I../sensor +# OBJS= configuration.o carmenconfiguration.o sensorlog.o sensorstream.o +# APPS= log_test log_plot scanstudio2carmen rdk2carmen +# LDFLAGS+= -lsensor_range -lsensor_odometry -lsensor_base +add_library(log + log/configuration.cpp + log/carmenconfiguration.cpp + log/sensorlog.cpp + log/sensorstream.cpp) +add_executable(log_test + log/log_test.cpp) +add_executable(log_plot + log/log_plot.cpp) +add_executable(scanstudio2carmen + log/scanstudio2carmen.cpp) +add_executable(rdk2carmen + log/rdk2carmen.cpp) +target_link_libraries(log_test log) +target_link_libraries(log_plot log) +target_link_libraries(scanstudio2carmen log) +target_link_libraries(rdk2carmen log) +target_link_libraries(log + sensor_range sensor_odometry sensor_base) + +# configfile/ +# OBJS= configfile.o +# APPS= configfile_test +add_library(configfile + configfile/configfile.cpp) +add_executable(configfile_test + configfile/configfile_test.cpp) +target_link_libraries(configfile_test configfile) + +# scanmatcher/ +# CPPFLAGS+=-I../sensor +# OBJS= smmap.o scanmatcher.o scanmatcherprocessor.o eig3.o +# APPS= scanmatch_test icptest +# LDFLAGS+= -llog -lsensor_range -lsensor_odometry -lsensor_base -lutils +add_library(scanmatcher + scanmatcher/smmap.cpp + scanmatcher/scanmatcher.cpp + scanmatcher/scanmatcherprocessor.cpp + scanmatcher/eig3.cpp) +add_executable(scanmatch_test + scanmatcher/scanmatch_test.cpp) +add_executable(icptest + scanmatcher/icptest.cpp) +target_link_libraries(scanmatch_test scanmatcher) +target_link_libraries(icptest scanmatcher) +target_link_libraries(scanmatcher + log sensor_range sensor_odometry sensor_base utils) + +# gridfastslam/ +# CPPFLAGS+=-I../sensor +# OBJS= gridslamprocessor_tree.o motionmodel.o gridslamprocessor.o gfsreader.o +# APPS= gfs2log gfs2rec gfs2neff #gfs2stat +# LDFLAGS+= -lscanmatcher -llog -lsensor_range -lsensor_odometry -lsensor_base -lutils +add_library(gridfastslam + gridfastslam/gridslamprocessor_tree.cpp + gridfastslam/motionmodel.cpp + gridfastslam/gridslamprocessor.cpp + gridfastslam/gfsreader.cpp) +add_executable(gfs2log + gridfastslam/gfs2log.cpp) +add_executable(gfs2rec + gridfastslam/gfs2rec.cpp) +add_executable(gfs2neff + gridfastslam/gfs2neff.cpp) +target_link_libraries(gfs2log gridfastslam) +target_link_libraries(gfs2rec gridfastslam) +target_link_libraries(gfs2neff gridfastslam) +target_link_libraries(gridfastslam + scanmatcher log sensor_range sensor_odometry sensor_base utils) + +############# +## Install ## +############# + +# all install targets should use catkin DESTINATION variables +# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html + +## Mark executable scripts (Python etc.) for installation +## in contrast to setup.py, you can choose the destination +# install(PROGRAMS +# scripts/my_python_script +# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark executables and/or libraries for installation +# install(TARGETS ${PROJECT_NAME} ${PROJECT_NAME}_node +# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark cpp header files for installation +install(DIRECTORY include/${PROJECT_NAME}/ + DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION} + FILES_MATCHING PATTERN "*.h" + PATTERN ".svn" EXCLUDE +) + +############# +## Testing ## +############# + +## Add gtest based cpp test target and link libraries +# catkin_add_gtest(${PROJECT_NAME}-test test/test_openslam_gmapping.cpp) +# if(TARGET ${PROJECT_NAME}-test) +# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) +# endif() + +## Add folders to be run by python nosetests +# catkin_add_nosetests(test) diff --git a/package.xml b/package.xml new file mode 100644 index 0000000..96f5801 --- /dev/null +++ b/package.xml @@ -0,0 +1,16 @@ + + + openslam_gmapping + 0.1.1 + The catkinized verseion of openslam_gmapping package (https://github.com/OpenSLAM-org/openslam_gmapping/tree/79ef0b0e6d9a12d6390ae64c4c00d37d776abefb) + + Vincent Rabaud + BSD + + Cyrill Stachniss + Udo Frese + Giorgio Grisetti + + catkin + +