Makefile: include mxe-conf as an order-only dep of all packages

Order-only deps have the benefit of guaranteed early execution and not requiring full rebuilds. It isn't a real package, so we don't want an entry in index.html.
This commit is contained in:
Tony Theodore 2015-09-07 22:35:22 +10:00
parent 5c62f03175
commit 4d858c468b
2 changed files with 14 additions and 1 deletions

View File

@ -49,6 +49,12 @@ PKGS := $(call set_create,\
BUILD := $(shell '$(EXT_DIR)/config.guess')
PATH := $(PREFIX)/$(BUILD)/bin:$(PREFIX)/bin:$(PATH)
# All pkgs have (implied) order-only dependencies on MXE_CONF_PKGS.
# These aren't meaningful to the pkg list in index.html so
# use a list in case we want to separate autotools, cmake etc.
MXE_CONF_PKGS := mxe-conf
PKGS += $(MXE_CONF_PKGS)
# define some whitespace variables
define newline
@ -363,7 +369,8 @@ $(PREFIX)/$(3)/installed/$(1): $(TOP_DIR)/src/$(1).mk \
$(wildcard $(TOP_DIR)/src/$(1)-test*) \
$(addprefix $(PREFIX)/$(3)/installed/,$(value $(call LOOKUP_PKG_RULE,$(1),DEPS,$(3)))) \
| $(if $(DONT_CHECK_REQUIREMENTS),,check-requirements) \
$(if $(value $(call LOOKUP_PKG_RULE,$(1),URL,$(3))),download-only-$(1))
$(if $(value $(call LOOKUP_PKG_RULE,$(1),URL,$(3))),download-only-$(1)) \
$(addprefix $(PREFIX)/$(3)/installed/,$(if $(call set_is_not_member,$(1),$(MXE_CONF_PKGS)),$(MXE_CONF_PKGS)))
@[ -d '$(LOG_DIR)/$(TIMESTAMP)' ] || mkdir -p '$(LOG_DIR)/$(TIMESTAMP)'
$(if $(value $(call LOOKUP_PKG_RULE,$(1),BUILD,$(3))),
@$(PRINTF_FMT) '[build]' '$(1)' '$(3)',

6
src/mxe-conf.mk Normal file
View File

@ -0,0 +1,6 @@
# This file is part of MXE.
# See index.html for further information.
PKG := mxe-conf
$(PKG)_VERSION := 1
$(PKG)_UPDATE := echo 1