OSDN Git Service

android: Fix build of libmesa_program
authorChad Versace <chad.versace@linux.intel.com>
Thu, 6 Dec 2012 05:34:26 +0000 (21:34 -0800)
committerChad Versace <chad.versace@linux.intel.com>
Thu, 6 Dec 2012 07:06:16 +0000 (23:06 -0800)
Commit 4097308 fixed the build in a questionable way. It worked at the
time, but, as Ian pointed out, the fix would likely fail at a future
commit due to the indeterminism of parallel builds. And that's exactly
what happened; the fix no longer works. `mm -j4` on Fedora 17 fails for
me.

The problem is that there is no rule for program_parse.tab.h. To fix that,
this patch adds a rule that makes program_parse.tab.c depend on
program_parse.tab.h. Technically, the c file does not depend on the
h file. However, because the two files are generated together by a single
invocation of Bison, any rule that forces execution of Bison is
sufficient.

Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
src/mesa/program/Android.mk

index 7125061..51362e0 100644 (file)
@@ -65,6 +65,9 @@ LOCAL_GENERATED_SOURCES := \
 $(intermediates)/program/program_parse.tab.c: $(LOCAL_PATH)/program_parse.y
        $(mesa_local-y-to-c-and-h)
 
+$(intermediates)/program/program_parse.tab.h: $(intermediates)/program/program_parse.tab.c
+       @
+
 $(intermediates)/program/lex.yy.c: $(LOCAL_PATH)/program_lexer.l
        $(local-l-to-c)