|
|
|
# Makefile for OpenWrt
|
|
|
|
#
|
|
|
|
# Copyright (C) 2007 OpenWrt.org
|
|
|
|
#
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
#
|
|
|
|
|
|
|
|
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)
|
|
|
|
override OPENWRT_BUILD=1
|
|
|
|
export OPENWRT_BUILD
|
|
|
|
include $(TOPDIR)/include/toplevel.mk
|
|
|
|
else
|
|
|
|
include rules.mk
|
|
|
|
include $(INCLUDE_DIR)/depends.mk
|
|
|
|
include $(INCLUDE_DIR)/subdir.mk
|
|
|
|
include package/Makefile
|
|
|
|
include tools/Makefile
|
|
|
|
include toolchain/Makefile
|
|
|
|
|
|
|
|
clean: FORCE
|
|
|
|
rm -rf build_* bin tmp
|
|
|
|
|
|
|
|
dirclean: clean
|
|
|
|
rm -rf staging_dir_* toolchain_build_* tool_build
|
|
|
|
|
|
|
|
distclean: dirclean config-clean symlinkclean docs/clean
|
|
|
|
rm -rf dl
|
|
|
|
|
|
|
|
target/%: FORCE
|
|
|
|
$(MAKE) -C $(patsubst %/$*,%,$@) $*
|
|
|
|
|
|
|
|
# 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
|