[llvm-commits] [llvm-gcc-4.2] r63427 - in /llvm-gcc-4.2/trunk: README.LLVM gcc/config/i386/t-linux64 gcc/config/rs6000/t-linux64
Bill Wendling
isanbard at gmail.com
Fri Jan 30 14:00:12 PST 2009
Hi Anton,
Could you throw LLVM LOCAL tags around the t-linux64 file changes? :-)
-bw
On Fri, Jan 30, 2009 at 1:50 PM, Anton Korobeynikov <asl at math.spbu.ru> wrote:
> Author: asl
> Date: Fri Jan 30 15:50:25 2009
> New Revision: 63427
>
> URL: http://llvm.org/viewvc/llvm-project?rev=63427&view=rev
> Log:
> Make selection of library dir layout automatically during configure
> (afair, patch provided by Andrew Pinski).
>
> Drop the chunk from the documentation about manual layout selection.
>
> Modified:
> llvm-gcc-4.2/trunk/README.LLVM
> llvm-gcc-4.2/trunk/gcc/config/i386/t-linux64
> llvm-gcc-4.2/trunk/gcc/config/rs6000/t-linux64
>
> Modified: llvm-gcc-4.2/trunk/README.LLVM
> URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/README.LLVM?rev=63427&r1=63426&r2=63427&view=diff
>
> ==============================================================================
> --- llvm-gcc-4.2/trunk/README.LLVM (original)
> +++ llvm-gcc-4.2/trunk/README.LLVM Fri Jan 30 15:50:25 2009
> @@ -57,41 +57,6 @@
> //===-----------------------
> X86-64/AMD-64/EM64-T for any OS other than Darwin/Mac OS X:
>
> -If you want to build multilib-enabled llvm-gcc (so, it will be able to generate
> -32 and 64 bit executables) you need to consider your system default lib directory
> -layout.
> -
> -Usually, your system uses one of these layouts:
> -
> -I. /usr/lib => 32 bit libraries (also in /usr/lib32)
> - /usr/lib64 => 64 bit libraries
> -
> -You're lucky and don't need to do anything, just proceed to usual configure
> -steps.
> -
> -II. /usr/lib => 64 bit libraries (also in /usr/lib64)
> - /usr/lib32 => 32 bit libraries
> -
> -You need to apply the following patch:
> -
> -<==cut==>
> ---- gcc/config/i386/t-linux64
> -+++ gcc/config/i386/t-linux64
> -@@ -6,7 +6,7 @@ SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \
> -
> - MULTILIB_OPTIONS = m64/m32
> - MULTILIB_DIRNAMES = 64 32
> --MULTILIB_OSDIRNAMES = ../lib64 ../lib
> -+MULTILIB_OSDIRNAMES = ../lib64 ../lib32
> -
> - LIBGCC = stmp-multilib
> - INSTALL_LIBGCC = install-multilib
> -<==cut==>
> -
> -Note, that usually you don't notice such patching with your native gcc, since
> -it's done automatically by your favourite system package manager. Maybe we'll
> -add some layout detection routine in the future.
> -
> If you want just pure 64 bit compiler, configure with --disable-multilib.
>
> //===-----------------------
>
> Modified: llvm-gcc-4.2/trunk/gcc/config/i386/t-linux64
> URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/i386/t-linux64?rev=63427&r1=63426&r2=63427&view=diff
>
> ==============================================================================
> --- llvm-gcc-4.2/trunk/gcc/config/i386/t-linux64 (original)
> +++ llvm-gcc-4.2/trunk/gcc/config/i386/t-linux64 Fri Jan 30 15:50:25 2009
> @@ -4,9 +4,16 @@
> SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \
> $(srcdir)/config/i386/libgcc-x86_64-glibc.ver
>
> +# On Debian, Ubuntu and other derivitive distributions, the 32bit libraries
> +# are found in /lib32 and /usr/lib32, /lib64 and /usr/lib64 are symlinks to
> +# /lib and /usr/lib, while other distributions install libraries into /lib64
> +# and /usr/lib64. The LSB does not enforce the use of /lib64 and /usr/lib64,
> +# it doesn't tell anything about the 32bit libraries on those systems. Set
> +# MULTILIB_OSDIRNAMES according to what is found on the target.
> +
> MULTILIB_OPTIONS = m64/m32
> MULTILIB_DIRNAMES = 64 32
> -MULTILIB_OSDIRNAMES = ../lib64 ../lib
> +MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
>
> LIBGCC = stmp-multilib
> INSTALL_LIBGCC = install-multilib
>
> Modified: llvm-gcc-4.2/trunk/gcc/config/rs6000/t-linux64
> URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/rs6000/t-linux64?rev=63427&r1=63426&r2=63427&view=diff
>
> ==============================================================================
> --- llvm-gcc-4.2/trunk/gcc/config/rs6000/t-linux64 (original)
> +++ llvm-gcc-4.2/trunk/gcc/config/rs6000/t-linux64 Fri Jan 30 15:50:25 2009
> @@ -7,12 +7,19 @@
>
> TARGET_LIBGCC2_CFLAGS += -mno-minimal-toc
>
> +# On Debian, Ubuntu and other derivitive distributions, the 32bit libraries
> +# are found in /lib32 and /usr/lib32, /lib64 and /usr/lib64 are symlinks to
> +# /lib and /usr/lib, while other distributions install libraries into /lib64
> +# and /usr/lib64. The LSB does not enforce the use of /lib64 and /usr/lib64,
> +# it doesn't tell anything about the 32bit libraries on those systems. Set
> +# MULTILIB_OSDIRNAMES according to what is found on the target.
> +
> MULTILIB_OPTIONS = m64/m32 msoft-float
> MULTILIB_DIRNAMES = 64 32 nof
> MULTILIB_EXTRA_OPTS = fPIC mstrict-align
> MULTILIB_EXCEPTIONS = m64/msoft-float
> MULTILIB_EXCLUSIONS = m64/!m32/msoft-float
> -MULTILIB_OSDIRNAMES = ../lib64 ../lib nof
> +MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
> MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT)
>
> softfp_wrap_start := '\#ifndef __powerpc64__'
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
More information about the llvm-commits
mailing list