Update to the most recent stable release,
including a new job scheduler and bug fixes.
Backport a patch to assist in reworking jobserver support.
The original patch for jobserver support requires reworking
due to the function CanRunMore() and its usage
being significantly changed, including the return
becoming an integer instead of a boolean.
AcquireToken() must now be used in CanRunMore()
in order to quantify how much the job searching loop
is able to run at any time, and in order to do so
CanRunMore() cannot be a constant function anymore.
Added:
- 010-backport-gtest.patch
Manually Adjust:
- 100-make_jobserver_support.patch
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
Add methods to skip the building and execution of Ninja by python
in order to allow Make to execute Ninja after the configure script.
This allows the user to build Ninja only once
if they already have an older version of Ninja built.
It also allows the user to test the jobserver functionality
by having Ninja built twice (clean then compile).
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
Use default CXXFLAGS and LDFLAGS variables.
Directly add --verbose flag without a variable.
Split up lines for script arguments.
Delete unnecessary lines.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
ninja is faster at building cmake packages than make, and according to reports
also more reliable at handling parallel builds
This commit includes a patch that adds GNU make jobserver support, in order to
allow more precise control over the number of parallel tasks
Enable parallel build by default for packages using ninja
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Rosen Penev <rosenp@gmail.com>