Package: src:wordpress Version: 4.6.1+dfsg-1 Severity: serious Tags: patch Dear maintainer:
I tried to build this package in stretch with "dpkg-buildpackage -A" (which is what the "Arch: all" autobuilder would do to build it) but it failed: -------------------------------------------------------------------------------- [...] debian/rules build-indep dh build-indep --with linktree dh_testdir -i dh_update_autotools_config -i dh_auto_configure -i debian/rules override_dh_auto_build make[1]: Entering directory '/<<BUILDDIR>>/wordpress-4.6.1+dfsg' for i in $(find debian/languages/ -name *.po); do \ msgfmt $i -o ${i%%.po}.mo; \ done debian/languages/gl_ES.po:50: 'msgid' and 'msgstr' entries do not both end with '\n' debian/languages/gl_ES.po:689: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 3 fatal errors debian/languages/pt_BR.po:4774: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 2 fatal errors debian/languages/admin-de_DE.po:3105: 'msgid' and 'msgstr' entries do not both end with '\n' debian/languages/admin-de_DE.po:3421: 'msgid' and 'msgstr' entries do not both end with '\n' msgfmt: found 2 fatal errors debian/languages/ar.po:258: 'msgid' and 'msgstr' entries do not both end with '\n' debian/languages/ar.po:990: 'msgid' and 'msgstr[3]' entries do not both end with '\n' debian/languages/ar.po:4091: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 4 fatal errors debian/languages/de_DE.po:628: 'msgid' and 'msgstr' entries do not both end with '\n' debian/languages/de_DE.po:3812: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 2 fatal errors debian/languages/he_IL.po:3791: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 2 fatal errors debian/languages/admin-gl_ES.po:375: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 2 fatal errors debian/languages/twentyfourteen/sq.po:231: end-of-line within string debian/languages/twentyfourteen/sq.po:230: missing 'msgstr' section debian/languages/twentyfourteen/sq.po:231:5: syntax error debian/languages/twentyfourteen/sq.po:232: end-of-line within string msgfmt: found 4 fatal errors debian/languages/sk_SK.po:507: 'msgid' and 'msgstr' entries do not both begin with '\n' msgfmt: found 2 fatal errors debian/rules:16: recipe for target 'override_dh_auto_build' failed make[1]: *** [override_dh_auto_build] Error 1 make[1]: Leaving directory '/<<BUILDDIR>>/wordpress-4.6.1+dfsg' debian/rules:13: recipe for target 'build-indep' failed make: *** [build-indep] Error 2 dpkg-buildpackage: error: debian/rules build-indep gave error exit status 2 -------------------------------------------------------------------------------- The "override_dh_auto_build" target has a "find" command which creates a list of po files to be processed. There is not a canonical order for the output of "find", it depends on filesystem ordering and it may be anything. As a result, sometimes the last po file to be processed will be ok, and the build as a whole will be successful, and sometimes the last po file to be processed will have an error, and the build as a whole will fail. This is really a violation of Policy 4.6, "Error trapping in makefiles". Quote: Every time you put more than one shell command (this includes using a loop) in a makefile command you must make sure that errors are trapped. For simple compound commands, such as changing directory and then running a program, using && rather than semicolon as a command separator is sufficient. For more complex commands including most loops and conditionals you should include a separate set -e command at the start of every makefile command that's actually one of these miniature shell scripts. The (trivial) patch below will probably fix the Policy violation, but you will also need to fix the broken po files, otherwise we will just switch from a package which FTBFS randomly to a package which always FTBFS. While we are at it: Even if this package is Arch:all, please consider uploading it in source-only form so that we get official build logs here: https://buildd.debian.org/status/package.php?p=wordpress Thanks. --- a/debian/rules +++ b/debian/rules @@ -13,7 +13,7 @@ WP_CONTENT = debian/wordpress/var/lib/wordpress/wp-content dh $@ --with linktree override_dh_auto_build: - for i in $$(find debian/languages/ -name *.po); do \ + set -e; for i in $$(find debian/languages/ -name *.po); do \ msgfmt $$i -o $${i%%.po}.mo; \ done pod2man --utf8 --center wp-setup debian/wp-setup debian/wp-setup.1