On 07/02/2013 08:01 AM, Daniel P. Berrange wrote:
On Tue, Jul 02, 2013 at 07:49:50AM -0600, Eric Blake wrote:
> On 07/02/2013 03:43 AM, Daniel P. Berrange wrote:
>> On Mon, Jul 01, 2013 at 02:10:29PM -0600, Eric Blake wrote:
>>> rpmbuild of mingw-libvirt.spec failed with:
>>>
>>> GEN libvirt.syms
>>> GEN libvirt_qemu.def
>>> cat: libvirt_access.syms: No such file or directory
>>> cat: libvirt_access_qemu.syms: No such file or directory
>>> cat: libvirt_access_lxc.syms: No such file or directory
>>>
Oh, is it a race condition in generating the .def file. The
libvirt_access*.sym files are all auto-generated files. The
.def file is also auto-generated, and there is no dep from
the .def file onto the libvirt_acces*sym files to control
execution order.
The problem is not the def file, but the libvirt.syms file. But the
Makefile dependency is:
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
$(top_builddir)/config.status
which includes libvirt_access.syms, yet a verbose make shows that the
failure is:
...
printf 'global:\n\n' >>libvirt.syms-tmp && \
cat ../../src/libvirt_private.syms libvirt_access.syms
libvirt_access_qemu.syms libvirt_access_lxc.syms
../../src/libvirt_esx.syms ../../src/libvirt_vmx.syms
../../src/libvirt_libssh2.syms >>libvirt.syms-tmp && \
printf '\n\nlocal:\n*;\n\n};' >>libvirt.syms-tmp && \
chmod a-w libvirt.syms-tmp && \
mv libvirt.syms-tmp libvirt.syms
cat: libvirt_access.syms: No such file or directory
cat: libvirt_access_qemu.syms: No such file or directory
cat: libvirt_access_lxc.syms: No such file or directory
so it may be a VPATH problem. In fact, looking at that line, look at
how libvirt_access.syms is listed locally, while
../../src/libvirt_esx.syms is listed in another directory. I'm still
playing with it...
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org