3 # Copyright (C) 2007 OpenWrt.org
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
12 IS_TTY:=${shell tty -s && echo 1 || echo 0}
13 export TOPDIR LC_ALL LANG IS_TTY
17 include $(TOPDIR)/include/debug.mk
18 include $(TOPDIR)/include/host.mk
20 ifneq ($(OPENWRT_BUILD),1)
21 override OPENWRT_BUILD=1
23 include $(TOPDIR)/include/toplevel.mk
26 include $(INCLUDE_DIR)/depends.mk
27 include $(INCLUDE_DIR)/subdir.mk
28 include package/Makefile
29 include tools/Makefile
30 include toolchain/Makefile
33 rm -rf build_* bin tmp
36 rm -rf staging_dir_* toolchain_build_* tool_build
38 distclean: dirclean config-clean symlinkclean docs/clean
42 $(MAKE) -C $(patsubst %/$*,%,$@) $*
44 # check prerequisites before starting to build
45 prereq: tmp/.prereq-target $(package/stamp-prereq) ;
47 world: .config $(tools/stamp-install) $(toolchain/stamp-install) FORCE
48 $(MAKE) target/compile
49 $(MAKE) package/compile
50 $(MAKE) package/install
51 $(MAKE) target/install
55 $(SCRIPT_DIR)/feeds.sh $(CONFIG_SOURCE_FEEDS) $(CONFIG_SOURCE_FEEDS_REV)
57 # FIXME: remove after converting target/ to new structure
58 tmp/.prereq-target: tmp/.targetinfo .config
59 tmp/.prereq-target: include/prereq.mk
62 @+$(NO_TRACE_MAKE) -s -C target prereq 2>/dev/null || { \
63 echo "Prerequisite check failed. Use FORCE=1 to override."; \
67 .SILENT: tmp/.prereq-target