** Description changed: + [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).
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1117944 Title: intltool confused by separate build-dir To manage notifications about this bug go to: https://bugs.launchpad.net/intltool/+bug/1117944/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
