Skip to content
This repository has been archived by the owner on Sep 28, 2023. It is now read-only.

Create a proper readme #3

Merged
merged 29 commits into from
Sep 27, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
b1d9031
Initial package configuration and compilation changes.
agalbachicar Sep 13, 2021
620db68
Comments out find_runfiles_stub.cc
agalbachicar Sep 13, 2021
dfa6896
Comments out lyapunov and region_of_attraction because they require s…
agalbachicar Sep 13, 2021
b637a81
Removes auto-reference in library.
agalbachicar Sep 13, 2021
14faa60
Export dependencies.
agalbachicar Sep 13, 2021
00be5c5
Flattens library aliases.
agalbachicar Sep 13, 2021
2c4de5a
Replaces underfined variable and exports libraries via ament.
agalbachicar Sep 14, 2021
5deb4b3
Do not export libraries with ament
agalbachicar Sep 14, 2021
6ea5d76
Comment out application.
agalbachicar Sep 14, 2021
9145966
Adds gflags dependency.
agalbachicar Sep 14, 2021
74408e1
Adds test that exposes linking error due to missing symbols of
agalbachicar Sep 14, 2021
532ab5f
Solve the eigen dependency in package.xml
agalbachicar Sep 14, 2021
bd28488
Uses eigen3_cmake_module to solve incompatibility Eigen.
agalbachicar Sep 14, 2021
3fe338d
Comments out code of filesystem.h/cc to avoid issues with ghc depende…
agalbachicar Sep 20, 2021
b5d0959
Fixes source lists that were included on each library.
agalbachicar Sep 20, 2021
5a88831
Removes unnecessary testing infrastructure.
agalbachicar Sep 20, 2021
17c138e
Removes unnecessary testing configuration.
agalbachicar Sep 20, 2021
8508dc5
Removes yaml dependency.
agalbachicar Sep 21, 2021
9e56202
Amends the license note to introduce the drake license.
agalbachicar Sep 24, 2021
a0a3aa9
Removes linters because they are not run.
agalbachicar Sep 24, 2021
8b7f45b
Adds basic CI for foxy.
agalbachicar Sep 24, 2021
55ad697
Removes conflicting filesystem related sources.
agalbachicar Sep 24, 2021
371894a
Updates the maintainer.
agalbachicar Sep 24, 2021
f248629
Removes lyapunov and region_of_attraction sources because they depend…
agalbachicar Sep 24, 2021
791b5af
Removes dependencies that require fmt/core.h which is not available i…
agalbachicar Sep 24, 2021
0dbe8af
Adds bionic builds
agalbachicar Sep 24, 2021
c41aa5d
Writes a proper readme.
agalbachicar Sep 24, 2021
c07b028
Merge branch 'main' into agalbachicar/#232_readme
agalbachicar Sep 27, 2021
a50c2b7
Solves review comments.
agalbachicar Sep 27, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion README

This file was deleted.

79 changes: 78 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,80 @@
# `maliput_drake`

A clone of `drake`'s trajectory integration support for `maliput` backends.
A clone of [`drake`](https://github.com/RobotLocomotion/drake)'s trajectory integration support for `maliput` backends.

## Build

1. Setup a maliput_drake (or a wider maliput) development workspace as described [here](https://github.com/ToyotaResearchInstitute/maliput_documentation/blob/main/docs/installation_quickstart.rst).

2. Bring up your development workspace:

```sh
cd path/to/my/workspace
source /opt/ros/$ROS_DISTRO/setup.sh
```

where `$ROS_DISTRO` could be either `foxy` or `dashing`.

3. Build `maliput_drake` packages and their dependencies:

```sh
colcon build --packages-up-to maliput_drake
```

## Use `maliput_drake` as a dependency

### Installed targets

The following targets are installed and can be used when adding `maliput_drake`
as an `ament` dependency.

- `maliput_drake::common`
- `maliput_drake::trajectories`
- `maliput_drake::math`
- `maliput_drake::analysis`
- `maliput_drake::framework`

All of them are shared libraries.

### Adding `maliput_drake` to you `package.xml`

When creating the `ament` package, make sure to add `maliput_drake` to your `package.xml`:

```xml
<depend>maliput_drake</depend>
```

### Finding the package

In your project, add the following to your `CMakeLists.txt` file to import the package:

```cmake
find_package(maliput_drake REQUIRED)
```

### Export the `ament` dependency

Make sure to export the dependency as follows:

```cmake
ament_export_dependencies(maliput_drake)
```

### Linking against the libraries

To link against one or man of the aforementioned targets, simply do the following:

```cmake
target_link_libraries(
my_fancy_target
PUBLIC # PRIVATE
maliput_drake::analysis
maliput_drake::common
maliput_drake::framework
maliput_drake::math
maliput_drake::trajectories
)
```

Prefer `PRIVATE` linkage when possible to avoid any unneeded exposure of `drake`-specific
types.