Bug#733310: libgluegen2-build-java: missing architectures support in glibc-compat-symbols.h

2013-12-28 Thread Aurelien Jarno
Package: libgluegen2-build-java
Version: 2.1.3-1
Severity: serious
Tags: upstream patch
Justification: makes other packages FTBFS

libgluegen2-build-java provides a mechanism in glibc-compat-symbols.h
to lower memcpy symbols version. This doesn't take care of at least
ia64 and s390x among the official Debian architectures, but at least
arm64, ppc64, sh4, sparc64, and x32 are also affected among unofficial
architectures. This causes other packages to FTBFS, see for example:
https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=ia64ver=2.1.3-1stamp=1387422174
https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=s390xver=2.1.3-1stamp=1388229627

As this mechanism doesn't really make sense in a distribution context
(the dependencies are handled by the package manager), I would suggest
to simply disable it. This is the purpose of the patch below:

--- gluegen2-2.1.3.orig/make/stub_includes/platform/glibc-compat-symbols.h
+++ gluegen2-2.1.3/make/stub_includes/platform/glibc-compat-symbols.h
@@ -15,7 +15,9 @@
  *
  * Check build-in macro definitions via 'gcc -dM -E -  /dev/null'
  */
-#if defined(__linux__) /* Actually we like to test whether we link against 
GLIBC .. */
+
+/* This feature doesn't make sense in a distribution context. Disable it. */
+#if 0  defined(__linux__) /* Actually we like to test whether we link 
against GLIBC .. */
 #if defined(__GNUC__) || defined(__clang__)
 #if defined(__arm__)
#define GLIBC_COMPAT_SYMBOL(FFF) asm(.symver  #FFF , #FFF 
@GLIBC_2.4);
@@ -29,7 +31,7 @@
 #define GLIBC_COMPAT_SYMBOL(FFF)
 #endif
 #else
-#warning GLIBC_COMPAT_SYMBOL not supported with target OS
+/*#warning GLIBC_COMPAT_SYMBOL not supported with target OS */
 #define GLIBC_COMPAT_SYMBOL(FFF)
 #endif

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: s390x

