patches/gcc/4.3.2/120-java-nomulti.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sat Jan 04 01:02:57 2014 +0100 (2014-01-04)
changeset 3271 c65dc9b98841
parent 747 d3e603e7c17c
permissions -rw-r--r--
cc/gcc: diable libsanitizer without NPTL

gcc-4.8 comes with a new library to sanitise memory access:
- heap-, stack-, and global-buffer overflow, use-after-free
- data-races between threads

This library requires some _np parts of the API, which are not
implemented in the (old) LinuxThreads, which is still available
in uClibc.

Since NPTL requires a i486 or above, i386 are stuck with using LT,
which precludes building the libsanitizer.

Disable libsanitizer, a bit like libatomic is.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Niels Penneman <niels@penneman.org>
     1 Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/03_all_gcc43-java-nomulti.patch
     2 diff -durN gcc-4.3.1.orig/libjava/configure gcc-4.3.1/libjava/configure
     3 --- gcc-4.3.1.orig/libjava/configure	2008-06-06 16:49:11.000000000 +0200
     4 +++ gcc-4.3.1/libjava/configure	2008-06-10 14:57:38.000000000 +0200
     5 @@ -1018,6 +1018,8 @@
     6    --enable-gconf-peer     compile GConf native peers for util.preferences
     7    --enable-java-maintainer-mode
     8                            allow rebuilding of .class and .h files
     9 +  --enable-libjava-multilib
    10 +                          build libjava as multilib
    11    --disable-dependency-tracking  speeds up one-time build
    12    --enable-dependency-tracking   do not reject slow dependency extractors
    13    --enable-maintainer-mode  enable make rules and dependencies not useful
    14 @@ -1850,6 +1852,16 @@
    15  fi
    16  
    17  
    18 +# Check whether --enable-libjava-multilib was given.
    19 +if test "${enable_libjava_multilib+set}" = set; then
    20 +  enableval=$enable_libjava_multilib;
    21 +fi
    22 +
    23 +if test "$enable_libjava_multilib" = no; then
    24 +  multilib=no
    25 +  ac_configure_args="$ac_configure_args --disable-multilib"
    26 +fi
    27 +
    28  # It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
    29  
    30  
    31 diff -durN gcc-4.3.1.orig/libjava/configure.ac gcc-4.3.1/libjava/configure.ac
    32 --- gcc-4.3.1.orig/libjava/configure.ac	2007-12-22 16:48:46.000000000 +0100
    33 +++ gcc-4.3.1/libjava/configure.ac	2008-06-10 14:57:38.000000000 +0200
    34 @@ -82,6 +82,13 @@
    35  	[allow rebuilding of .class and .h files]))
    36  AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
    37  
    38 +AC_ARG_ENABLE(libjava-multilib,
    39 +	AS_HELP_STRING([--enable-libjava-multilib], [build libjava as multilib]))
    40 +if test "$enable_libjava_multilib" = no; then
    41 +  multilib=no
    42 +  ac_configure_args="$ac_configure_args --disable-multilib"
    43 +fi
    44 +
    45  # It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
    46  GCC_NO_EXECUTABLES
    47