Source: debmake-doc Version: 1.11-1 Severity: serious Tags: ftbfs debmake-doc randomly fails to build from source when performing a parallel build (difficult to trigger). The issue lies in test case debhello-3.0. Its Makefile says:
| all: data/hello.desktop po/ja.mo | | data/hello.desktop po/ja.mo: | $(MAKE) -C po all My build log has this: | make[1]: Entering directory '/<<PKGBUILDDIR>>/debhello-3.0-pkg1/test/debhello-3.0' | | make -C po all | | make -C po all | | make[2]: Entering directory '/<<PKGBUILDDIR>>/debhello-3.0-pkg1/test/debhello-3.0/po' So making all in debhello-3.0 causes two $(MAKE) -C po all to be spawned simultaneously. Now the po Makefile runs xgettext to update debhello.pot. Running two xgettext at the same time on the same output file causes bad things to happen and the later msgmerge calls notice that: | msgmerge -U ja.po debhello.pot | | msgmerge -U ja.po debhello.pot | | debhello.pot:37: duplicate message definition... | | debhello.pot:23: ...this is the location of the first definition | | debhello.pot:42: duplicate message definition... | | debhello.pot:28: ...this is the location of the first definition | | msgmerge: found 2 fatal errors | | make[2]: *** [Makefile:10: ja.po] Error 1 | | make[2]: Leaving directory '/<<PKGBUILDDIR>>/debhello-3.0-pkg1/test/debhello-3.0/po' | | make[1]: *** [Makefile:6: data/hello.desktop] Error 2 | | make[1]: *** Waiting for unfinished jobs.... | | debhello.pot:37: duplicate message definition... | | debhello.pot:23: ...this is the location of the first definition | | debhello.pot:42: duplicate message definition... | | debhello.pot:28: ...this is the location of the first definition | | msgmerge: found 2 fatal errors | | make[2]: *** [Makefile:10: ja.po] Error 1 | | make[2]: Leaving directory '/<<PKGBUILDDIR>>/debhello-3.0-pkg1/test/debhello-3.0/po' Helmut