qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alan Conway <acon...@redhat.com>
Subject Re: [C++] fix for recent rename-provoked build problems
Date Fri, 05 Jan 2007 19:11:45 GMT
Applied.

On Fri, 2007-01-05 at 16:12 +0100, Jim Meyering wrote:
> Here's a patch that fixes the recent problem where "make"
> would failure like this:
> 
>   *** No rule to make target ../../gentools/templ.cpp/AMQP_HighestVersion.cpp.tmpl
> 
> I tested it by corrupting gen/gen-src.mk like this:
>   perl -pi.bak -e s/estVersion.h.t// gen/gen-src.mk
> Then ran "make" and confirmed there was no error.
> Without the newly-emitted lines, I get this error:
> 
>   make[2]: *** No rule to make target `../../gentools/templ.cpp/AMQP_Highmpl', needed
by `timestamp'.  Stop.
> 
> Jim
> 
> 
> 2007-01-05  Jim Meyering  <meyering@redhat.com>
> 
> 	* gen/Makefile.am (gen-src.mk) [CAN_GENERATE_CODE]: Emit an empty
> 	dependency for each generated file, in case they are renamed,
>         removed, or no longer generated.  Otherwise, "./bootstrap --build"
>         would fail with e.g., `*** No rule to make target
> 	../../gentools/templ.cpp/AMQP_HighestVersion.cpp.tmpl'.
> 
> Index: gen/Makefile.am
> ===================================================================
> --- gen/Makefile.am	(revision 493033)
> +++ gen/Makefile.am	(working copy)
> @@ -11,7 +11,7 @@
>  # Don't attempt to run the code generator unless configure has set
>  # CAN_GENERATE_CODE, indicating that the amqp.xml and tools needed
>  # to run the code generator are available.
> -# 
> +#
>  if CAN_GENERATE_CODE
> 
>  gentools_dir = $(srcdir)/../../gentools
> @@ -40,6 +40,11 @@
>  	  echo 'cxx_templates = '\\					\
>  	    && find $(gentools_dir)/templ.cpp -name '*.tmpl'		\
>  		| sort -u | sed 's/.*/  & \\/;$$s/ \\//';		\
> +	  echo '# Empty rules, in case any of these files is removed,';	\
> +	  echo '# renamed, or no longer generated.';			\
> +	  echo '$$(spec):';						\
> +	  echo '$$(java_sources):';					\
> +	  echo '$$(cxx_templates):';					\
>  	  echo endif							\
>  	) >> $@-t
>  	mv $@-t $@


Mime
View raw message