patches/gcc/4.4.6/290-freebsd.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Mon Jul 23 22:02:23 2012 +0200 (2012-07-23)
changeset 3012 95173b196a88
parent 2149 98b7806295cc
permissions -rw-r--r--
scripts+samples: fix listings the samples

Since we use defconfigs to save the samples, listing all the
samples can no longer be done by passing all the sample names
at one to the script; we need to pass them one-by-one after
we expand the sample's defconfig ibnto a complete .config.

Reported-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
     1 diff -durN gcc-4.4.5.orig/gcc/config/freebsd-spec.h gcc-4.4.5/gcc/config/freebsd-spec.h
     2 --- gcc-4.4.5.orig/gcc/config/freebsd-spec.h	2010-10-09 23:09:53.000000000 +0200
     3 +++ gcc-4.4.5/gcc/config/freebsd-spec.h	2010-10-09 23:10:02.000000000 +0200
     4 @@ -86,9 +86,10 @@
     5  #define FBSD_STARTFILE_SPEC \
     6    "%{!shared: \
     7       %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} \
     8 -		       %{!p:%{profile:gcrt1.o%s} \
     9 -			 %{!profile:crt1.o%s}}}} \
    10 -   crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}"
    11 +	%{!p:%{profile:gcrt1.o%s} \
    12 +	 %{!profile:crt1.o%s}}}} \
    13 +   crti.o%s \
    14 +   %{static:crtbeginT.o%s;shared:crtbeginS.o%s;:crtbegin.o%s}"
    15  
    16  /* Provide a ENDFILE_SPEC appropriate for FreeBSD.  Here we tack on
    17     the magical crtend.o file (see crtstuff.c) which provides part of 
    18 @@ -126,7 +127,8 @@
    19      %{pg:  -lc_p}							\
    20    }"
    21  #else
    22 -#if FBSD_MAJOR < 5
    23 +#include <sys/param.h>
    24 +#if __FreeBSD_version < 500016
    25  #define FBSD_LIB_SPEC "							\
    26    %{!shared:								\
    27      %{!pg:								\
    28 @@ -136,17 +138,34 @@
    29        %{!pthread:-lc_p}							\
    30        %{pthread:-lc_r_p}}						\
    31    }"
    32 -#else
    33 +#elif __FreeBSD_version < 700022
    34  #define FBSD_LIB_SPEC "							\
    35    %{!shared:								\
    36      %{!pg: %{pthread:-lpthread} -lc}					\
    37      %{pg:  %{pthread:-lpthread_p} -lc_p}				\
    38    }"
    39 +#else
    40 +#define FBSD_LIB_SPEC "							\
    41 +  %{!shared:								\
    42 +    %{!pg: %{pthread:-lpthread} -lc}					\
    43 +    %{pg:  %{pthread:-lpthread_p} -lc_p}}				\
    44 +  %{shared:								\
    45 +    %{pthread:-lpthread} -lc}						\
    46 +  "
    47  #endif
    48  #endif
    49  
    50 -#if FBSD_MAJOR < 6
    51 +#if FBSD_MAJOR < 5
    52  #define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1"
    53  #else
    54  #define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1"
    55  #endif
    56 +
    57 +#if defined(HAVE_LD_EH_FRAME_HDR)
    58 +#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
    59 +#endif
    60 +
    61 +/* Use --as-needed -lgcc_s for eh support.  */
    62 +#ifdef HAVE_LD_AS_NEEDED
    63 +#define USE_LD_AS_NEEDED 1
    64 +#endif