[Cluster-devel] Upcoming change to the build system.

Fabio M. Di Nitto fdinitto at redhat.com
Fri Aug 1 05:01:33 UTC 2008


On Thu, 2008-07-31 at 15:03 -0700, Joel Becker wrote:
> On Thu, Jul 31, 2008 at 09:49:16AM +0200, Fabio M. Di Nitto wrote:
> > I just committed a "big" change to the build system in a private branch  
> > (fabbione_build).
> >
> > http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=e112eca49345e13aa2344c50dacfcac142ee2d06
> >
> > Please let me know if you have any objections to it or I'd like to commit 
> > it monday morning my time.
> 
> 	Unfortunately, it doesn't work still.  install still depends on
> all, so I get:

Ok. I think it's possible to remote the install: all in favour of
install: but the bug you see here is not in our build system (at least I
believe so).

> 
> debian2:/nfs/cluster-working# make install
> [ -n "" ] || make -C config all
> make[1]: Entering directory `/build/jlbec/cman/cluster-working/config'
> set -e && \
> 	for i in libs plugins tools; do \
> 		make -C $i all; \
> 	done
> make[2]: Entering directory `/build/jlbec/cman/cluster-working/config/libs'
> set -e && \
> 	for i in libccsconfdb; do \
> 		make -C $i all; \
> 	done
> make[3]: Entering directory `/build/jlbec/cman/cluster-working/config/libs/libccsconfdb'
> make[3]: *** No rule to make target `/usr/include/libxml2/libxml/parser.h', needed by `libccs.o'.  Stop.
> make[3]: Leaving directory `/build/jlbec/cman/cluster-working/config/libs/libccsconfdb'
> make[2]: *** [all] Error 2
> make[2]: Leaving directory `/build/jlbec/cman/cluster-working/config/libs'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/build/jlbec/cman/cluster-working/config'
> make: *** [config] Error 2

The issue seems to be that .d files (generated with gcc -MMD option)
still include libxml/ headers in the dependency chain. This looks wrong
to me.

If I generate the .d file using -MD I can see all system includes
(including openais headers from /usr/include/openais), but with -MMD
openais goes away together with all the other system includes. xml2
stuff is still there.

I wonder if gcc is unhappy because xml2-config pulls
in /usr/include/libxml2 and marks that as non system standard path.

Fabio




More information about the Cluster-devel mailing list