ifeq ($(_THEOS_STAGING_RULES_LOADED),) _THEOS_STAGING_RULES_LOADED := 1 .PHONY: stage before-stage internal-stage after-stage # For the toplevel invocation of make, mark 'all' and the *-stage rules as prerequisites. # We do not do this for anything else, because otherwise, all the staging rules would run for every subproject. ifeq ($(_THEOS_TOP_INVOCATION_DONE),) stage:: all before-stage internal-stage after-stage else # _THEOS_TOP_INVOCATION_DONE stage:: internal-stage endif # Only do the master staging rules if we're the toplevel make invocation. ifeq ($(_THEOS_TOP_INVOCATION_DONE),) before-stage:: $(ECHO_NOTHING)rm -rf "$(THEOS_STAGING_DIR)"$(ECHO_END) $(ECHO_NOTHING)$(FAKEROOT) -c$(ECHO_END) $(ECHO_NOTHING)mkdir -p "$(THEOS_STAGING_DIR)"$(ECHO_END) else # _THEOS_TOP_INVOCATION_DONE before-stage:: @: endif # _THEOS_TOP_INVOCATION_DONE internal-stage:: $(ECHO_NOTHING)[ -d layout ] && rsync -a "layout/" "$(THEOS_STAGING_DIR)" --exclude "DEBIAN" $(_THEOS_RSYNC_EXCLUDE_COMMANDLINE) || true$(ECHO_END) after-stage:: @: endif # _THEOS_STAGING_RULES_LOADED