Package: perl Version: 5.14.2-1 Severity: normal Tags: patch User: debian-h...@lists.debian.org Usertags: hurd
Hi, at the moment, perl is compiled on GNU/Hurd without large file support. This, other than the lacking of support for files > 2 GB, causes the failure in the t/op/stat.t test. The failure in stat.t happens because of the following: when filtering devices in /dev/* using grep {} with -b/-c, stat fails for large devices such as /dev/hdX blocks, or /dev/zero chars (this latter case should be an Hurd-specific issue, but shouldn't matter for this case), hence the counts done with grep {} and the ones done filtering the output of `ls' don't match. The attached patch enables the LFS using the same way used on linux.sh; about t/op/lfs.t, it gets skipped at the "kernel/fs not configured to use large files?" check, although it correctly detects sparse files and (at least by looking at the disk usage) allocates the 5GB (or so) file created with system() in that test. The patch has been tested with perl 5.14 (experimental), as I guess it will replace perl 5.12 sometime soon (no?). Thanks, -- Pino
--- a/hints/gnu.sh +++ b/hints/gnu.sh @@ -33,6 +33,19 @@ # Debian bug #258618 ccflags="-D_GNU_SOURCE $ccflags" +cat > UU/uselargefiles.cbu <<'EOCBU' +# This script UU/uselargefiles.cbu will get 'called-back' by Configure +# after it has prompted the user for whether to use large files. +case "$uselargefiles" in +''|$define|true|[yY]*) +# Keep this in the left margin. +ccflags_uselargefiles="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" + + ccflags="$ccflags $ccflags_uselargefiles" + ;; +esac +EOCBU + # The following routines are only available as stubs in GNU libc. # XXX remove this once metaconf detects the GNU libc stubs. d_msgctl='undef'