Commit Graph

29 Commits (c212bbb698beb8ad1736f189555a6485ef996080)

Author SHA1 Message Date
Christoph Schütte 18cb9c324f Make CMakeLists.txt install gRPC service headers. (#779) 2017-12-20 14:40:33 +01:00
Christoph Schütte e596b75113 Add binary for cartographer_grpc_server. (#747)
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2017-12-11 19:09:52 +01:00
gaschler 5c694adf93 Correct cmake install (#739)
Simplify how file lists are collected depending on options.
Omits gRPC headers if they were not built.
2017-12-06 20:34:07 +01:00
Christoph Schütte 02359a98ae Implement connection establishment and server startup and shutdown. (#712)
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2017-11-28 10:50:30 +01:00
Wolfgang Hess ec034b13bc Do not install global_trajectory_builder.h. (#698)
This moves the global_trajectory_builder.h header under
cartographer/internal and changes the CMakeLists.txt to
not install internal headers.

[RFC=0003](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2017-11-23 14:47:29 +01:00
Christoph Schütte c233aaaac8 Update CMakeLists.txt to preprare for gRPC deps. (#691) 2017-11-22 16:29:01 +01:00
Tobias Ulvgård b2e948d8a2 Fix typo in CMake install script (#683)
Fixes a typo in CMake scripts when installing generated header files.
2017-11-16 09:16:34 +01:00
catskul 8c9fac4c69 #671 switch ordering of args in find_package for Protobuf (#672)
per #671
2017-11-15 08:49:33 +01:00
Holger Rapp e29fc9787a New proto compiler (#644)
Also change Dockerfiles to build proto3 from HEAD.

PAIR=@cschuet
2017-11-10 11:16:44 +01:00
Holger Rapp ff37b0bb7d Remove output_debug_images. (#358)
This is now better done by RViz. This also gets rid of the dependency on webp.
2017-06-23 14:53:04 +02:00
Wolfgang Hess 5fa6abe84b Adds a tool to generate ground truth data. (#340)
Fixes #310. Not yet tested.
2017-06-16 17:38:13 +02:00
Wolfgang Hess c664d7b966 Comply to CMake's CMP0037. (#267)
Test target names are generated from the directory and
source filename. Now "/"s are replaced by "."s which are
allowed by CMP0037.
2017-05-08 18:09:39 +02:00
Wolfgang Hess 9194c8679b Clean up. (#266)
Move trajectory builder options.
Remove the barely used Interval template.
Inline the remaining CMakeLists.txt subdirectories.
2017-05-08 15:29:13 +02:00
Wolfgang Hess 6d2feaa8c7 Build and run all tests found by the glob. (#258) 2017-05-03 16:55:13 +02:00
Juraj Oršulić 370e1e52df Enable adding as a CMake subproject (#203)
This is done by replacing CMAKE_*_DIR variables with PROJECT_*_ variables so
that CMake uses correct paths when libcartographer is a subproject

Move AllFiles.cmake into the project binary dir instead of the root CMake binary dir,
use a project-dependent detect_changes target name

This makes overriding it from an upper level CMakeLists.txt possible, which is required
when doing a super-build which doesn't require installing libcartographer.
2017-02-09 15:57:54 +01:00
Juraj Oršulić f047ad35c1 Add Ceres sparse linear algebra library dependency (#189)
Ceres can be built without linking against a sparse linear algebra library
such as SuiteSparse or Eigen-sparse. This can happen if the user does not
have all the dependencies, which normally get installed when following
the Cartographer installation guide. In this case, Cartographer will
work, but without loop closures, because Ceres is not working fast enough
(the loop closure optimization without a sparse linear algebra library
is a few orders of magnitude slower). Another bad side effect of this is
that Cartographer will hang when finalizing the trajectory or on exit,
because all loop closing optimizations will be waiting in a queue which
can take hours to process.

When Ceres is regularly built against a sparse linear algebra library, as it
is supposed to be, it declares a component named SparseLinearAlgebraLibrary.
Because normal functioning of Cartographer seemingly depends on this being
present, it is introduced here in Cartographer as a required Ceres component
dependency.
2017-01-26 11:14:58 +01:00
Damon Kohler 99f449543f CMake fixes. (#178)
* Export/import targets.
* Stop linking GMock main into everything.
2017-01-09 13:49:21 +01:00
Holger Rapp 22a344b946 More linking dependencies fixing 2016-12-22 15:02:28 +01:00
Damon Kohler 4e9c3d69b5 Build all our source files into a single library. (#164) 2016-12-20 11:24:08 +01:00
Wolfgang Hess 3caf5a4b52 Fix the target_include_directories. (#162)
The Boost include directory was not correctly added, and the
headers of the project where always looked up at the source or
build directory, not where they are installed.
2016-12-14 17:54:53 +01:00
Wolfgang Hess 0937f4f515 Support fixing z during 3D sparse pose adjustment. (#161)
This is in preparation of using the 3D sparse pose graph
optimization for 2D SLAM.
2016-12-14 15:32:23 +01:00
Holger Rapp 6e6d2decaa Fixes for Xenial. (#103)
- Remove use of get_property(LOCATION in cmake where this is easy. This
  reduces build warnings sufficiently to not drown out other important
  information.
- Mark cairo a dependency in package.xml so rosdep pulls it in.

Tested using docker -t ros:kinetic, which is based on Xenial.
2016-10-26 14:23:00 +02:00
Wolfgang Hess 5b16f4bcb6 Simplify 3D visualization code. (#88)
Removes the non-const Submaps accessor.
Adds -Werror=missing-braces.
2016-10-20 11:29:12 +02:00
Holger Rapp c2aed53ce8 Adds a points processing pipeline and a XRay creator. (#66)
- Adds cairo as required dependency.
- Adds an 'io' module.
2016-10-14 15:14:46 +02:00
Holger Rapp be813a06fe Prepare CMake files for testing support. (#47)
- Only build gmock if we really require testing.
- Adds a wrapper for generating catkin aware tests. This works around
  ros/catkin#830.
2016-10-12 15:38:12 +02:00
Holger Rapp 8e7996f015 Extend CMake functions for reuse in other Cartographer subprojects. (#45)
- Change CARTOGRAPHER_LIBRARIES to be absolute path to adhere to the
  CMake documentation.
2016-10-12 13:39:03 +02:00
Damon Kohler 6bb6236ebb Renames doc to docs. (#6)
This now matches the readthedocs.org getting started guide.
2016-08-23 17:22:04 +02:00
Wolfgang Hess aa7b060ac5 Remove unnecessary explicit dependency on glog. (#3)
It is not needed (anymore?) and leads to linking errors
(does not find libglog) when glog_catkin is used and
libgoogle-glog-dev is not installed.
2016-08-10 11:34:52 +02:00
Damon Kohler 269c28cb0c Moves the contents of the cartographer subdirectory up one level. 2016-08-03 12:48:29 +02:00