On Friday, June 17, 2011 10:52:56 Jie Zhang wrote:
> On Fri, Jun 17, 2011 at 3:02 AM, Mike Frysinger wrote:
> > On Monday, June 13, 2011 17:35:24 Jie Zhang wrote:
> >> Btw, I just tried your patch. It did not work:
> >> 
> >> make[3]: Entering directory `/home/jie/sources/urjtag/svn/trunk/src/svf'
> >>   YACC   svf_bison.c
> >>   CC     svf.lo
> >>   LEX    svf_flex.c
> >>   CC     libsvf_flex_la-svf_flex.lo
> >> svf.c:56:23: fatal error: svf_bison.h: No such file or directory
> >> compilation terminated.
> >> make[3]: *** [svf.lo] Error 1
> > 
> > i dont see how this is possible.  my patch didnt touch src/svf/, only
> > src/bsdl/.  and the contents of one subdir have no bearing at all on any
> > other when it comes to lex/yacc.
> 
> Since your previous patch also remove OBJEXT override from svf subdir,
> but your this patch only touch bsdl.

ok, so it's not caused by the patch i just posted in this thread.  the 
attached patch also fixes parallel build issues in the svf subdir.

> If you change src/bsdl/bsdl_bison.y again, you will got the first case
> again. And then the second case, repeating...

how do you find these issues ? :P

i wonder if it's a bug in make.  it shouldnt have looked at bsdl_bison.h until 
after it processed bsdl_bison.c.  forcing the objects to also depend on the .c 
file gives correct behavior.

does your patch have the same issue ?  also, you'll need to refresh yours as i 
punted bsdl_config.h from latest svn to simplify things further.
-mike

diff --git a/urjtag/src/bsdl/Makefile.am b/urjtag/src/bsdl/Makefile.am
index a9ec61d..53ed59f 100644
--- a/urjtag/src/bsdl/Makefile.am
+++ b/urjtag/src/bsdl/Makefile.am
@@ -53,9 +53,8 @@ libbsdl_flex_la_CFLAGS = \
 # additional dependencies
 # - *_flex files must be processed after their *_bison counterparts
 #   to ensure that *_bison.h is present
-libbsdl_flex_la-vhdl_flex.$(OBJEXT): vhdl_bison.h
-libbsdl_flex_la-bsdl_flex.$(OBJEXT): bsdl_bison.h
-bsdl_sem.$(OBJEXT): bsdl_bison.h
+$(libbsdl_la_OBJECTS) $(libbsdl_flex_la_OBJECTS): \
+       bsdl_bison.h vhdl_bison.h
 
 vhdl_bison.h: vhdl_bison.c
 bsdl_bison.h: bsdl_bison.c
diff --git a/urjtag/src/svf/Makefile.am b/urjtag/src/svf/Makefile.am
index 836183d..ca5af84 100644
--- a/urjtag/src/svf/Makefile.am
+++ b/urjtag/src/svf/Makefile.am
@@ -35,14 +35,17 @@ libsvf_la_SOURCES = \
 libsvf_flex_la_SOURCES = \
        svf_flex.l
 
-libsvf_flex_la-svf_flex.$(OBJEXT) svf.$(OBJEXT): svf_bison.h
-
 AM_CFLAGS = $(WARNINGCFLAGS)
 
 libsvf_flex_la_CFLAGS = \
        $(AM_CFLAGS) \
        -Wno-error
 
+# additional dependencies
+# - *_flex files must be processed after their *_bison counterparts
+#   to ensure that *_bison.h is present
+$(libsvf_la_OBJECTS) $(libsvf_flex_la_OBJECTS): svf_bison.h
+
 svf_bison.h: svf_bison.c
 
 MAINTAINERCLEANFILES = \

Attachment: signature.asc
Description: This is a digitally signed message part.

------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
UrJTAG-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/urjtag-development

Reply via email to