Commit Graph

7 Commits

Author SHA1 Message Date
352fd5d271 openwrt: Clean up build input setup, forcing user to set it up
This makes it so that if the inputs are not available -- namely
input/.config and possibly input/files/, the build won't run. This
helps inform the user what must be done in order to get things to
build.
2021-05-09 19:06:22 +00:00
e9efab3688 openwrt: Use the docker_src variable in the makefile
Note that this breaks building directly from under the openwrt/ dir,
as we need to pass through the main Makefile to pick up configuration.
2021-03-16 19:27:30 +00:00
e20bf690c1 openwrt: Make the number of parallel Make jobslots configurable 2021-03-16 19:26:29 +00:00
7f20ca9ed5 Combine base input requirements for building owrt image into a var 2021-03-16 18:50:03 +00:00
0f86363b3f openwrt: Add Makefile targets for building / debugging OpenWrt
The output-${remote}_${revision} (or output-${revision} from the main
remote) target builds OpenWrt with the given input diffconfig,
after checking out ${revision} from ${remote}. Note that neither the
remote nor the ref or revision can have an underscore in them and
still be properly interpreted.

Still, this is all very useful -- I can kick off a from-scratch build
with `make output-pr_p2041-mpc85xx` and in a few minutes it's ready to
review.
2021-02-18 02:30:55 +00:00
959e206514 Add more targets to the openwrt toolchain 2021-02-10 01:05:27 +00:00
7b2d32bb59 Add an example setting up an env for the previous commit
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.
2021-02-08 15:20:55 +00:00