From: Felix Fietkau Date: Sun, 10 May 2015 11:17:29 +0000 (+0000) Subject: build: don't call prereq for any package/symlinks rules X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=58683312140cb2cd0e0c4aa3163bfaae0d211aff;p=openwrt%2Fstaging%2Flinusw.git build: don't call prereq for any package/symlinks rules Most of the time, we want to make sure OpenWrt has been configured and setup before start running make. However, in case of package/symlinks, forcing prereq as a dependency creates multiple issues: *when executed on a clean workspace, it will prompt for user input and open a menuconfig window before executing the feeds command *the only way around that is to provide a .config. However, the "prereq" target would then run a "make defconfig", which will remove all the packages in the .config but from external feeds, as feeds have not been installed yet. The only way to currently work around this, is to generate a fake config by running "make defconfig", then "make package/symlinks", copy the real config (which at this point disregards the previously generated config), and run make defconfig again. Something like this: make defconfig make package/symlinks cp real.config .config make defconfig This change is removing the need for the first defconfig, making the process more logical for OpenWrt users using the package/symlinks target. Signed-off-by: Mathieu Olivari SVN-Revision: 45657 --- diff --git a/Makefile b/Makefile index 2b08d30ffe..2499304c6a 100644 --- a/Makefile +++ b/Makefile @@ -86,20 +86,6 @@ prepare: .config $(tools/stamp-install) $(toolchain/stamp-install) world: prepare $(target/stamp-compile) $(package/stamp-compile) $(package/stamp-install) $(target/stamp-install) FORCE $(_SINGLE)$(SUBMAKE) -r package/index -# update all feeds, re-create index files, install symlinks -package/symlinks: - $(SCRIPT_DIR)/feeds update -a - $(SCRIPT_DIR)/feeds install -a - -# re-create index files, install symlinks -package/symlinks-install: - $(SCRIPT_DIR)/feeds update -i - $(SCRIPT_DIR)/feeds install -a - -# remove all symlinks, don't touch ./feeds -package/symlinks-clean: - $(SCRIPT_DIR)/feeds uninstall -a - .PHONY: clean dirclean prereq prepare world package/symlinks package/symlinks-install package/symlinks-clean endif diff --git a/include/toplevel.mk b/include/toplevel.mk index d8651d923b..bbeb7ebcef 100644 --- a/include/toplevel.mk +++ b/include/toplevel.mk @@ -193,6 +193,20 @@ else endif +# update all feeds, re-create index files, install symlinks +package/symlinks: + ./scripts/feeds update -a + ./scripts/feeds install -a + +# re-create index files, install symlinks +package/symlinks-install: + ./scripts/feeds update -i + ./scripts/feeds install -a + +# remove all symlinks, don't touch ./feeds +package/symlinks-clean: + ./scripts/feeds uninstall -a + help: cat README