-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Parallel building #45
Comments
A potentially simpler approach might be to push the decision back on to the build recipe author, and add a
The prefix used to indicate a directive (rather than a package name) would be relatively arbitrary, so I'd suggest |
Technically RPM List Builder can detect which package can be built in parallel automatically. |
Because build order is part of the data, the recipe. Parallel build information is part of the build order. |
AFAIK that would need escaping: ScannerError: while scanning for the next token
found character '%' that cannot start any token
in "<unicode string>", line 3, column 5:
- %concurrent-build: |
The YAML tags might be of use:
|
I guess that we want to reduce the data recorded in recipe file and make it simple as much as possible? My question is the RPM List Builder can detect which packages can be the parallel build by analyzing the package dependency tree from the list of RPM spec files of the packages (
For example RPM List Builder can detect that E depends on B, C and D checking E's RPM spec file. |
If you want to detect the build order, you need no recipe files (in theory). Also macros and other bootstrapping can alter the build order. Fact 1: The build order is in the recipe. Fact 2: rpm-list-builder follows the recipe. Conclusion: Parallel build information should be stored in the recipe. Making a guess-the-build-order magic tool might be useful, but let's keep this KISS. |
Okay, if we will follow my suggesting way, we do not need the recipe file. That's truth. Thanks for the explanation. |
Right, one of the key benefits of RPM List Builder is that the recipe file makes it possible to resolve circular dependencies by defining a bootstrapping order. Where an automatic build ordering might eventually make sense is inside a |
The ticket is from sclorg/rhscl-rebuild-recipes#14 .
As a possibility, it may be possible as below ways.
[1] https://en.wikipedia.org/wiki/Decision_tree
The text was updated successfully, but these errors were encountered: