From af927159a9e65228875999840012a1cde1c36b6a Mon Sep 17 00:00:00 2001 From: nbd Date: Mon, 30 Jul 2007 18:22:01 +0000 Subject: next round of build system cleanup - convert package/ to new structure git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8236 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- Makefile | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index be53622cc..fbed1297a 100644 --- a/Makefile +++ b/Makefile @@ -6,23 +6,26 @@ # See /LICENSE for more information. # -all: world - TOPDIR:=${CURDIR} LC_ALL:=C LANG:=C IS_TTY:=${shell tty -s && echo 1 || echo 0} export TOPDIR LC_ALL LANG IS_TTY +world: + +include $(TOPDIR)/include/debug.mk +include $(TOPDIR)/include/host.mk + ifneq ($(OPENWRT_BUILD),1) - export OPENWRT_BUILD:=1 + override OPENWRT_BUILD=1 + export OPENWRT_BUILD include $(TOPDIR)/include/toplevel.mk else - include $(TOPDIR)/include/host.mk - include rules.mk include $(INCLUDE_DIR)/depends.mk include $(INCLUDE_DIR)/subdir.mk + include package/Makefile include tools/Makefile include toolchain/Makefile @@ -35,14 +38,32 @@ dirclean: clean distclean: dirclean config-clean symlinkclean docs/clean rm -rf dl -package/% target/%: FORCE +target/%: FORCE $(MAKE) -C $(patsubst %/$*,%,$@) $* -world: .config $(tools/stamp) $(toolchain/stamp) FORCE +# check prerequisites before starting to build +prereq: tmp/.prereq-target $(package/stamp-prereq) ; + +world: .config $(tools/stamp-install) $(toolchain/stamp-install) FORCE $(MAKE) target/compile $(MAKE) package/compile $(MAKE) package/install $(MAKE) target/install $(MAKE) package/index +package/symlinks: + $(SCRIPT_DIR)/feeds.sh $(CONFIG_SOURCE_FEEDS) $(CONFIG_SOURCE_FEEDS_REV) + +# FIXME: remove after converting target/ to new structure +tmp/.prereq-target: tmp/.targetinfo .config +tmp/.prereq-target: include/prereq.mk + mkdir -p tmp + rm -f tmp/.host.mk + @+$(NO_TRACE_MAKE) -s -C target prereq 2>/dev/null || { \ + echo "Prerequisite check failed. Use FORCE=1 to override."; \ + false; \ + } + touch $@ +.SILENT: tmp/.prereq-target + endif -- cgit v1.2.3