# make/Stepmake.make
+
+all: foe
+
+foe:
+ @echo one=.$(shell cd $(builddir); pwd).
+ @echo two=.$(shell cd $(depth); pwd).
+
include $(depth)/make/toplevel-version.make
ifdef config
configuration=$(config)
else
- ifeq ($(builddir),.)
+ ifeq ($(builddir),)
configuration=$(depth)/config$(CONFIGSUFFIX).make
else
- # user package
- configuration=$(depth)/$(builddir)/config$(CONFIGSUFFIX).make
- # stepmake package
- #configuration=$(depth)/../$(builddir)/stepmake/config$(CONFIGSUFFIX).make
+ configuration=$(builddir)/config$(CONFIGSUFFIX).make
endif
endif
-include $(configuration)
-
-ifeq ($(builddir),.)
- outroot=$(builddir)
+ifeq ($(builddir),)
+ outroot=.
else
- outroot=$(depth)/$(builddir)/$(patsubst $(shell cd $(depth); pwd)%,%,$(shell cd .; pwd))
+ outroot=$(builddir)/$(patsubst $(shell cd $(depth); pwd)%,%,$(pwd))
endif
+include $(configuration)
+
outdir=$(outroot)/$(outbase)
-config_h=$(depth)/$(builddir)/config$(CONFIGSUFFIX).h
+config_h=$(builddir)/config$(CONFIGSUFFIX).h
# The outdir that was configured for: best guess to find binaries
outconfbase=out$(CONFIGSUFFIX)
# Don't try to outsmart us, you puny computer!
# Well, UGH. This only removes builtin rules from
# subsequent $(MAKE)s, *not* from the current run!
-ifeq (0,${MAKELEVEL})
+ifeq ($(BUILTINS_REMOVED),)
+ export BUILTINS_REMOVED = yes
MAKE:=$(MAKE) --no-builtin-rules
include $(stepdir)/no-builtin-rules.make
endif