On 20.10.2014 12:48, Stefan Bader wrote:
On 19.10.2014 17:07, intrigeri wrote:
> Hi Stefan,
>
> Stefan Bader wrote (19 Oct 2014 11:07:40 GMT) :
>> Yeah, I actually did but it felt a bit hackish but then I am told anything looks
>> a bit hackish when it involves autoconf. These are again against upstream
>> libvirt mostly because the last touch timestamps always clash otherwise.
>
> Cool, I've tested this. I've imported these two patches in Debian's
> 1.2.9-3 quilt series, made the build system use dh-autoreconf (the
> build system in the tarball wants aclocal 1.13, while Debian sid has
> 1.14), and added a build-dep on libapparmor-dev to get the needed
> pkg-config file.
>
> Attempting to build the resulting source package in a clean sid chroot
> fails here:
>
> Making all in examples/apparmor
> make[3]: Entering directory
'/tmp/buildd/libvirt-1.2.9/debian/build/examples/apparmor'
> make[3]: Circular ../../config.h <- ../../config.h dependency dropped.
> ./profile-preprocess ../../../../examples/apparmor/libvirt-qemu.in
>libvirt-qemu
> ./profile-preprocess ../../../../examples/apparmor/libvirt-lxc.in >libvirt-lxc
> ./profile-preprocess
../../../../examples/apparmor/usr.lib.libvirt.virt-aa-helper.in
>usr.lib.libvirt.virt-aa-helper
> ./profile-preprocess ../../../../examples/apparmor/usr.sbin.libvirtd.in
>usr.sbin.libvirtd
> make[3]: *** No rule to make target 'local-usr.sbin.libvirtd', needed by
'all-am'. Stop.
> make[3]: *** Waiting for unfinished jobs....
> /bin/bash: ./profile-preprocess: No such file or directory
> /bin/bash: ./profile-preprocess: No such file or directory
> Makefile:2068: recipe for target 'libvirt-qemu' failed
> make[3]: *** [libvirt-qemu] Error 127
> Makefile:2068: recipe for target 'libvirt-lxc' failed
> make[3]: *** [libvirt-lxc] Error 127
> /bin/bash: ./profile-preprocess: No such file or directory
> /bin/bash: ./profile-preprocess: No such file or directory
> Makefile:2068: recipe for target 'usr.lib.libvirt.virt-aa-helper' failed
> make[3]: *** [usr.lib.libvirt.virt-aa-helper] Error 127
> Makefile:2068: recipe for target 'usr.sbin.libvirtd' failed
> make[3]: *** [usr.sbin.libvirtd] Error 127
> make[3]: Leaving directory
'/tmp/buildd/libvirt-1.2.9/debian/build/examples/apparmor'
> Makefile:1979: recipe for target 'all-recursive' failed
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory '/tmp/buildd/libvirt-1.2.9/debian/build'
> Makefile:1877: recipe for target 'all' failed
> make[1]: *** [all] Error 2
> make[1]: Leaving directory '/tmp/buildd/libvirt-1.2.9/debian/build'
> dh_auto_build: make -j5 returned exit code 2
> debian/rules:126: recipe for target 'build' failed
> make: *** [build] Error 2
>
> Any hint?
Hm, partially this sounds like the preprocess script is not where it should be
and the other part looks like not finding any local-usr-sbin. Could likely be
that I need to do something better to make things work in place (as the upstream
libvirt instructions suggest) as well as with separate object tree (as it is in
Debian). I also saw something about circular dependency on config.h which
probably slipped my attention. For most of the problems I guess adding something
like $(srcdir) (need to look what this would be actually called) to the
pre-process scripts path as well as to the .in files..
Turns out that this first attempt was not too good at all. First it does not
help to mis-name the new local .in file. Then, using the wildcard form actually
causes many more files to be touched than intended (the circular reference
hinted that). Lastly I found it might be good to also do something about cleanup.
Hope this version works better in general.
-Stefan