Extend the makefile.

Split the 'iso' target into 'prepare' and 'iso' so it's possible to
debug the preparation stage without having to start an actual ISO build.

Add build and clean stages. Also add 'purge' target that "factory resets"
the build environment.

Add some tsun-tsun feel to the build log.
This commit is contained in:
Daniil Baturin 2015-12-18 06:57:25 -05:00
parent 8688ace193
commit a0eefcc5e5

View File

@ -1,10 +1,12 @@
build_dir := build
.PHONY: all
all:
@echo "Make what specifically?"
@echo "The most common target is 'iso'"
.PHONY: iso
iso:
.PHONY: prepare
prepare:
@echo "Starting VyOS ISO image build"
@scripts/check-build-env
@ -13,6 +15,23 @@ iso:
@scripts/live-build-config
cp -r data/includes.chroot/* build/config/includes.chroot/
@echo "The rest is not yet implemented ;)"
.PHONY: iso
.ONESHELL:
iso: prepare
@echo "It's not like I'm building this specially for you or anything!"
cd $(build_dir)
lb build 2>&1 | tee build.log
@echo "VyOS ISO build successful"
@echo "ISO build successful"
.PHONY: clean
.ONESHELL:
clean:
cd $(build_dir)
lb clean
rm -f config/binary config/bootstrap config/chroot config/common config/source
rm -f build.log
.PHONY: purge
purge:
rm -rf build/*