summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-30 18:22:01 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-07-30 18:22:01 +0000
commitaf927159a9e65228875999840012a1cde1c36b6a (patch)
tree5569019c40b6d11d6ded7321899f99020a2ec4eb /Makefile
parent3cd9eea04e166dc36dd0ecd4c1ebdf92ed76f8f2 (diff)
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
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile35
1 files changed, 28 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index be53622cc1..fbed1297a1 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