export OPENWRTVERSION
export IS_TTY=$(shell tty -s && echo 1 || echo 0)
+# make sure that a predefined CFLAGS variable does not disturb packages
+export CFLAGS=
+
ifeq ($(FORCE),)
.config scripts/config/conf scripts/config/mconf: tmp/.prereq-build
endif
./scripts/metadata.pl package_mk tmp/.packageinfo > tmp/.packagedeps || { rm -f tmp/.packagedeps; false; }
touch $(TOPDIR)/tmp/.build
-.config: ./scripts/config/conf prepare-tmpinfo
- @+if [ \! -f .config ]; then \
+.config: ./scripts/config/conf prepare-tmpinfo $(if $(CONFIG_HAVE_DOT_CONFIG),,FORCE)
+ @+if [ \! -e .config ] || ! grep CONFIG_HAVE_DOT_CONFIG .config >/dev/null; then \
[ -e $(HOME)/.openwrt/defconfig ] && cp $(HOME)/.openwrt/defconfig .config; \
- $(NO_TRACE_MAKE) menuconfig $(PREP_MK); \
+ $(_SINGLE)$(NO_TRACE_MAKE) menuconfig $(PREP_MK); \
fi
scripts/config/mconf:
- @$(SUBMAKE) -s -j1 -C scripts/config all
+ @$(_SINGLE)$(SUBMAKE) -s -C scripts/config all
$(eval $(call rdep,scripts/config,scripts/config/mconf))
scripts/config/conf:
- @$(SUBMAKE) -s -j1 -C scripts/config conf
+ @$(_SINGLE)$(SUBMAKE) -s -C scripts/config conf
config: scripts/config/conf prepare-tmpinfo FORCE
$< Config.in
config-clean: FORCE
- $(NO_TRACE_MAKE) -C scripts/config clean
+ $(_SINGLE)$(NO_TRACE_MAKE) -C scripts/config clean
defconfig: scripts/config/conf prepare-tmpinfo FORCE
touch .config
$< -$(if $(CONFDEFAULT),$(CONFDEFAULT),o) Config.in
menuconfig: scripts/config/mconf prepare-tmpinfo FORCE
- if [ \! -f .config -a -e $(HOME)/.openwrt/defconfig ]; then \
+ if [ \! -e .config -a -e $(HOME)/.openwrt/defconfig ]; then \
cp $(HOME)/.openwrt/defconfig .config; \
fi
$< Config.in
kernel_oldconfig: .config FORCE
- $(NO_TRACE_MAKE) -C target/linux oldconfig
+ $(_SINGLE)$(NO_TRACE_MAKE) -C target/linux oldconfig
kernel_menuconfig: .config FORCE
- $(NO_TRACE_MAKE) -C target/linux menuconfig
+ $(_SINGLE)$(NO_TRACE_MAKE) -C target/linux menuconfig
tmp/.prereq-build: include/prereq-build.mk
mkdir -p tmp
prereq:: .config
@+$(MAKE) -s tmp/.prereq-build $(PREP_MK)
- @$(NO_TRACE_MAKE) -s $@
+ @+$(NO_TRACE_MAKE) -s $@
%::
@+$(PREP_MK) $(NO_TRACE_MAKE) -s prereq
cat README
docs docs/compile: FORCE
- @$(_SINGLE)$(SUBMAKE) -j1 -C docs compile
+ @$(_SINGLE)$(SUBMAKE) -C docs compile
docs/clean: FORCE
- @$(_SINGLE)$(SUBMAKE) -j1 -C docs clean
+ @$(_SINGLE)$(SUBMAKE) -C docs clean
distclean:
rm -rf tmp build_dir staging_dir dl .config* feeds package/feeds package/openwrt-packages bin
- @$(_SINGLE)$(SUBMAKE) -j1 -C scripts/config clean
+ @$(_SINGLE)$(SUBMAKE) -C scripts/config clean
ifeq ($(findstring v,$(DEBUG)),)
.SILENT: symlinkclean clean dirclean distclean config-clean download help tmpinfo-clean .config scripts/config/mconf scripts/config/conf menuconfig tmp/.prereq-build tmp/.prereq-package prepare-tmpinfo