Quoting:
As for what ${args} would need to be for this to work:
- You need to mount a +x build system prep script to /input.sh
- You need to mount a +x build system output extractor to /output.sh
- You need to mount a folder with input resources to /input
- You need to mount an output folder to /output
So, /input.sh could `cp /input/diffconfig /builder/openwrt/.config`,
then cd to /builder/openwrt and run `make defconfig`. The ${CMD}
could then actually build, and /output.sh could collect logs and
build artefacts to /output.
This lot provides exactly that. The makefile in this new dir just
requires diffconfig to be populated; then run `make output` and wait.
Q: What about adding LibreMesh
A: Just add to input.sh (or add a script to it) which does the steps
described here: https://libremesh.org/development.html. You can avoid
the 'make menuconfig' bits by pre-building a diffconfig as needed. And
if you need to debug, add a /bin/sh.
10 lines
134 B
Bash
Executable File
10 lines
134 B
Bash
Executable File
#!/bin/bash
|
|
|
|
cd /builder/openwrt
|
|
|
|
cp -r bin /output/
|
|
|
|
cp .config /output/
|
|
./scripts/diffconfig.sh > diffconfig
|
|
cp diffconfig /output/
|