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
34 configuration
=$(builddir
)/config
$(CONFIGSUFFIX
).make
41 outroot
=$(builddir
)/$(patsubst $(shell cd
$(depth
); pwd
)%,%,$(pwd
))
44 include $(configuration
)
46 outdir
=$(outroot
)/$(outbase
)
49 config_h
=$(builddir
)/config
$(CONFIGSUFFIX
).h
51 # The outdir that was configured for: best guess to find binaries
52 outconfbase
=out
$(CONFIGSUFFIX
)
53 outconfdir
=$(outroot
)/$(outconfbase
)
56 stepdir
= $(stepmake
)/stepmake
57 # for stepmake package
58 # stepdir = $(depth)/stepmake
60 STEPMAKE_TEMPLATES
:= generic
$(STEPMAKE_TEMPLATES
)
61 LOCALSTEPMAKE_TEMPLATES
:= generic
$(LOCALSTEPMAKE_TEMPLATES
)
63 # Don't try to outsmart us, you puny computer!
64 # Well, UGH. This only removes builtin rules from
65 # subsequent $(MAKE)s, *not* from the current run!
66 ifeq ($(BUILTINS_REMOVED
),)
67 export BUILTINS_REMOVED
= yes
68 MAKE
:=$(MAKE
) --no-builtin-rules
69 include $(stepdir
)/no-builtin-rules.make
75 -include $(addprefix $(depth
)/make
/,$(addsuffix -inclusions.make
, $(LOCALSTEPMAKE_TEMPLATES
)))
77 -include $(addprefix $(stepdir
)/,$(addsuffix -inclusions.make
, $(STEPMAKE_TEMPLATES
)))
80 include $(addprefix $(stepdir
)/,$(addsuffix -vars.make
, $(STEPMAKE_TEMPLATES
)))
82 # ugh. need to do this because of PATH :=$(topdir)/..:$(PATH)
83 include $(addprefix $(depth
)/make
/,$(addsuffix -vars.make
, $(LOCALSTEPMAKE_TEMPLATES
)))
86 include $(addprefix $(depth
)/make
/,$(addsuffix -rules.make
, $(LOCALSTEPMAKE_TEMPLATES
)))
87 include $(addprefix $(stepdir
)/,$(addsuffix -rules.make
, $(STEPMAKE_TEMPLATES
)))
88 include $(addprefix $(depth
)/make
/,$(addsuffix -targets.make
, $(LOCALSTEPMAKE_TEMPLATES
)))
89 include $(addprefix $(stepdir
)/,$(addsuffix -targets.make
, $(STEPMAKE_TEMPLATES
)))