[libvirt] [PATCH] build: fix cygwin build

Eric Blake eblake at redhat.com
Fri May 14 23:46:35 UTC 2010


On 05/14/2010 05:28 PM, Eric Blake wrote:
> On 05/14/2010 04:05 PM, Eric Blake wrote:
>> make[3]: *** No rule to make target `-lxml2', needed by `libvirt.la'.  Stop.
>>
>> Due to treating the wrong string as a dependency.
>>
>> * src/Makefile.am (libvirt_la_DEPENDENCIES): Depend only on
>> locally-built file, not on strings that might resolve as '-lxml2'.
> 
> Aargh.  This fixed incremental builds for cygwin, but broke fresh builds
> everywhere.  Followup patch coming soon, to unbreak the build.
> 
>>  libvirt_la_LIBADD += $(LIBXML_LIBS) \
>>                      $(LIBPCAP_LIBS) \
>>  		    $(DRIVER_MODULE_LIBS) \
>>  		    $(CYGWIN_EXTRA_LIBADD) ../gnulib/lib/libgnu.la
>>  libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) -DIN_LIBVIRT
>> -libvirt_la_DEPENDENCIES = $(libvirt_la_LIBADD) $(LIBVIRT_SYMBOL_FILE)
>> +libvirt_la_DEPENDENCIES = ../gnulib/lib/libgnu.la $(LIBVIRT_SYMBOL_FILE)
> 
> $(DRIVER_MODULE_LIBS) is important, after all.

No, it's not that.  Looking at the generated Makefile, it is that
automake gives you two choices: specify no dependencies, and automake
does everything for you:

libvirt_la_DEPENDENCIES = libvirt_util.la libvirt_conf.la \
	libvirt_cpu.la libvirt_driver.la $(am__append_4) \
	$(am__append_7) $(am__append_11) $(am__append_15) \
	$(am__append_18) $(am__append_21) $(am__append_24) \
	$(am__append_45) $(am__append_51) $(am__append_76) \
	libvirt_driver_security.la $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
	$(am__DEPENDENCIES_1) ../gnulib/lib/libgnu.la

Or specify dependencies, and lose all automatic tracking:

libvirt_la_DEPENDENCIES = ../gnulib/lib/libgnu.la $(LIBVIRT_SYMBOL_FILE)

I've asked on the automake list if there is a way to get what we want,
of all the automatic dependencies, plus one more that we specify for
$(LIBVIRT_SYMBOL_FILE):
http://thread.gmane.org/gmane.comp.sysutils.automake.general/11773

But until that is answered, I'm out of time for today, so I've just
reverted my cygwin-breaker patch until I come up with a complete
solution that works in fresh builds.

Sorry for the churn.

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20100514/fcc288f8/attachment-0001.sig>


More information about the libvir-list mailing list