Comments (5)
I'm not opposed to this, but I think there will be some issues with the suggested approach.
First, CPack operates on a single CMake package, but you're talking about operating on multiple packages. My experience with CPack, like CMake in general, is that it doesn't scale well to many interdependent packages without extra work.
I've discussed this with people before:
I'm not saying this is impossible, just that there are issues you may not be aware of that need to be overcome.
from ament_tools.
That being said, for ROS 2, I'll probably reconsider how releases are made, with the possibility of using CPack for CMake based packages.
Also, just to be clear, ament_cmake
uses CMake, but we also have pure Python packages as well as autoconf, so we need to consider those when figuring out how to do releases.
from ament_tools.
I was unaware of the pure Python package and autoconf support. I assumed ament continued the legacy of cmake-based packages. I concede cpack will not be a general solution then.
FWIW, the way we do release packages in-house are through a series of python scripts that build catkin packages in a clean install tree (handling dependency packages in an underlay workspace), then use rosdep to convert run_depends into debian dependencies. I imagined a similar rosdep approach here, that magically determined debian package names according to naming rules that admittedly don't exist yet.
If this can't be implemented as written, I get that. This was more of a "this kinda thing should exist, somehow" ticket that we keep in our minds as we move forward.
from ament_tools.
Ok, I'll leave it open and in our backlog.
from ament_tools.
Closing since the repo is archived.
from ament_tools.
Related Issues (20)
- changing ament install prefix doesn't change the cmake install prefix HOT 2
- uninstalling after installing to a different directory HOT 5
- uninstall verb fails HOT 1
- We should validate ament_cmake packages after installation HOT 6
- Sourcing overlay workspace's setup file isn't enough for python packages HOT 2
- ament build_pkg doesn't respect other verbs HOT 10
- assert that ament_cmake packages register in the ament_index HOT 2
- No setup.bash for --isolated compilation HOT 2
- Add error summary at the end of `ament test` HOT 4
- Proposal: make `ament test` return non-zero on test failure HOT 5
- Parallel build waiting for package forever HOT 1
- Symlinked overlay installation doesn't have preference for ament_python packages HOT 8
- option to build only a package and its dependencies HOT 6
- Build of package on windows hangs sometimes HOT 2
- Because of unquoted path ament fails on Windows HOT 3
- ament build fails to find solution file when cmake project name differs from package manifest name HOT 4
- Test Report Generation for ament test tools HOT 2
- SyntaxError when building pure Python package with Extension HOT 6
- Failed to compile extension due to out-of-source build HOT 5
- python3-pytest doesn't support option "-o" and it results in error while running python unittest of a ros2 component HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ament_tools.