]> git.donarmstrong.com Git - lilypond.git/blobdiff - make/stepmake.make
* scm/chord-name.scm: complete new markup usage
[lilypond.git] / make / stepmake.make
index c43fd0ffd6bc0ba02a91c38e5f04516887651b1d..3e7740506463e8d801bd519b2662b8c4fcea578b 100644 (file)
@@ -2,15 +2,9 @@
 
 include $(depth)/make/toplevel-version.make
 
-# Don't try to outsmart us, you puny computer!
-ifeq (0,${MAKELEVEL})
-  MAKE:=$(MAKE) --no-builtin-rules
-endif
-.SUFFIXES:
-
 # Use alternate configurations alongside eachother:
 #
-#     ./configure --enable-configsuffix=debug
+#     ./configure --enable-config=debug
 #     make conf=debug
 #
 # uses config-debug.make and config-debug.h; output goes to out-debug.
@@ -21,9 +15,9 @@ endif
 
 # Use same configuration, but different output directory:
 #
-#     make out=WWW
+#     make out=www
 #
-# uses config.make and config.h; output goes to out-WWW.
+# uses config.make and config.h; output goes to out-www.
 #
 ifdef out
   outbase=out-$(out)
@@ -34,26 +28,29 @@ endif
 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),.)
+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
+
+# why not generic ?? 
+config_h=$(builddir)/config$(CONFIGSUFFIX).h
+
+# The outdir that was configured for: best guess to find binaries
+outconfbase=out$(CONFIGSUFFIX)
+outconfdir=$(outroot)/$(outconfbase)
 
 # user package
 stepdir = $(stepmake)/stepmake
@@ -63,6 +60,15 @@ stepdir = $(stepmake)/stepmake
 STEPMAKE_TEMPLATES := generic $(STEPMAKE_TEMPLATES) 
 LOCALSTEPMAKE_TEMPLATES:= generic $(LOCALSTEPMAKE_TEMPLATES)
 
+# 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 ($(BUILTINS_REMOVED),)
+  export BUILTINS_REMOVED = yes
+  MAKE:=$(MAKE) --no-builtin-rules
+  include $(stepdir)/no-builtin-rules.make
+endif
+.SUFFIXES:
 
 all: