[crossposted to debian-{devel,[EMAIL PROTECTED];
 Mail-Followup-To: [EMAIL PROTECTED] ]

Summary: around 400 *-perl packages have a debian/rules bug that
makes them FTBFS with perl 5.10, currently in experimental.

Until recently, the most common build system in Perl CPAN modules,
ExtUtils::MakeMaker, had a long-standing bug that created an empty
/usr/lib/perl5 or /usr/share/perl5 directory when 'make install' was
run.

As shipping empty directories in Debian packages is considered untidy,
dh-make-perl debian/rules templates have included the following line
since at least 2004:

        rmdir --ignore-fail-on-non-empty --parents $(TMP)/usr/lib/perl5

This is fine as long as the directory exists. However, it makes
the whole build fail when the directory doesn't exist, ie. when the
ExtUtils::MakeMaker (or ExtUtils::Install, to be precise) bug is fixed.

This is now the case with Perl 5.10.0, currently in experimental. The
error has crept in hundreds of packages, and they are all going to start
to FTBFS when 5.10 enters unstable.

The suggested fix is simple: use a conditional like

        [ ! -d $(TMP)/usr/lib/perl5 ] || rmdir --ignore-fail-on-non-empty 
--parents --verbose $(TMP)/usr/lib/perl5

which is what the current dh-make-perl templates recommend.

Bug #465783 discusses whether the ExtUtils::Install behaviour should be
reverted for Lenny or not, but these are definitely bugs in any case.

I ran a few greps on debian/rules of the source packages of all the
binary packages matching '-perl' in unstable as of Feb 14th. Results: 398
arch:all and 38 arch:any packages apparently do an unconditional rmdir
for the empty directory. I have tried my best to avoid false positives,
but I'd be delighted if there's a mistake here.

It would be nice to verify these results with a real mass rebuild with
Perl 5.10 from experimental. I'll work on that, but there are going to
be a few bootstrapping problems, so I'm attaching the dd-list now based
on the grep results.

Out of the 436 packages I found, 196 are maintained by the pkg-perl group.
These are already listed on the pkg-perl website [1]. I'm attaching the
dd-list output for the remaining 240 packages. Note that the bugs for the
(relatively few) arch:any packages are filed already, because those are
somewhat of a special case (they will be uninstallable without a rebuild
due to their perlapi-5.8.x dependencies).

I propose a mass bug filing at severity:important and an appropriate
usertag (user:[EMAIL PROTECTED]) when the bugs have been
verified with a real rebuild. Depending on the outcome of #465783, these
may become 'serious' when Perl 5.10 enters unstable, but it's possible
that there will be an NMU campaign even before that.

A lintian check would probably be handy too, I'll see if I can come up
with a patch.

[1] http://pkg-perl.alioth.debian.org/perl5.10-FTBFS.txt

Cheers,
-- 
Niko Tyni   [EMAIL PROTECTED]
Krzysztof Krzyzaniak (eloy) <[EMAIL PROTECTED]>
   libcatalyst-model-cdbi-perl (U)
   libcatalyst-plugin-session-fastmmap-perl (U)
   libcatalyst-view-tt-perl (U)
   libclass-c3-componentised-perl (U)
   libclass-dbi-fromform-perl (U)
   libemail-valid-loose-perl
   libfile-copy-recursive-perl (U)
   libfile-modified-perl (U)
   libhttp-body-perl (U)
   libhttp-request-ascgi-perl (U)
   liburi-query-perl (U)

Michael Ablassmeier <[EMAIL PROTECTED]>
   libaudio-scrobbler-perl
   libmp4-info-perl

Pierre-Matthieu Alamy <[EMAIL PROTECTED]>
   libcrypt-des-ede3-perl
   libdata-buffer-perl

Russ Allbery <[EMAIL PROTECTED]>
   libpgp-sign-perl

Nacho Barrientos Arias <[EMAIL PROTECTED]>
   libtest-cmd-perl

Don Armstrong <[EMAIL PROTECTED]>
   libhtml-calendarmonth-perl
   libhtml-element-extended-perl
   libpoe-component-client-ident-perl

Jack Bates <[EMAIL PROTECTED]>
   libnet-dbus-perl

Romain Beauxis <[EMAIL PROTECTED]>
   libfuse-perl

Ian Beckwith <[EMAIL PROTECTED]>
   libmp3-tag-perl
   libwww-opensearch-perl

Hilko Bengen <[EMAIL PROTECTED]>
   liblwpx-paranoidagent-perl
   libmail-milter-perl

Bastian Blank <[EMAIL PROTECTED]>
   libalgorithm-annotate-perl
   libclone-perl
   libdata-hierarchy-perl
   libextutils-autoinstall-perl
   libfile-temp-perl
   libfile-type-perl
   libio-digest-perl
   liblocale-maketext-simple-perl
   libperlio-eol-perl
   libperlio-via-dynamic-perl
   libperlio-via-symlink-perl
   libregexp-shellish-perl
   libsvn-mirror-perl
   libsvn-simple-perl
   libvcp-perl

Gonéri Le Bouder <[EMAIL PROTECTED]>
   libthread-pool-simple-perl

Michael Bramer <[EMAIL PROTECTED]>
   liblinux-inotify2-perl

Marc 'HE' Brockschmidt <[EMAIL PROTECTED]>
   libexporter-tidy-perl
   libextutils-pkgconfig-perl
   libgtk2-ex-podviewer-perl
   libx11-freedesktop-desktopentry-perl

James Bromberger <[EMAIL PROTECTED]>
   libmodule-depends-perl
   libwww-indexparser-perl

Itamar Almeida de Carvalho <[EMAIL PROTECTED]>
   libxml-dt-perl

Francesco Cecconi <[EMAIL PROTECTED]>
   libconfig-general-perl
   libemail-find-perl
   libhtml-fromtext-perl

Tzafrir Cohen <[EMAIL PROTECTED]>
   libasterisk-agi-perl (U)

Marco d'Itri <[EMAIL PROTECTED]>
   libberkeleydb-perl
   libnet-whois-ripe-perl

Debian Catalyst Maintainers <[EMAIL PROTECTED]>
   libcatalyst-model-cdbi-perl
   libcatalyst-plugin-session-fastmmap-perl
   libcatalyst-view-tt-perl
   libclass-c3-componentised-perl
   libclass-dbi-fromform-perl
   libfile-copy-recursive-perl
   libfile-modified-perl
   libhttp-body-perl
   libhttp-request-ascgi-perl
   liburi-query-perl

Debian VoIP Team <[EMAIL PROTECTED]>
   libasterisk-agi-perl

Sebastien Delafond <[EMAIL PROTECTED]>
   libnet-socks-perl

Ludovic Drolez <[EMAIL PROTECTED]>
   libfile-rsyncp-perl

Florian Ernst <[EMAIL PROTECTED]>
   libhtml-tableextract-perl

Laurent Fousse <[EMAIL PROTECTED]>
   libmath-bigint-gmp-perl

Hendrik Frenzel <[EMAIL PROTECTED]>
   libapache2-authenntlm-perl

Gerfried Fuchs <[EMAIL PROTECTED]>
   libdbix-abstract-perl

David Moreno Garza <[EMAIL PROTECTED]>
   libperl6-say-perl
   libxml-treepp-perl

Jonas Genannt <[EMAIL PROTECTED]>
   libcrypt-hcesha-perl
   libfile-flat-perl
   libfile-homedir-perl
   libjavascript-rpc-perl
   libparams-util-perl
   libpod-tests-perl
   libprefork-perl
   libtest-classapi-perl
   libtest-inline-perl

Arne Goetje <[EMAIL PROTECTED]>
   libsnmp-multi-perl

Stephen Gran <[EMAIL PROTECTED]>
   libdate-convert-perl

Debian QA Group <[EMAIL PROTECTED]>
   libcvs-perl
   libdb-file-lock-perl

Christoph Haas <[EMAIL PROTECTED]>
   libtime-format-perl
   libweather-com-perl

Dominic Hargreaves <[EMAIL PROTECTED]>
   libcache-perl
   libchart-strip-perl
   libclass-virtual-perl
   libconfig-tiny-perl
   libcrypt-dh-perl
   libdbix-fulltextsearch-perl
   libfile-nfslock-perl
   libgeo-coordinates-utm-perl
   libgeo-helmerttransform-perl
   libgeo-postcode-perl
   libgeography-nationalgrid-perl
   libgraphviz-perl
   liblingua-pt-stemmer-perl
   liblingua-stem-perl
   liblingua-stem-snowball-da-perl
   libmail-field-received-perl
   libnet-openid-consumer-perl
   libnet-openid-server-perl
   liboxford-calendar-perl
   libplucene-perl
   libquantum-entanglement-perl
   libsnowball-norwegian-perl
   libsnowball-swedish-perl
   libtemplate-plugin-gd-perl
   libtemplate-plugin-xml-perl
   libtest-html-content-perl
   libtext-german-perl
   libtext-unidecode-perl
   liburi-find-delimited-perl
   liburi-find-perl
   libvcs-lite-perl
   libwiki-toolkit-formatter-usemod-perl
   libwiki-toolkit-perl
   libwiki-toolkit-plugin-categoriser-perl
   libwiki-toolkit-plugin-diff-perl
   libwiki-toolkit-plugin-locator-grid-perl
   libwiki-toolkit-plugin-ping-perl

Benjamin Mako Hill <[EMAIL PROTECTED]>
   libwww-mediawiki-client-perl

Florian Hinzmann <[EMAIL PROTECTED]>
   libnet-dns-perl

Ivan Kohler <[EMAIL PROTECTED]>
   libauthen-passphrase-perl
   libbusiness-onlinepayment-openecho-perl
   libbusiness-onlinepayment-perl
   libbusiness-onlinepayment-transactioncentral-perl
   libclass-data-inheritable-perl
   libcolor-scheme-perl
   libcrypt-ecb-perl
   libdata-entropy-perl
   libdata-faker-perl
   libdata-float-perl
   libfax-hylafax-client-perl
   libjson-perl
   libmodule-runtime-perl
   libnet-server-mail-perl
   libpod-simple-wiki-perl
   libxsloader-perl

Kilian Krause <[EMAIL PROTECTED]>
   libasterisk-agi-perl (U)

Eugene Krivdyuk <[EMAIL PROTECTED]>
   liblogfile-rotate-perl

Joshua Kwan <[EMAIL PROTECTED]>
   libmail-mboxparser-perl

John Lightsey <[EMAIL PROTECTED]>
   libparallel-forkmanager-perl
   libyaml-tiny-perl

Bart Martens <[EMAIL PROTECTED]>
   libclass-dbi-sqlite-perl
   libgetopt-declare-perl
   libnet-ipv6addr-perl

Christoph Martin <[EMAIL PROTECTED]>
   libfile-readbackwards-perl

Roland Mas <[EMAIL PROTECTED]>
   libparse-mediawikidump-perl

Rene Mayorga <[EMAIL PROTECTED]>
   libasterisk-agi-perl (U)

Alejandro Garrido Mota <[EMAIL PROTECTED]>
   libcss-perl
   libpod-webserver-perl
   libui-dialog-perl

Al Nikolov <[EMAIL PROTECTED]>
   libdbix-class-htmlwidget-perl

Jose Parrella <[EMAIL PROTECTED]>
   libbiblio-isis-perl
   libdebian-package-html-perl

Tim Peeler <[EMAIL PROTECTED]>
   liblwp-authen-wsse-perl

Víctor Pérez Pereira <[EMAIL PROTECTED]>
   libapache-asp-perl
   libterm-prompt-perl
   libtest-reporter-perl

Dirk Proesdorf <[EMAIL PROTECTED]>
   libdevice-modem-perl

Stephen Quinney <[EMAIL PROTECTED]>
   libstring-format-perl

Florian Ragwitz <[EMAIL PROTECTED]>
   libauthen-pam-perl
   libcatalyst-plugin-session-fastmmap-perl (U)
   libclass-dbi-fromform-perl (U)
   libfcgi-perl
   libperldoc-search-perl
   libshell-posix-select-perl
   libswish-api-common-perl
   libsysadm-install-perl
   libxml-sax-expat-incremental-perl

Florian Ragwitz <[EMAIL PROTECTED]>
   libaudio-moosic-perl
   libcatalyst-plugin-formvalidator-perl
   libdevel-ptkdb-perl
   libgtk2-ex-volumebutton-perl
   liblwp-protocol-http-socketunix-perl
   libogg-vorbis-header-pureperl-perl
   libquantum-superpositions-perl

Florian Ragwitz <[EMAIL PROTECTED]>
   libarchive-ar-perl
   libaudio-file-perl
   libauthen-sasl-perl
   libcatalyst-model-cdbi-perl (U)
   libcatalyst-view-tt-perl (U)
   libclass-spiffy-perl
   libconvert-asn1-perl
   libcpan-mini-perl
   libcrypt-des-ede3-perl (U)
   libcss-tiny-perl
   libdata-buffer-perl (U)
   libdevel-cover-perl
   libdigest-bubblebabble-perl
   libfile-scan-perl
   libgssapi-perl
   libgtk2-ex-simple-list-perl
   libgtk2-gladexml-simple-perl
   libio-all-perl
   libio-socket-ssl-perl
   libkwiki-cache-perl
   libkwiki-perl
   libmath-gmp-perl
   libmodule-pluggable-fast-perl
   libnet-jabber-loudmouth-perl
   libnet-jabber-perl
   libnet-ldap-perl
   libnet-ssleay-perl
   libnet-xmpp-perl
   libpadwalker-perl
   libpetal-perl
   libpod-index-perl
   libppi-html-perl
   libppi-xs-perl
   libspiffy-perl
   libspoon-perl
   libspork-perl
   libtemplate-timer-perl
   libterm-visual-perl
   libtest-base-perl
   libtest-nowarnings-perl
   libtest-simple-perl
   libtest-tester-perl
   libtree-simple-visitorfactory-perl
   libxml-filter-xslt-perl
   libxml-libxslt-perl
   libxml-sax-writer-perl
   libyaml-perl

Petter Reinholdtsen <[EMAIL PROTECTED]>
   libimage-exiftool-perl (U)

Roland Rosenfeld <[EMAIL PROTECTED]>
   libfile-tail-perl

Timo Schneider <[EMAIL PROTECTED]>
   libaudio-flac-decoder-perl
   libcompress-bzip2-perl
   libdata-compare-perl
   libscalar-properties-perl

Amit Shah <[EMAIL PROTECTED]>
   libogg-vorbis-header-perl

Christian Sánchez <[EMAIL PROTECTED]>
   libhtml-table-perl
   libtangram-perl

Sandro Tosi <[EMAIL PROTECTED]>
   libcrypt-simple-perl

Deepak Tripathi <[EMAIL PROTECTED]>
   libtie-cache-perl

Matthias Urlichs <[EMAIL PROTECTED]>
   libarray-refelem-perl
   libdata-dumpxml-perl

Matej Vela <[EMAIL PROTECTED]>
   libhttp-daemon-ssl-perl
   libnet-ldap-server-perl

Jaldhar H. Vyas <[EMAIL PROTECTED]>
   libdatetime-calendar-discordian-perl

Lucas Wall <[EMAIL PROTECTED]>
   libcddb-get-perl

C. Chad Wallace <[EMAIL PROTECTED]>
   liblingua-en-namecase-perl

Mari Wang <[EMAIL PROTECTED]>
   libimage-exiftool-perl

Rene Weber <[EMAIL PROTECTED]>
   libimage-metadata-jpeg-perl

Florian Weimer <[EMAIL PROTECTED]>
   libwant-perl

Alexander Wirt <[EMAIL PROTECTED]>
   libdata-validate-domain-perl
   libmail-verify-perl

Alexander Zangerl <[EMAIL PROTECTED]>
   libtm-perl

Martin Zobel-Helas <[EMAIL PROTECTED]>
   libhash-merge-perl
   libmail-checkuser-perl
   libstruct-compare-perl

Bas Zoetekouw <[EMAIL PROTECTED]>
   libimdb-film-perl
   libsubtitles-perl

Attachment: signature.asc
Description: Digital signature

Reply via email to