Makefile: new target check-deps

to verify that we have all dependencies, required by our ports, on the
iso. We parse through setup.dependencies and test that for every listed
dependency.
This commit is contained in:
Juergen Daubert 2008-10-17 21:09:28 +02:00
parent 3de56e3af8
commit 4084cc6c41

View File

@ -260,6 +260,7 @@ squashfs-clean:
# setup.dependencies
iso/setup.dependencies:
@echo "Creating iso/setup.dependencies ..."
@for PORT in $(foreach c,$(COLLECTIONS),$(PORTS_$(c))); do \
echo -n $$PORT": "; \
prt-get \
@ -268,10 +269,26 @@ iso/setup.dependencies:
quickdep $$PORT; \
done > $@
setup.dependencies: iso/setup.dependencies
setup.dependencies: iso/setup.dependencies packages.iso check-deps
setup.dependencies-clean:
@rm iso/setup.dependencies
@rm packages.iso
# Write a file with all iso packages
packages.iso:
@echo "Writing file packages.iso ..."
@for PORT in $(foreach c,$(COLLECTIONS),$(PORTS_$(c))); do \
echo $$PORT; \
done > $@
# here we check if we have a dep, listed in a Pkgfile, which we do not provide on the iso
check-deps: packages.iso iso/setup.dependencies
@gawk ' \
BEGIN { while ((getline p < "packages.iso") > 0) { pkgs[p] } print "Check for missing dependencies ..." } \
{ for (p=2; p<=NF; p++) { if ( ! ($$p in pkgs)) { printf(" * %s %s\n", $$1, $$p) }}} \
' iso/setup.dependencies
##### iso building #####