X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/021e6aa5f3691fe6fdf04a406a642575f46f284a..716ea883948a9ce031d5387c0018bd3d26b19f64:/Makefile diff --git a/Makefile b/Makefile index d82d6180e..84508b1ff 100644 --- a/Makefile +++ b/Makefile @@ -38,20 +38,21 @@ endif endif export OPENWRTVERSION -ifeq ($(shell ./scripts/timestamp.pl -p .pkginfo package),package) -.pkginfo: pkginfo-clean -endif +all: world -.pkginfo: +.pkginfo: FORCE +ifneq ($(shell ./scripts/timestamp.pl -p .pkginfo package Makefile),.pkginfo) @echo Collecting package info... - @-for makefile in package/*/Makefile; do \ - echo Source-Makefile: $$makefile; \ - $(MAKE) DUMP=1 -f $$makefile 2>&- || true; \ + @-for dir in package/*/; do \ + echo Source-Makefile: $${dir}Makefile; \ + $(MAKE) --no-print-dir DUMP=1 -C $$dir 2>&- || true; \ done > $@ - +endif + .config.in: .pkginfo + ./scripts/gen_menuconfig.pl < $< > $@ || rm -f $@ -pkginfo-clean: +pkginfo-clean: FORCE -rm -f .pkginfo .config.in scripts/config/mconf: .config.in @@ -60,15 +61,45 @@ scripts/config/mconf: .config.in scripts/config/conf: .config.in $(MAKE) -C scripts/config conf -menuconfig: scripts/config/mconf +config: scripts/config/conf FORCE $< Config.in -config: scripts/config/mconf +defdconfig: scripts/config/conf FORCE + $< -d Config.in + +oldconfig: scripts/config/conf FORCE + $< -o Config.in + +menuconfig: scripts/config/mconf FORCE $< Config.in -config-clean: +config-clean: FORCE $(MAKE) -C scripts/config clean -.PHONY: pkginfo-clean +package/%: .pkginfo FORCE + $(MAKE) -C package $(patsubst package/%,%,$@) + +target/%: .pkginfo FORCE + $(MAKE) -C target $(patsubst target/%,%,$@) + +toolchain/%: FORCE + $(MAKE) -C toolchain $(patsubst toolchain/%,%,$@) + +world: FORCE + $(MAKE) toolchain/install + $(MAKE) target/compile + $(MAKE) package/compile + $(MAKE) package/install + $(MAKE) target/install + +clean: FORCE + rm -rf build_* bin + +dirclean: clean FORCE + rm -rf staging_dir_* toolchain_build_* +distclean: dirclean FORCE + rm -rf .* dl +.PHONY: FORCE +FORCE: