3 include $(depth)/make/toplevel-version.make
5 # Use alternate configurations alongside eachother:
7 # ./configure --enable-config=debug
10 # uses config-debug.make and config-debug.h; output goes to out-debug.
16 # Use same configuration, but different output directory:
20 # uses config.make and config.h; output goes to out-www.
25 outbase=out$(CONFIGSUFFIX)
29 configuration=$(config)
32 configuration=$(depth)/config$(CONFIGSUFFIX).make
35 configuration=$(depth)/$(builddir)/config$(CONFIGSUFFIX).make
37 configuration=$(depth)/../$(builddir)/stepmake/config$(CONFIGSUFFIX).make
41 include $(configuration)
46 outroot=$(depth)/$(builddir)/$(patsubst $(shell cd $(depth); pwd)%,%,$(shell cd .; pwd))
49 outdir=$(outroot)/$(outbase)
50 config_h=$(depth)/$(builddir)/config$(CONFIGSUFFIX).h
53 # stepdir = $(stepmake)/stepmake
54 # for stepmake package
55 stepdir = $(depth)/stepmake
57 STEPMAKE_TEMPLATES := generic $(STEPMAKE_TEMPLATES)
58 LOCALSTEPMAKE_TEMPLATES:= generic $(LOCALSTEPMAKE_TEMPLATES)
61 # Don't try to outsmart us, you puny computer!
62 # Well, UGH. This only removes builtin rules from
63 # subsequent $(MAKE)s, *not* from the current run!
65 MAKE:=$(MAKE) --no-builtin-rules
66 include $(stepdir)/no-builtin-rules.make
72 -include $(addprefix $(depth)/make/,$(addsuffix -inclusions.make, $(LOCALSTEPMAKE_TEMPLATES)))
74 -include $(addprefix $(stepdir)/,$(addsuffix -inclusions.make, $(STEPMAKE_TEMPLATES)))
77 include $(addprefix $(stepdir)/,$(addsuffix -vars.make, $(STEPMAKE_TEMPLATES)))
79 # ugh. need to do this because of PATH :=$(topdir)/..:$(PATH)
80 include $(addprefix $(depth)/make/,$(addsuffix -vars.make, $(LOCALSTEPMAKE_TEMPLATES)))
83 include $(addprefix $(depth)/make/,$(addsuffix -rules.make, $(LOCALSTEPMAKE_TEMPLATES)))
84 include $(addprefix $(stepdir)/,$(addsuffix -rules.make, $(STEPMAKE_TEMPLATES)))
85 include $(addprefix $(depth)/make/,$(addsuffix -targets.make, $(LOCALSTEPMAKE_TEMPLATES)))
86 include $(addprefix $(stepdir)/,$(addsuffix -targets.make, $(STEPMAKE_TEMPLATES)))