Kernel: Linux 3.2.0-4-s390x (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

__
This is the maintainer address of Debian's Java team
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers. 
Please use
debian-j...@lists.debian.org for discussions and questions.


Bug#733310: libgluegen2-build-java: missing architectures support in glibc-compat-symbols.h

2013-12-28 Thread Kurt Roeckx
On Sat, Dec 28, 2013 at 01:11:20PM +0100, Aurelien Jarno wrote:
 Package: libgluegen2-build-java
 Version: 2.1.3-1
 Severity: serious
 Tags: upstream patch
 Justification: makes other packages FTBFS
 
 libgluegen2-build-java provides a mechanism in glibc-compat-symbols.h
 to lower memcpy symbols version. This doesn't take care of at least
 ia64 and s390x among the official Debian architectures, but at least
 arm64, ppc64, sh4, sparc64, and x32 are also affected among unofficial
 architectures. This causes other packages to FTBFS, see for example:
 https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=ia64ver=2.1.3-1stamp=1387422174
 https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=s390xver=2.1.3-1stamp=1388229627
 
 As this mechanism doesn't really make sense in a distribution context
 (the dependencies are handled by the package manager), I would suggest
 to simply disable it. This is the purpose of the patch below:

I have the feeling that the patch is there so that they get the
old behavior from memcpy() and that the newer version (2.14) goes
over the buffer in a different direction and breaks something.

Instead of trying to get the old version of memcpy() again they
should instead fix their code and for instance use memmove()
instead of memcpy().

PS: Staticly linking should not be preferred.


Kurt

__
This is the maintainer address of Debian's Java team
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers. 
Please use
debian-j...@lists.debian.org for discussions and questions.


Bug#733310: libgluegen2-build-java: missing architectures support in glibc-compat-symbols.h

2013-12-28 Thread Aurelien Jarno
On Sat, Dec 28, 2013 at 03:50:03PM +0100, Kurt Roeckx wrote:
 On Sat, Dec 28, 2013 at 01:11:20PM +0100, Aurelien Jarno wrote:
  Package: libgluegen2-build-java
  Version: 2.1.3-1
  Severity: serious
  Tags: upstream patch
  Justification: makes other packages FTBFS
  
  libgluegen2-build-java provides a mechanism in glibc-compat-symbols.h
  to lower memcpy symbols version. This doesn't take care of at least
  ia64 and s390x among the official Debian architectures, but at least
  arm64, ppc64, sh4, sparc64, and x32 are also affected among unofficial
  architectures. This causes other packages to FTBFS, see for example:
  https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=ia64ver=2.1.3-1stamp=1387422174
  https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=s390xver=2.1.3-1stamp=1388229627
  
  As this mechanism doesn't really make sense in a distribution context
  (the dependencies are handled by the package manager), I would suggest
  to simply disable it. This is the purpose of the patch below:
 
 I have the feeling that the patch is there so that they get the
 old behavior from memcpy() and that the newer version (2.14) goes
 over the buffer in a different direction and breaks something.

I really doubt so, as in that case it will be done for x86 only.

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net

__
This is the maintainer address of Debian's Java team
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers. 
Please use
debian-j...@lists.debian.org for discussions and questions.


Bug#733310: libgluegen2-build-java: missing architectures support in glibc-compat-symbols.h

2013-12-28 Thread Aurelien Jarno
On Sat, Dec 28, 2013 at 04:08:21PM +0100, Aurelien Jarno wrote:
 On Sat, Dec 28, 2013 at 03:50:03PM +0100, Kurt Roeckx wrote:
  On Sat, Dec 28, 2013 at 01:11:20PM +0100, Aurelien Jarno wrote:
   Package: libgluegen2-build-java
   Version: 2.1.3-1
   Severity: serious
   Tags: upstream patch
   Justification: makes other packages FTBFS
   
   libgluegen2-build-java provides a mechanism in glibc-compat-symbols.h
   to lower memcpy symbols version. This doesn't take care of at least
   ia64 and s390x among the official Debian architectures, but at least
   arm64, ppc64, sh4, sparc64, and x32 are also affected among unofficial
   architectures. This causes other packages to FTBFS, see for example:
   https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=ia64ver=2.1.3-1stamp=1387422174
   https://buildd.debian.org/status/fetch.php?pkg=libjogl2-javaarch=s390xver=2.1.3-1stamp=1388229627
   
   As this mechanism doesn't really make sense in a distribution context
   (the dependencies are handled by the package manager), I would suggest
   to simply disable it. This is the purpose of the patch below:
  
  I have the feeling that the patch is there so that they get the
  old behavior from memcpy() and that the newer version (2.14) goes
  over the buffer in a different direction and breaks something.
 
 I really doubt so, as in that case it will be done for x86 only.

The upstream commit seems to show that the goal is to have the binaries
executable on an LSB 4.0 system:

http://jogamp.org/git/?p=gluegen.git;a=commit;h=04606a7afa8aa06b975bf6fca84517bb311e613b

That said, as there are some concerns, here is another patch which
disable that only for unknown architectures.

--- gluegen2-2.1.3.orig/make/stub_includes/platform/glibc-compat-symbols.h
+++ gluegen2-2.1.3/make/stub_includes/platform/glibc-compat-symbols.h
@@ -22,7 +22,8 @@
 #elif defined(__amd64__)
#define GLIBC_COMPAT_SYMBOL(FFF) asm(.symver  #FFF , #FFF 
@GLIBC_2.2.5);
 #else
-   #define GLIBC_COMPAT_SYMBOL(FFF) asm(.symver  #FFF , #FFF 
@GLIBC_2.0);
+   /* Don't try to guess a wrong version */
+   #define GLIBC_COMPAT_SYMBOL(FFF)
 #endif /*__amd64__*/
 #else
 #warning GLIBC_COMPAT_SYMBOL not supported with current compiler on 
GNU/Linux

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net

__
This is the maintainer address of Debian's Java team
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-maintainers. 
Please use
debian-j...@lists.debian.org for discussions and questions.