[Bug 1117944] Re: intltool confused by separate build-dir
Vlad Orlov
1117944 at bugs.launchpad.net
Tue Jan 23 18:12:15 UTC 2018
Thanks :)
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1117944
Title:
intltool confused by separate build-dir
Status in intltool:
Confirmed
Status in intltool package in Ubuntu:
Fix Committed
Status in intltool source package in Xenial:
New
Status in intltool source package in Artful:
New
Bug description:
[Impact]
An old bug in intltool breaks out-of-tree builds, including "make
distcheck", in a lot of intltool-using projects when automake version
is 1.15 or newer.
The fix for this issue (by Aleksander Morgado) is provided in the
debdiffs attached to the report.
It's a long-standing bug which is present in all current Ubuntu releases,
starting from Xenial. Would be really nice to get it finally fixed. The developers have to patch their intltool locally just to have a working distcheck target (which is used when making release tarballs).
[Test Case]
Try making release tarball for some upstream package. For example, it
can be mate-desktop, a base project for various MATE components.
$ sudo apt-get build-dep mate-desktop
$ git clone https://github.com/mate-desktop/mate-desktop
$ cd mate-desktop
$ ./autogen.sh --enable-gtk-doc --enable-deprecated --disable-strict
$ make -j5 && make dist -j5 && make distcheck -j5
This will build the project, make release tarball and check it by
unpacking it into a new directory and building (again) in it. The last
step will fail:
-----------------------------------
srcdir=../../../po /usr/bin/intltool-update -m
The following files contain translations and are currently not in use. Please
consider adding these to the POTFILES.in file, located in the po/ directory.
sub/mate-about/mate-about.desktop.in
sub/tools/mate-color-select.desktop.in
If some of these files are left out on purpose then please add them to
POTFILES.skip instead of POTFILES.in. A file 'missing' containing this list
of left out files has been written in the current directory.
Please report to https://github.com/mate-desktop/mate-desktop/
if [ -r missing -o -r notexist ]; then \
exit 1; \
fi
Makefile:179: recipe for target 'check' failed
-----------------------------------
The out-of-tree build breaks here.
[Regression Potential]
None. This is a fix for a broken feature, it doesn't affects other ones.
Also the fix had been tested by MATE developers in various distros, including Debian, Ubuntu and Fedora.
[Original Description]
systemd uses 'intltool-update -m' from intltoolize in its 'make check'.
$(top_srcdir)/po/POTFILES.skip contains the name of a generated file (src/core/org.freedesktop.systemd1.policy.in), which will be generated as $(top_builddir)/src/core/org.freedesktop.systemd1.policy.in. If $(builddir)==$(srcdir) than everything works fine. When they are different, there's no way to instruct intltool-update to skip the file. Since the name of the build directory is not known and can be arbitrary, there should be a way to instruct intltool-update to ignore files relative to the $(top_builddir), or something like that. One option would be to turn the file list into a list of globs (**/src/core/org.freedesktop.systemd1.policy.in would work perfectly in our case).
To manage notifications about this bug go to:
https://bugs.launchpad.net/intltool/+bug/1117944/+subscriptions
More information about the Ubuntu-sponsors
mailing list