[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