mesa/es: Improve support for parallel execution of make.
authorChia-I Wu <olvaffe@gmail.com>
Fri, 6 Nov 2009 07:17:15 +0000 (15:17 +0800)
committerBrian Paul <brianp@vmware.com>
Fri, 6 Nov 2009 21:19:23 +0000 (14:19 -0700)
Running make with -j for the first time might fail because glapi headers
haven't been generated.  This commit should make it more reliable.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
src/mesa/es/Makefile
src/mesa/es/glapi/Makefile

index 48b11a6ad2352811fde82e0d6db5879af3a0b4a3..8cf2eaccabe33d5c5e96fac6fd43c17fda8cf0b0 100644 (file)
@@ -110,11 +110,17 @@ clean:
 # nothing to install
 install:
 
-subdirs:
-       make -C glapi
-       make -C $(MESA) asm_subdirs
+glapi/glapi-stamp:
+       $(MAKE) -C glapi
 
-depend: $(ES1_ALL_SOURCES) $(ES2_ALL_SOURCES)
+subdirs: glapi/glapi-stamp
+       $(MAKE) -C $(MESA) asm_subdirs
+
+# remove generated sources because "depend" is checked even when "make clean"
+DEPEND_SOURCES := $(filter-out $(GENERATED_SOURCES), $(ES1_ALL_SOURCES) $(ES2_ALL_SOURCES))
+DEPEND_SOURCES := $(filter-out glapi/%, $(DEPEND_SOURCES))
+
+depend: glapi/glapi-stamp $(DEPEND_SOURCES)
        @echo "running $(MKDEP)"
        @touch depend
        @# MESA is "..", but luckily, directories are longer than 2 characters
index 1e32af867d5823cf5aca9b1c5fb290a23d7e12f8..1256be953d154459e2004af7748311993fb8dce1 100644 (file)
@@ -30,7 +30,10 @@ ES2_DEPS = $(ES2_APIXML) base2_API.xml es2_EXT.xml es_EXT.xml \
 ES1_OUTPUTS := $(addprefix $(ES1_OUTPUT_DIR)/, $(OUTPUTS))
 ES2_OUTPUTS := $(addprefix $(ES2_OUTPUT_DIR)/, $(OUTPUTS))
 
-all: $(ES1_OUTPUTS) $(ES2_OUTPUTS)
+all: glapi-stamp
+
+glapi-stamp: $(ES1_OUTPUTS) $(ES2_OUTPUTS)
+       @touch glapi-stamp
 
 $(ES1_OUTPUTS): APIXML := $(ES1_APIXML)
 $(ES2_OUTPUTS): APIXML := $(ES2_APIXML)
@@ -86,5 +89,6 @@ verify_xml:
        @rm -f tmp.xml
 
 clean:
+       -rm -f glapi-stamp
        -rm -rf $(ES1_OUTPUT_DIR) $(ES2_OUTPUT_DIR)
        -rm -f *~ *.pyc *.pyo