Package: gcj-4.1 Version: 4.1.1-20 Severity: important Tags: patch Hi,
gcj-4.1 currently FTBFS on hurd-i386. Here are patches: - libjava-hurdfix.dpatch, to be put in debian/patches/ - gcj-4.1.diff, which enables java for hurd-i386 and the above patch. Samuel -- System Information: Debian Release: 4.0 APT prefers testing APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 'experimental') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.19 Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15) Versions of packages gcj-4.1 depends on: ii gcc-4.1 4.1.1-21 The GNU C compiler ii gcj-4.1-base 4.1.1-20 The GNU Compiler Collection (gcj b ii gij-4.1 4.1.1-20 The GNU Java bytecode interpreter ii java-common 0.25 Base of all Java packages ii libc6 2.3.6.ds1-8 GNU C Library: Shared libraries ii libc6-dev 2.3.6.ds1-8 GNU C Library: Development Librari ii libgcc1 1:4.2-20060709-1 GCC support library ii libgcj7-0 4.1.1-20 Java runtime library for use with ii libgcj7-dev 4.1.1-20 Java development headers and stati ii libgcj7-jar 4.1.1-20 Java runtime library for use with ii zlib1g 1:1.2.3-13 compression library - runtime Versions of packages gcj-4.1 recommends: ii fastjar 1:4.1.1-21 Jar creation utility -- no debconf information
#! /bin/sh -e # Description: java support for GNU/Hurd # Author: Robert Millan, Petr Salinger, Samuel Thibault dir= if [ $# -eq 3 -a "$2" = '-d' ]; then pdir="-d $3" dir="$3/" elif [ $# -ne 1 ]; then echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" exit 1 fi case "$1" in -patch) patch $pdir -f --no-backup-if-mismatch -p1 < $0 #cd ${dir}gcc && autoconf ;; -unpatch) patch $pdir -f --no-backup-if-mismatch -R -p1 < $0 #rm ${dir}gcc/configure ;; *) echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" exit 1 esac exit 0 --- gcc-4.1.1/libjava/java/io/natFilePosix.cc.orig 2003-09-12 03:08:18.000000000 +0200 +++ gcc-4.1.1/libjava/java/io/natFilePosix.cc 2007-01-25 23:23:42.000000000 +0100 @@ -25,6 +25,7 @@ #endif #include <string.h> #include <utime.h> +#include <limits.h> #include <gcj/cni.h> #include <jvm.h> @@ -379,6 +380,10 @@ void java::io::File::init_native () { +#ifdef MAXPATHLEN maxPathLen = MAXPATHLEN; +#else + maxPathLen = INT_MAX; +#endif caseSensitive = true; } --- gcc-4.1.1/libjava/java/net/natVMInetAddressPosix.cc.orig 2007-01-26 15:27:19.000000000 +0000 +++ gcc-4.1.1/libjava/java/net/natVMInetAddressPosix.cc 2007-01-26 15:45:53.000000000 +0000 @@ -47,10 +47,25 @@ { char *chars; #ifdef HAVE_GETHOSTNAME +#ifdef MAXHOSTNAMELEN char buffer[MAXHOSTNAMELEN]; if (gethostname (buffer, MAXHOSTNAMELEN)) return NULL; chars = buffer; +#else + size_t size = 256; + while (1) { + char buffer[size]; + if (!gethostname (buffer, size-1)) + { + buffer[size-1] = 0; + return JvNewStringUTF (buffer); + } + else if (errno != ENAMETOOLONG) + return NULL; + size *= 2; + } +#endif #elif HAVE_UNAME struct utsname stuff; if (uname (&stuff) != 0) diff -ur gcj-4.1.1/libjava/configure gcj-4.1.1/libjava/configure --- gcj-4.1.1/libjava/configure 2006-05-12 13:35:06.000000000 +0200 +++ gcj-4.1.1/libjava/configure 2006-05-12 11:00:31.000000000 +0200 @@ -4351,7 +4341,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no diff -ur gcj-4.1.1/libjava/libltdl/acinclude.m4 gcj-4.1.1/libjava/libltdl/acinclude.m4 --- gcj-4.1.1/libjava/libltdl/acinclude.m4 2006-05-12 13:35:07.000000000 +0200 +++ gcj-4.1.1/libjava/libltdl/acinclude.m4 2006-05-12 11:07:03.000000000 +0200 @@ -1413,7 +1413,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no diff -ur gcj-4.1.1/libjava/libltdl/configure gcj-4.1.1/libjava/libltdl/configure --- gcj-4.1.1/libjava/libltdl/configure 2006-05-12 13:35:21.000000000 +0200 +++ gcj-4.1.1/libjava/libltdl/configure 2006-05-12 11:07:15.000000000 +0200 @@ -8380,7 +8380,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no @@ -12021,7 +12021,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no @@ -15097,7 +15097,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no @@ -17380,7 +17380,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no diff -ur gcj-4.1.1/libjava/shlibpath.m4 gcj-4.1.1/libjava/shlibpath.m4 --- gcj-4.1.1/libjava/shlibpath.m4 2006-01-07 19:14:24.000000000 +0100 +++ gcj-4.1.1/libjava/shlibpath.m4 2006-05-12 08:36:28.000000000 +0200 @@ -361,7 +361,7 @@ ;; # This must be Linux ELF. -linux*) +linux*|gnu*) version_type=linux need_lib_prefix=no need_version=no diff -ur gcj-4.1.1/libjava/configure.host gcj-4.1.1/libjava/configure.host --- gcj-4.1.1/libjava/configure.host 2006-09-07 01:00:37.000000000 +0200 +++ gcj-4.1.1/libjava/configure.host 2006-09-07 01:00:37.000000000 +0200 @@ -326,7 +326,7 @@ esac case "${host}" in - *linux*) + *linux*|*gnu*) use_libgcj_bc=yes ;; *)
--- gcj-4.1-4.1.1-orig/debian/rules.defs 2007-01-28 03:44:56.000000000 +0000 +++ gcj-4.1-4.1.1/debian/rules.defs 2007-01-28 13:17:24.000000000 +0000 @@ -289,7 +289,7 @@ endif java_no_cpus := #mips mipsel -java_no_systems := hurd-i386 knetbsd-gnu netbsdelf-gnu +java_no_systems := knetbsd-gnu netbsdelf-gnu gcj_native_archs = alpha amd64 i386 ia64 mips mipsel powerpc s390 sparc ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(java_no_cpus))) @@ -298,10 +298,6 @@ ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(java_no_systems))) with_java := disabled for $(DEB_TARGET_GNU_SYSTEM) endif -ifeq ($(DEB_TARGET_ARCH),hurd-i386) - java_no_systems += hurd-i386 - with_java := disabled for architecure $(DEB_TARGET_ARCH_CPU) -endif ifdef DEB_CROSS with_java := disabled for cross compiler package endif @@ -330,7 +326,7 @@ ifeq ($(with_java),yes) with_java_alsa := yes with_java_plugin := yes - ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu)) + ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu gnu)) with_java_alsa := no with_java_plugin := no endif --- gcj-4.1-4.1.1-orig/debian/rules.patch 2007-01-28 03:44:56.000000000 +0000 +++ gcj-4.1-4.1.1/debian/rules.patch 2007-01-28 13:59:35.000000000 +0000 @@ -178,6 +178,9 @@ ifeq ($(DEB_TARGET_ARCH_OS),netbsd) debian_patches += # netbsd-all-gcc netbsd-archs-gcc endif +ifeq ($(DEB_TARGET_ARCH_OS),hurd) + debian_patches += libjava-hurdfix +endif ifdef DEB_CROSS debian_patches += cross-include cross-fixes