Source the gz*.completion file from wherever its installed so that the bash completion functions for other gz libraries can be picked up automatically.
Additionally, this installed the cmake configured etc/ign.bash_completion.sh file to <prefix>/share/bash-completion/completions/ign instead of relying on the debian/homebrew build infrastructure (see https://github.com/gazebo-release/gz-tools-release/pull/6). This has two advantages (1) makes it easy to use the cmake configured file so we can have cmake variables in etc/ign.bash_completion.sh (2) tab completion works the same way when building from source if <prefix> is set to /usr.
To build this with https://github.com/gazebo-release/gz-tools-release/pull/6 on focal, symlink gz-tools-release/focal/debian into the the root directory of gz-tools, then from the root directory of gz-tools, build the deb files using dpkg-buildpackage -us -uc -b. The deb files will be created in the parent directory. You can then copy the debs to a docker container, install it, and test tab completion.
Checklist
[ ] Signed all commits for DCO
[ ] Added tests
[ ] Added example and/or tutorial
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] Consider updating Python bindings (if the library has them)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers
Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.
🎉 New feature
Toward #1 Replaces https://github.com/gazebosim/gz-tools/pull/103 (Creating a new PR with a branch on the upstream repo instead of a fork so I can test with a debbuilder job).
Summary
Source the
gz*.completion
file from wherever its installed so that the bash completion functions for other gz libraries can be picked up automatically.Additionally, this installed the cmake configured
etc/ign.bash_completion.sh
file to<prefix>/share/bash-completion/completions/ign
instead of relying on the debian/homebrew build infrastructure (see https://github.com/gazebo-release/gz-tools-release/pull/6). This has two advantages (1) makes it easy to use the cmake configured file so we can have cmake variables inetc/ign.bash_completion.sh
(2) tab completion works the same way when building from source if<prefix>
is set to/usr
.Related: https://github.com/gazebo-release/gz-tools-release/pull/6
Test it
To build this with https://github.com/gazebo-release/gz-tools-release/pull/6 on focal, symlink
gz-tools-release/focal/debian
into the the root directory ofgz-tools
, then from the root directory ofgz-tools
, build the deb files usingdpkg-buildpackage -us -uc -b
. The deb files will be created in the parent directory. You can then copy the debs to a docker container, install it, and test tab completion.Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.