diff options
| author | mbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-04-03 23:03:56 +0000 | 
|---|---|---|
| committer | mbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-04-03 23:03:56 +0000 | 
| commit | 947ca6f4e8cf3e67ce50d0af0f669e1099d6ea8c (patch) | |
| tree | c2e551f003a37f3f6ecb02e3d2d7aa8df554b09b | |
| parent | 3195575d366ffb8ceeb65296bcc29b1a514013cf (diff) | |
Tidy up Makefiles
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6857 3c298f89-4303-0410-b956-a3cf2f4a3e73
| -rw-r--r-- | Config.in | 2 | ||||
| -rw-r--r-- | Makefile | 70 | ||||
| -rw-r--r-- | include/scan.mk | 8 | ||||
| -rw-r--r-- | package/Makefile | 23 | ||||
| -rw-r--r-- | rules.mk | 14 | 
5 files changed, 40 insertions, 77 deletions
| @@ -123,5 +123,5 @@ source "target/linux/*/image/Config.in"  endmenu -source "tmp/.config.in" +source "tmp/.config-package.in" @@ -41,27 +41,27 @@ export OPENWRTVERSION  ifeq ($(FORCE),)    .config scripts/config/conf scripts/config/mconf: tmp/.prereq-build -  world: tmp/.prereq-packages tmp/.prereq-target +  world: tmp/.prereq-package tmp/.prereq-target  endif -tmp/.pkginfo: FORCE -	@mkdir -p tmp/info -	@$(NO_TRACE_MAKE) -s -f include/scan.mk SCAN_TARGET="pkginfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPS="$(shell ls include/package*.mk) include/kernel.mk" SCAN_EXTRA="" +package/%/Makefile: ; +target/%/Makefile: ; -tmp/.targetinfo: FORCE +tmp/.packageinfo: $(wildcard package/*/Makefile include/package*.mk include/kernel.mk)  +tmp/.targetinfo: $(wildcard target/*/Makefile include/kernel*.mk) +tmp/.%info:  	@mkdir -p tmp/info -	@$(NO_TRACE_MAKE) -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPS="$(shell ls include/kernel*.mk)" SCAN_EXTRA="" +	@$(NO_TRACE_MAKE) -s -f include/scan.mk SCAN_TARGET="$*info" SCAN_DIR="$(patsubst target,target/linux,$*)" SCAN_NAME="$*" SCAN_DEPS="$^" SCAN_EXTRA=""  tmpinfo-clean: FORCE -	@-rm -rf tmp/.pkginfo tmp/.targetinfo +	@-rm -rf tmp/.*info + +tmp/.config-%.in: tmp/.%info +	@./scripts/metadata.pl $*_config < $< > $@ || rm -f $@ -tmp/.config.in: tmp/.pkginfo -	@./scripts/metadata.pl package_config < $< > $@ || rm -f $@ -tmp/.config-target.in: tmp/.targetinfo -	@./scripts/metadata.pl target_config < $< > $@ || rm -f $@ -.config: ./scripts/config/conf tmp/.config.in tmp/.config-target.in +.config: ./scripts/config/conf tmp/.config-target.in tmp/.config-package.in  	@[ -f .config ] || $(NO_TRACE_MAKE) menuconfig  	@$< -D .config Config.in &> /dev/null @@ -71,42 +71,34 @@ scripts/config/mconf:  scripts/config/conf:  	@$(MAKE) -C scripts/config conf -config: scripts/config/conf tmp/.config.in tmp/.config-target.in FORCE + + +config: scripts/config/conf tmp/.config-target.in tmp/.config-package.in FORCE  	$< Config.in  config-clean: FORCE  	$(NO_TRACE_MAKE) -C scripts/config clean -defconfig: scripts/config/conf tmp/.config.in tmp/.config-target.in FORCE +defconfig: scripts/config/conf tmp/.config-target.in tmp/.config-package.in FORCE  	touch .config  	$< -D .config Config.in -oldconfig: scripts/config/conf tmp/.config.in tmp/.config-target.in FORCE +oldconfig: scripts/config/conf tmp/.config-target.in tmp/.config-package.in FORCE  	$< -o Config.in -menuconfig: scripts/config/mconf tmp/.config.in tmp/.config-target.in FORCE +menuconfig: scripts/config/mconf tmp/.config-target.in tmp/.config-package.in FORCE  	$< Config.in  kernel_menuconfig: .config FORCE  	-$(MAKE) target/linux-prepare  	$(NO_TRACE_MAKE) -C target/linux menuconfig -scan_packages: -	@$(NO_TRACE_MAKE) -s tmp/.pkginfo tmp/.targetinfo -	 -package/%: scan_packages -	$(MAKE) -C package $(patsubst package/%,%,$@) +package/% target/%: tmp/.packageinfo +toolchain/% package/% target/%: tmp/.targetinfo +package/% target/% tools/% toolchain/%: FORCE +	$(MAKE) -C $(patsubst %/$*,%,$@) $* -target/%: scan_packages -	@$(NO_TRACE_MAKE) -s tmp/.pkginfo tmp/.targetinfo -	$(MAKE) -C target $(patsubst target/%,%,$@) - -tools/%: FORCE -	$(MAKE) -C tools $(patsubst tools/%,%,$@) - -toolchain/%: tmp/.targetinfo FORCE -	$(MAKE) -C toolchain $(patsubst toolchain/%,%,$@)  tmp/.prereq-build: include/prereq-build.mk  	@mkdir -p tmp @@ -117,25 +109,16 @@ tmp/.prereq-build: include/prereq-build.mk  	}  	@touch $@ -tmp/.prereq-packages: include/prereq.mk tmp/.pkginfo .config -	@mkdir -p tmp -	@rm -f tmp/.host.mk -	@$(NO_TRACE_MAKE) -s -C package prereq 2>/dev/null || { \ -		echo "Prerequisite check failed. Use FORCE=1 to override."; \ -		false; \ -	} -	@touch $@ - -tmp/.prereq-target: include/prereq.mk tmp/.targetinfo .config +tmp/.prereq-%: include/prereq.mk tmp/.%info .config  	@mkdir -p tmp  	@rm -f tmp/.host.mk -	@$(NO_TRACE_MAKE) -s -C target prereq 2>/dev/null || { \ +	@$(NO_TRACE_MAKE) -s -C $* prereq 2>/dev/null || { \  		echo "Prerequisite check failed. Use FORCE=1 to override."; \  		false; \  	}  	@touch $@ -prereq: tmp/.prereq-build tmp/.prereq-packages tmp/.prereq-target FORCE +prereq: tmp/.prereq-build tmp/.prereq-package tmp/.prereq-target FORCE  download: .config FORCE  	$(MAKE) tools/download @@ -173,7 +156,6 @@ docclean:  symlinkclean:  	find package -type l -exec rm -f {} + -.SILENT: clean dirclean distclean symlinkclean config-clean download world +.SILENT: clean dirclean distclean symlinkclean config-clean download world help  FORCE: ;  .PHONY: FORCE help -%: ; diff --git a/include/scan.mk b/include/scan.mk index aa7c2e74b..5bbfce566 100644 --- a/include/scan.mk +++ b/include/scan.mk @@ -1,6 +1,6 @@  include $(TOPDIR)/include/verbose.mk -SCAN_TARGET ?= pkginfo +SCAN_TARGET ?= packageinfo  SCAN_NAME ?= package  SCAN_DIR ?= package  SCAN_DEPS ?= include/package.mk @@ -15,7 +15,7 @@ else    endef  endif -SCAN = $(patsubst $(SCAN_DIR)/%/Makefile,%,$(shell ls $(SCAN_DIR)/*/Makefile)) +SCAN = $(patsubst $(SCAN_DIR)/%/Makefile,%,$(wildcard $(SCAN_DIR)/*/Makefile))  tmp/.$(SCAN_TARGET):  	@($(call progress,Collecting $(SCAN_NAME) info: merging...))  	for file in $(SCAN); do \ @@ -32,8 +32,8 @@ $(SCAN_STAMP):  endif  # FIXME: generate this dynamically? -ifeq ($(SCAN_TARGET),pkginfo) -tmp/info/.pkginfo-kernel: $(shell ls package/kernel/modules/*.mk) +ifeq ($(SCAN_TARGET),packageinfo) +tmp/info/.packageinfo-kernel: $(wildcard package/kernel/modules/*.mk)  endif  define scanfiles diff --git a/package/Makefile b/package/Makefile index 06e91042b..9b8f87292 100644 --- a/package/Makefile +++ b/package/Makefile @@ -12,7 +12,7 @@ include $(INCLUDE_DIR)/host.mk  all: compile -include $(TMP_DIR)/.pkgdeps +include $(TMP_DIR)/.packagedeps  PREREQ_PACKAGES:=$(patsubst %,%-prereq,$(prereq-y) $(prereq-m))  DOWNLOAD_PACKAGES:=$(patsubst %,%-download,$(package-y) $(package-m)) @@ -22,25 +22,14 @@ INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))  $(STAMP_DIR) $(TARGET_DIR):  	mkdir -p $@ -%-prereq: $(STAMP_DIR) $(TARGET_DIR) -	$(MAKE) -C $(patsubst %-prereq,%,$@) prereq - -%-download: FORCE -	$(MAKE) -C $(patsubst %-download,%,$@) download - -%-prepare: $(TARGET_DIR) FORCE -	$(MAKE) -C $(patsubst %-prepare,%,$@) prepare +%-prereq %-download %-clean %-compile %-install: FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) +%-prereq: $(STAMP_DIR) $(TARGET_DIR) +%-prepare: $(TARGET_DIR)  %-compile: %-prepare -	$(MAKE) -C $(patsubst %-compile,%,$@) compile - -%-install: -	$(MAKE) -C $(patsubst %-install,%,$@) install - -%-clean: FORCE -	$(MAKE) -C $(patsubst %-clean,%,$@) clean -$(TMP_DIR)/.pkgdeps: $(TMP_DIR)/.pkginfo +$(TMP_DIR)/.packagedeps: $(TMP_DIR)/.packageinfo  	@$(TOPDIR)/scripts/metadata.pl package_mk < $< > $@ || rm -f $@  preconfig: @@ -135,20 +135,12 @@ endef  # Parameters:  # 	1: dependencies for the prepare step  define default_subtargets -  %-download: FORCE -	$$(MAKE) -C $$(patsubst %-download,%,$$@) download - -  %-prepare: $(1) FORCE -	$$(MAKE) -C $$(patsubst %-prepare,%,$$@) prepare +  %-download %-prepare %-compile %-install %-clean: FORCE +	$$(MAKE) -C $$* $$(patsubst $$*-%,%,$$@)    %-compile: %-prepare  -	$$(MAKE) -C $$(patsubst %-compile,%,$$@) compile -    %-install: %-compile -	$$(MAKE) -C $$(patsubst %-install,%,$$@) install - -  %-clean: FORCE -	@$$(MAKE) -C $$(patsubst %-clean,%,$$@) clean +  .SILENT: %-clean  endef | 
