From: "Anthony G. Basile" <blueness@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/hardened-dev:uclibc commit in: sys-devel/gcc/, sys-devel/gcc/files/4.4.0/, sys-devel/gcc/files/stubs/, ...
Date: Thu, 29 Dec 2011 15:24:01 +0000 (UTC) [thread overview]
Message-ID: <4413c7dfe13e9168daec30d1565b1c29122a957b.blueness@gentoo> (raw)
commit: 4413c7dfe13e9168daec30d1565b1c29122a957b
Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 29 15:23:54 2011 +0000
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Thu Dec 29 15:23:54 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/hardened-dev.git;a=commit;h=4413c7df
sys-devel/gcc: add ebuild for gcc-4.5.3
(Portage version: 2.1.10.41/git/Linux x86_64, signed Manifest commit with key 0xD0455535)
---
.../gcc/files/4.4.0/gcc-4.4.0-softfloat.patch | 89 --------
sys-devel/gcc/files/gcc-configure-LANG.patch | 64 ------
sys-devel/gcc/files/gcc-configure-texinfo.patch | 16 --
sys-devel/gcc/files/mkinfodir | 233 --------------------
sys-devel/gcc/files/pro-police-docs.patch | 74 ------
sys-devel/gcc/files/stubs/gcc-3.3-htb-stub.patch | 59 -----
sys-devel/gcc/files/stubs/gcc-3.3-ssp-stub.patch | 45 ----
sys-devel/gcc/files/stubs/gcc-3.4-htb-stub.patch | 32 ---
sys-devel/gcc/files/stubs/gcc-3.4-ssp-stub.patch | 44 ----
sys-devel/gcc/files/stubs/gcc-4.0-htb-stub.patch | 32 ---
sys-devel/gcc/files/stubs/gcc-4.0-ssp-stub.patch | 44 ----
sys-devel/gcc/gcc-4.5.3-r99.ebuild | 57 +++++
sys-devel/gcc/gcc-4.6.0.ebuild | 96 --------
sys-devel/gcc/metadata.xml | 8 +-
14 files changed, 58 insertions(+), 835 deletions(-)
diff --git a/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch b/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch
deleted file mode 100644
index bf8d718..0000000
--- a/sys-devel/gcc/files/4.4.0/gcc-4.4.0-softfloat.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-The hunk for gcc/config/arm/t-linux comes from:
-http://gcc.gnu.org/PR14352
-
-The rest is a custom job by Yuri Vasilevski.
-
-The idea here is that we add soft float support into the spec file
-so that we don't have to worry about packages stripping out softfloat
-flags from CFLAGS/CXXFLAGS.
-
-http://bugs.gentoo.org/75585
-
---- gcc-4.0.2/gcc/config/arm/elf.h
-+++ gcc-4.0.2/gcc/config/arm/elf.h
-@@ -45,8 +45,9 @@
- #endif
-
- #ifndef SUBTARGET_ASM_FLOAT_SPEC
--#define SUBTARGET_ASM_FLOAT_SPEC "\
--%{mapcs-float:-mfloat}"
-+#define SUBTARGET_ASM_FLOAT_SPEC "%{mapcs-float:-mfloat} \
-+ %{mhard-float:-mfpu=fpa} \
-+ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
- #endif
-
- #ifndef ASM_SPEC
-@@ -58,8 +59,6 @@
- %{mapcs-*:-mapcs-%*} \
- %(subtarget_asm_float_spec) \
- %{mthumb-interwork:-mthumb-interwork} \
--%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
--%{mfloat-abi=*} %{mfpu=*} \
- %(subtarget_extra_asm_spec)"
- #endif
-
---- gcc-4.0.2/gcc/config/arm/linux-elf.h
-+++ gcc-4.0.2/gcc/config/arm/linux-elf.h
-@@ -28,7 +28,7 @@
- #define TARGET_VERSION fputs (" (ARM GNU/Linux with ELF)", stderr);
-
- #undef TARGET_DEFAULT_FLOAT_ABI
--#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD
-+#define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT
-
- /* TARGET_BIG_ENDIAN_DEFAULT is set in
- config.gcc for big endian configurations. */
-@@ -44,6 +44,10 @@
-
- #undef TARGET_DEFAULT
- #define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT)
-+#undef SUBTARGET_EXTRA_ASM_SPEC
-+#define SUBTARGET_EXTRA_ASM_SPEC "%{mhard-float:-mfpu=fpa} \
-+ %{!mhard-float: %{msoft-float:-mfpu=softfpa;:-mfpu=softvfp}}"
-+
-
- #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6
-
-@@ -51,7 +55,7 @@
-
- #undef MULTILIB_DEFAULTS
- #define MULTILIB_DEFAULTS \
-- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
-+ { "marm", TARGET_ENDIAN_OPTION, "msoft-float", "mno-thumb-interwork" }
-
- /* Now we define the strings used to build the spec file. */
- #undef LIB_SPEC
-@@ -60,7 +64,7 @@
- %{shared:-lc} \
- %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
-
--#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
-+#define LIBGCC_SPEC "-lgcc"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
-
---- gcc-4.0.2/gcc/config/arm/t-linux
-+++ gcc-4.0.2/gcc/config/arm/t-linux
-@@ -3,8 +3,10 @@
- TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer -fPIC
-
- LIB1ASMSRC = arm/lib1funcs.asm
--LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
-- _arm_addsubdf3 _arm_addsubsf3
-+LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \
-+ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
-+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
-+ _fixsfsi _fixunssfsi _floatdidf _floatdisf
-
- # MULTILIB_OPTIONS = mhard-float/msoft-float
- # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/sys-devel/gcc/files/gcc-configure-LANG.patch b/sys-devel/gcc/files/gcc-configure-LANG.patch
deleted file mode 100644
index d1b1b03..0000000
--- a/sys-devel/gcc/files/gcc-configure-LANG.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in
-option parsing, it may break.
-
-http://bugs.gentoo.org/103483
-
---- configure
-+++ configure
-@@ -54,6 +54,19 @@
- infodir='${prefix}/info'
- mandir='${prefix}/man'
-
-+# NLS nuisances.
-+for as_var in \
-+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+ LC_TELEPHONE LC_TIME
-+do
-+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+ eval $as_var=C; export $as_var
-+ else
-+ unset $as_var
-+ fi
-+done
-+
- # Initialize some other variables.
- subdirs=
- MFLAGS= MAKEFLAGS=
-@@ -452,16 +463,6 @@
- esac
- done
-
--# NLS nuisances.
--# Only set these to C if already set. These must not be set unconditionally
--# because not all systems understand e.g. LANG=C (notably SCO).
--# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
--# Non-C LC_CTYPE values break the ctype check.
--if test "${LANG+set}" = set; then LANG=C; export LANG; fi
--if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
--if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
--if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
--
- # confdefs.h avoids OS command line length limits that DEFS can exceed.
- rm -rf conftest* confdefs.h
- # AIX cpp loses on an empty file, so make sure it contains at least a newline.
-@@ -1850,6 +1850,19 @@
- # Compiler output produced by configure, useful for debugging
- # configure, is in ./config.log if it exists.
-
-+# NLS nuisances.
-+for as_var in \
-+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+ LC_TELEPHONE LC_TIME
-+do
-+ if (set +x; test -z "`(eval \$as_var=C; export \$as_var) 2>&1`"); then
-+ eval \$as_var=C; export \$as_var
-+ else
-+ unset \$as_var
-+ fi
-+done
-+
- ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
- for ac_option
- do
diff --git a/sys-devel/gcc/files/gcc-configure-texinfo.patch b/sys-devel/gcc/files/gcc-configure-texinfo.patch
deleted file mode 100644
index ddc098d..0000000
--- a/sys-devel/gcc/files/gcc-configure-texinfo.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Chances are quite good that the installed makeinfo is sufficient.
-So ignore false positives where the makeinfo installed is so new
-that it violates the cheesy version grep.
-
-http://bugs.gentoo.org/198182
-
---- configure
-+++ configure
-@@ -3573,6 +3573,6 @@
- :
- else
-- MAKEINFO="$MISSING makeinfo"
-+ :
- fi
- ;;
-
diff --git a/sys-devel/gcc/files/mkinfodir b/sys-devel/gcc/files/mkinfodir
deleted file mode 100755
index a62840e..0000000
--- a/sys-devel/gcc/files/mkinfodir
+++ /dev/null
@@ -1,233 +0,0 @@
-#!/bin/bash
-# $Id: mkinfodir,v 1.1 2001/09/01 07:56:19 drobbins Exp $
-# Generate the top-level Info node, given a directory of Info files
-# and (optionally) a skeleton file. The output will be suitable for a
-# top-level dir file. The skeleton file contains info topic names in the
-# order they should appear in the output. There are three special
-# lines that alter the behavior: a line consisting of just "--" causes
-# the next line to be echoed verbatim to the output. A line
-# containing just "%%" causes all the remaining filenames (wildcards
-# allowed) in the rest of the file to be ignored. A line containing
-# just "!!" exits the script when reached (unless preceded by a line
-# containing just "--"). Once the script reaches the end of the
-# skeleton file, it goes through the remaining files in the directory
-# in order, putting their entries at the end. The script will use the
-# ENTRY information in each info file if it exists. Otherwise it will
-# make a minimal entry.
-
-# sent by Jeffrey Osier <jeffrey@cygnus.com>, who thinks it came from
-# zoo@winternet.com (david d `zoo' zuhn)
-
-# modified 7 April 1995 by Joe Harrington <jh@tecate.gsfc.nasa.gov> to
-# take special flags
-
-INFODIR=$1
-if [ $# = 2 ] ; then
- SKELETON=$2
-else
- SKELETON=/dev/null
-fi
-
-skip=
-
-if [ $# -gt 2 ] ; then
- echo usage: $0 info-directory [ skeleton-file ] 1>&2
- exit 1
-elif [ -z "${INFODIR}" ] ; then
- INFODIR="%%DEFAULT_INFO_DIR%%"
-else
- true
-fi
-
-if [ ! -d ${INFODIR} ] ; then
- echo "$0: first argument must specify a directory"
- exit 1
-fi
-
-### output the dir header
-echo "-*- Text -*-"
-echo "This file was generated automatically by $0."
-echo "This version was generated on `date`"
-echo "by `whoami`@`hostname` for `(cd ${INFODIR}; pwd)`"
-
-cat << moobler
-\$Id: mkinfodir,v 1.1 2001/09/01 07:56:19 drobbins Exp $
-This is the file .../info/dir, which contains the topmost node of the
-Info hierarchy. The first time you invoke Info you start off
-looking at that node, which is (dir)Top.
-\x1f
-File: dir Node: Top This is the top of the INFO tree
-
- This (the Directory node) gives a menu of major topics.
- Typing "q" exits, "?" lists all Info commands, "d" returns here,
- "h" gives a primer for first-timers,
- "mEmacs<Return>" visits the Emacs topic, etc.
-
- In Emacs, you can click mouse button 2 on a menu item or cross reference
- to select it.
-
-* Menu: The list of major topics begins on the next line.
-
-moobler
-
-### go through the list of files in the skeleton. If an info file
-### exists, grab the ENTRY information from it. If an entry exists
-### use it, otherwise create a minimal dir entry.
-###
-### Then remove that file from the list of existing files. If any
-### additional files remain (ones that don't have a skeleton entry),
-### then generate entries for those in the same way, putting the info for
-### those at the end....
-
-infofiles=`(cd ${INFODIR}; /bin/ls | grep -v '\-[0-9]*\.gz$' | grep -v '\-[0-9]*$' | egrep -v '^dir$|^dir\.info$|^dir\.orig$')`
-
-# echoing gets clobbered by backquotes; we do it the hard way...
-lines=`wc $SKELETON | awk '{print $1}'`
-line=1
-while [ $lines -ge $line ] ; do
- # Read one line from the file. This is so that we can echo lines with
- # whitespace and quoted characters in them.
- fileline=`awk NR==$line $SKELETON`
-
- # flag fancy features
- if [ ! -z "$echoline" ] ; then # echo line
- echo "$fileline"
- fileline=
- echoline=
- elif [ "${fileline}" = "--" ] ; then # should we echo the next line?
- echoline=1
- elif [ "${fileline}" = "%%" ] ; then # eliminate remaining files from dir?
- skip=1
- elif [ "${fileline}" = "!!" ] ; then # quit now
- exit 0
- fi
-
- # handle files if they exist
- for file in $fileline"" ; do # expand wildcards ("" handles blank lines)
-
- fname=
-
- if [ -z "$echoline" -a ! -z "$file" ] ; then
-
- # Find the file to operate upon. Check both possible names.
- infoname=`echo $file | sed 's/\.gz$//'`
- infoname=`echo $infoname | sed 's/\.info$//'`
- noext=
- ext=
- if [ -f ${INFODIR}/$infoname ] ; then
- noext=$infoname
- fi
- if [ -f ${INFODIR}/${infoname}.info ] ; then
- ext=${infoname}.info
- fi
- if [ -f ${INFODIR}/${infoname}.info.gz ] ; then
- ext=${infoname}.info.gz
- fi
- # If it exists with both names take what was said in the file.
- if [ ! -z "$ext" -a ! -z "$noext" ]; then
- fname=$file
- warn="### Warning: $ext and $noext both exist! Using ${file}. ###"
- elif [ ! \( -z "$ext" -a -z "$noext" \) ]; then
- # just take the name if it exists only once
- fname=${noext}${ext}
- fi
-
- # if we found something and aren't skipping, do the entry
- if [ ! -z "$fname" ] ; then
- if [ -z "$skip" ] ; then
-
- if [ ! -z "$warn" ] ; then # issue any warning
- echo $warn
- warn=
- fi
- if [ "${fname##*.}" = "gz" ] ; then
- entry=`zcat ${INFODIR}/${fname} | sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d' `
- else
- entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$fname`
- fi
- if [ ! -z "${entry}" ] ; then
- echo "${entry}"
- else
- echo "* ${infoname}: (${infoname})."
- fi
- fi
-
- # remove the name from the directory listing
- infofiles=`echo "" ${infofiles} "" | sed -e "s/ ${fname} / /" -e "s/ / /g"`
-
- fi
-
- fi
-
- done
-
- line=`expr $line + 1`
-done
-
-if [ -z "${infofiles}" ] ; then
- exit 0
-elif [ $lines -gt 0 ]; then
- echo
-fi
-
-# Sort remaining files by INFO-DIR-SECTION.
-prevsect=
-filesectdata=`(cd ${INFODIR}; fgrep INFO-DIR-SECTION /dev/null ${infofiles} | \
- fgrep -v 'INFO-DIR-SECTION Miscellaneous' | \
- sort -t: -k2 -k1 | tr ' ' '_')`
-for sectdata in ${filesectdata}; do
- file=`echo ${sectdata} | cut -d: -f1`
- section=`sed -n -e 's/^INFO-DIR-SECTION //p' ${INFODIR}/${file}`
- infofiles=`echo "" ${infofiles} "" | sed -e "s/ ${file} / /" -e "s/ / /g"`
-
- if [ "${prevsect}" != "${section}" ] ; then
- if [ ! -z "${prevsect}" ] ; then
- echo ""
- fi
- echo "${section}"
- prevsect="${section}"
- fi
- infoname=`echo $file | sed 's/\.gz$//'`
- infoname=`echo $infoname | sed 's/\.info$//'`
- if [ "${file##*.}" = "gz" ] ; then
- entry=`zcat ${INFODIR}/$file | sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d' `
- else
- entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$file`
- fi
- if [ ! -z "${entry}" ] ; then
- echo "${entry}"
- elif [ ! -d "${INFODIR}/${file}" ] ; then
- echo "* ${infoname}: (${infoname})."
- fi
-done
-
-# Process miscellaneous files.
-for file in ${infofiles}; do
- if [ ! -z "${prevsect}" ] ; then
- echo ""
- echo "Miscellaneous"
- prevsect=""
- fi
-
- infoname=`echo $file | sed 's/\.gz$//'`
- infoname=`echo $infoname | sed 's/\.info$//'`
- if [ "${file##*.}" = "gz" ] ; then
- entry=`zcat ${INFODIR}/${file} | sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d'`
- else
- entry=`sed -e '1,/START-INFO-DIR-ENTRY/d' \
- -e '/END-INFO-DIR-ENTRY/,$d' ${INFODIR}/$file`
- fi
-
-
- if [ ! -z "${entry}" ] ; then
- echo "${entry}"
- elif [ ! -d "${INFODIR}/${file}" ] ; then
- echo "* ${infoname}: (${infoname})."
- fi
-done
-
diff --git a/sys-devel/gcc/files/pro-police-docs.patch b/sys-devel/gcc/files/pro-police-docs.patch
deleted file mode 100644
index 091ea44..0000000
--- a/sys-devel/gcc/files/pro-police-docs.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-Index: gcc/doc/invoke.texi
-===================================================================
-RCS file: /cvsroot/gcc/gcc/gcc/doc/invoke.texi,v
-retrieving revision 1.364
-diff -c -3 -p -r1.364 invoke.texi
-*** gcc/doc/invoke.texi 21 Nov 2003 11:42:58 -0000 1.364
---- gcc/doc/invoke.texi 22 Nov 2003 08:12:35 -0000
-*************** in the following sections.
-*** 228,234 ****
- -Wno-multichar -Wnonnull -Wpacked -Wpadded @gol
- -Wparentheses -Wpointer-arith -Wredundant-decls @gol
- -Wreturn-type -Wsequence-point -Wshadow @gol
-! -Wsign-compare -Wstrict-aliasing @gol
- -Wswitch -Wswitch-default -Wswitch-enum @gol
- -Wsystem-headers -Wtrigraphs -Wundef -Wuninitialized @gol
- -Wunknown-pragmas -Wunreachable-code @gol
---- 228,234 ----
- -Wno-multichar -Wnonnull -Wpacked -Wpadded @gol
- -Wparentheses -Wpointer-arith -Wredundant-decls @gol
- -Wreturn-type -Wsequence-point -Wshadow @gol
-! -Wsign-compare -Wstack-protector -Wstrict-aliasing @gol
- -Wswitch -Wswitch-default -Wswitch-enum @gol
- -Wsystem-headers -Wtrigraphs -Wundef -Wuninitialized @gol
- -Wunknown-pragmas -Wunreachable-code @gol
-*************** in the following sections.
-*** 681,686 ****
---- 681,687 ----
- -fshort-double -fshort-wchar @gol
- -fverbose-asm -fpack-struct -fstack-check @gol
- -fstack-limit-register=@var{reg} -fstack-limit-symbol=@var{sym} @gol
-+ -fstack-protector -fstack-protector-all @gol
- -fargument-alias -fargument-noalias @gol
- -fargument-noalias-global -fleading-underscore @gol
- -ftls-model=@var{model} @gol
-*************** effectively. Often, the problem is that
-*** 3014,3019 ****
---- 3015,3024 ----
- complex; GCC will refuse to optimize programs when the optimization
- itself is likely to take inordinate amounts of time.
-
-+ @item -Wstack-protector
-+ @opindex Wstack-protector
-+ Warn when not issuing stack smashing protection for some reason
-+
- @item -Werror
- @opindex Werror
- Make all warnings into errors.
-*************** and grows downwards, you can use the fla
-*** 11474,11479 ****
---- 11479,11502 ----
- @option{-fstack-limit-symbol=__stack_limit} and
- @option{-Wl,--defsym,__stack_limit=0x7ffe0000} to enforce a stack limit
- of 128KB@. Note that this may only work with the GNU linker.
-+
-+ @item -fstack-protector
-+ @item -fstack-protector-all
-+ @opindex fstack-protector
-+ @opindex fstack-protector-all
-+ @opindex fno-stack-protector
-+ Generate code to protect an application from a stack smashing
-+ attack. The features are (1) the insertion of random value next to the
-+ frame pointer to detect the integrity of the stack, (2) the reordering
-+ of local variables to place buffers after pointers to avoid the
-+ corruption of pointers that could be used to further corrupt arbitrary
-+ memory locations, (3) the copying of pointers in function arguments to
-+ an area preceding local variable buffers to prevent the corruption of
-+ pointers that could be used to further corrupt arbitrary memory
-+ locations, and the (4) omission of instrumentation code from some
-+ functions to decrease the performance overhead. If the integrity
-+ would be broken, the program is aborted. If no-stack-protector is
-+ specified, instrumentation codes are generated at every functions.
-
- @cindex aliasing of parameters
- @cindex parameters, aliased
diff --git a/sys-devel/gcc/files/stubs/gcc-3.3-htb-stub.patch b/sys-devel/gcc/files/stubs/gcc-3.3-htb-stub.patch
deleted file mode 100644
index f6d8104..0000000
--- a/sys-devel/gcc/files/stubs/gcc-3.3-htb-stub.patch
+++ /dev/null
@@ -1,59 +0,0 @@
---- gcc-3.3.6/gcc/c-opts.c
-+++ gcc-3.3.6/gcc/c-opts.c
-@@ -193,6 +193,8 @@ static void sanitize_cpp_opts PARAMS ((v
- OPT("fall-virtual", CL_CXX, OPT_fall_virtual) \
- OPT("falt-external-templates",CL_CXX, OPT_falt_external_templates) \
- OPT("fasm", CL_ALL, OPT_fasm) \
-+ OPT("fbc-strings-only", CL_ALL, OPT_fbc_strings_only) \
-+ OPT("fbounds-checking", CL_ALL, OPT_fbounds_checking) \
- OPT("fbuiltin", CL_ALL, OPT_fbuiltin) \
- OPT("fbuiltin-", CL_ALL | CL_JOINED, OPT_fbuiltin_) \
- OPT("fcheck-new", CL_CXX, OPT_fcheck_new) \
-@@ -1037,6 +1039,11 @@ c_common_decode_option (argc, argv)
- flag_no_asm = !on;
- break;
-
-+ case OPT_fbounds_checking:
-+ case OPT_fbc_strings_only:
-+ warning ("htb stub: bounds checking is not supported");
-+ break;
-+
- case OPT_fbuiltin:
- flag_no_builtin = !on;
- break;
---- gcc-3.3.6/gcc/cp/lang-options.h
-+++ gcc-3.3.6/gcc/cp/lang-options.h
-@@ -32,6 +32,8 @@ DEFINE_LANG_NAME ("C++")
- { "-fno-alt-external-templates", "" },
- { "-fansi-overloading", "" },
- { "-fno-ansi-overloading", "" },
-+ { "-fbounds-checking", "" },
-+ { "-fno-bounds-checking", "" },
- { "-fcheck-new",
- N_("Check the return value of new") },
- { "-fno-check-new", "" },
-@@ -117,6 +119,9 @@ DEFINE_LANG_NAME ("C++")
- { "-fxref",
- N_("Emit cross referencing information") },
- { "-fno-xref", "" },
-+ { "-fbounds-checking",
-+ N_("Generate array and pointer bounds checking code") },
-+ { "-fno-bounds-checking", "" },
-
- { "-Wreturn-type",
- N_("Warn about inconsistent return types") },
---- gcc-3.3.6/gcc/toplev.c
-+++ gcc-3.3.6/gcc/toplev.c
-@@ -1249,6 +1267,12 @@ documented_lang_options[] =
- { "-fshort-wchar",
- N_("Override the underlying type for wchar_t to `unsigned short'") },
- { "-fno-short-wchar", "" },
-+ { "-fbounds-checking",
-+ N_("Generate array and pointer bounds checking code") },
-+ { "-fno-bounds-checking", "" },
-+ { "-fbc-strings-only",
-+ N_("Restrict bounds checking to strings only") },
-+ { "-fno-bc-strings-only", "" },
-
- { "-Wall",
- N_("Enable most warning messages") },
diff --git a/sys-devel/gcc/files/stubs/gcc-3.3-ssp-stub.patch b/sys-devel/gcc/files/stubs/gcc-3.3-ssp-stub.patch
deleted file mode 100644
index ed996e7..0000000
--- a/sys-devel/gcc/files/stubs/gcc-3.3-ssp-stub.patch
+++ /dev/null
@@ -1,45 +0,0 @@
---- gcc-3.3.6/gcc/toplev.c
-+++ gcc-3.3.6/gcc/toplev.c
-@@ -904,6 +904,10 @@ int align_functions_log;
- minimum function alignment. Zero means no alignment is forced. */
- int force_align_functions_log;
-
-+int flag_propolice_protection = 0;
-+int flag_stack_protection = 0;
-+int warn_stack_protector = 0;
-+
- /* Table of supported debugging formats. */
- static const struct
- {
-@@ -1188,6 +1197,10 @@ static const lang_independent_options f_
- N_("Trap for signed overflow in addition / subtraction / multiplication") },
- { "new-ra", &flag_new_regalloc, 1,
- N_("Use graph coloring register allocation.") },
-+ {"stack-protector", &flag_propolice_protection, 1,
-+ N_("Enables stack protection") },
-+ {"stack-protector-all", &flag_stack_protection, 1,
-+ N_("Enables stack protection of every function") } ,
- };
-
- /* Table of language-specific options. */
-@@ -1547,7 +1560,9 @@ static const lang_independent_options W_
- {"missing-noreturn", &warn_missing_noreturn, 1,
- N_("Warn about functions which might be candidates for attribute noreturn") },
- {"strict-aliasing", &warn_strict_aliasing, 1,
-- N_ ("Warn about code which might break the strict aliasing rules") }
-+ N_ ("Warn about code which might break the strict aliasing rules") },
-+ {"stack-protector", &warn_stack_protector, 1,
-+ N_("Warn when disabling stack protector for some reason")}
- };
-
- void
-@@ -5230,6 +5247,9 @@ process_options ()
- /* The presence of IEEE signaling NaNs, implies all math can trap. */
- if (flag_signaling_nans)
- flag_trapping_math = 1;
-+
-+ if (flag_stack_protection || flag_propolice_protection)
-+ warning ("ssp stub: stack protector is not supported");
- }
- \f
- /* Initialize the compiler back end. */
diff --git a/sys-devel/gcc/files/stubs/gcc-3.4-htb-stub.patch b/sys-devel/gcc/files/stubs/gcc-3.4-htb-stub.patch
deleted file mode 100644
index 2be61a2..0000000
--- a/sys-devel/gcc/files/stubs/gcc-3.4-htb-stub.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- gcc-3.4.4/gcc/c.opt
-+++ gcc-3.4.4/gcc/c.opt
-@@ -426,6 +426,14 @@ fasm
- C ObjC C++ ObjC++
- Recognize the \"asm\" keyword
-
-+fbounds-checking
-+C
-+Generate code to check bounds before indexing arrays
-+
-+fbc-strings-only
-+C
-+Restrict bounds checking to strings only
-+
- fbuiltin
- C ObjC C++ ObjC++
- Recognize built-in functions
---- gcc-3.4.4/gcc/c-opts.c
-+++ gcc-3.4.4/gcc/c-opts.c
-@@ -708,6 +708,12 @@ c_common_handle_option (size_t scode, co
- flag_no_asm = !value;
- break;
-
-+ case OPT_fbounds_checking:
-+ case OPT_fbc_strings_only:
-+ if (value)
-+ warning ("htb stub: bounds checking is not supported");
-+ break;
-+
- case OPT_fbuiltin:
- flag_no_builtin = !value;
- break;
diff --git a/sys-devel/gcc/files/stubs/gcc-3.4-ssp-stub.patch b/sys-devel/gcc/files/stubs/gcc-3.4-ssp-stub.patch
deleted file mode 100644
index 3f620f3..0000000
--- a/sys-devel/gcc/files/stubs/gcc-3.4-ssp-stub.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- gcc-3.4.3/gcc/common.opt
-+++ gcc-3.4.3/gcc/common.opt
-@@ -152,6 +152,10 @@ Wunused-variable
- Common
- Warn when a variable is unused
-
-+Wstack-protector
-+Common
-+Warn when not issuing stack smashing protection for some reason
-+
- aux-info
- Common Separate
- -aux-info <file> Emit declaration information into <file>
-@@ -743,6 +747,14 @@ fzero-initialized-in-bss
- Common
- Put zero initialized data in the bss section
-
-+fstack-protector
-+Common
-+Enables stack protection
-+
-+fstack-protector-all
-+Common
-+Enables stack protection of every function
-+
- g
- Common JoinedOrMissing
- Generate debug information in default format
---- gcc-3.4.3/gcc/opts.c
-+++ gcc-3.4.3/gcc/opts.c
-@@ -804,6 +807,13 @@ common_handle_option (size_t scode, cons
- warn_unused_variable = value;
- break;
-
-+ case OPT_fstack_protector:
-+ case OPT_fstack_protector_all:
-+ case OPT_Wstack_protector:
-+ if (value)
-+ warning ("ssp stub: stack protector is not supported");
-+ break;
-+
- case OPT_aux_info:
- case OPT_aux_info_:
- aux_info_file_name = arg;
diff --git a/sys-devel/gcc/files/stubs/gcc-4.0-htb-stub.patch b/sys-devel/gcc/files/stubs/gcc-4.0-htb-stub.patch
deleted file mode 100644
index 4a515c5..0000000
--- a/sys-devel/gcc/files/stubs/gcc-4.0-htb-stub.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- gcc-4.0.0/gcc/c.opt
-+++ gcc-4.0.0/gcc/c.opt
-@@ -457,6 +457,14 @@ fasm
- C ObjC C++ ObjC++
- Recognize the \"asm\" keyword
-
-+fbounds-checking
-+C
-+Generate code to check bounds before indexing arrays
-+
-+fbc-strings-only
-+C
-+Restrict bounds checking to strings only
-+
- fbuiltin
- C ObjC C++ ObjC++
- Recognize built-in functions
---- gcc-4.0.0/gcc/c-opts.c
-+++ gcc-4.0.0/gcc/c-opts.c
-@@ -548,6 +549,12 @@ c_common_handle_option (size_t scode, co
- flag_no_asm = !value;
- break;
-
-+ case OPT_fbc_strings_only:
-+ case OPT_fbounds_checking:
-+ if (value)
-+ warning ("htb stub: bounds checking is not supported");
-+ break;
-+
- case OPT_fbuiltin:
- flag_no_builtin = !value;
- break;
diff --git a/sys-devel/gcc/files/stubs/gcc-4.0-ssp-stub.patch b/sys-devel/gcc/files/stubs/gcc-4.0-ssp-stub.patch
deleted file mode 100644
index 3f620f3..0000000
--- a/sys-devel/gcc/files/stubs/gcc-4.0-ssp-stub.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- gcc-3.4.3/gcc/common.opt
-+++ gcc-3.4.3/gcc/common.opt
-@@ -152,6 +152,10 @@ Wunused-variable
- Common
- Warn when a variable is unused
-
-+Wstack-protector
-+Common
-+Warn when not issuing stack smashing protection for some reason
-+
- aux-info
- Common Separate
- -aux-info <file> Emit declaration information into <file>
-@@ -743,6 +747,14 @@ fzero-initialized-in-bss
- Common
- Put zero initialized data in the bss section
-
-+fstack-protector
-+Common
-+Enables stack protection
-+
-+fstack-protector-all
-+Common
-+Enables stack protection of every function
-+
- g
- Common JoinedOrMissing
- Generate debug information in default format
---- gcc-3.4.3/gcc/opts.c
-+++ gcc-3.4.3/gcc/opts.c
-@@ -804,6 +807,13 @@ common_handle_option (size_t scode, cons
- warn_unused_variable = value;
- break;
-
-+ case OPT_fstack_protector:
-+ case OPT_fstack_protector_all:
-+ case OPT_Wstack_protector:
-+ if (value)
-+ warning ("ssp stub: stack protector is not supported");
-+ break;
-+
- case OPT_aux_info:
- case OPT_aux_info_:
- aux_info_file_name = arg;
diff --git a/sys-devel/gcc/gcc-4.5.3-r99.ebuild b/sys-devel/gcc/gcc-4.5.3-r99.ebuild
new file mode 100644
index 0000000..47b5648
--- /dev/null
+++ b/sys-devel/gcc/gcc-4.5.3-r99.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.5.3-r1.ebuild,v 1.9 2011/11/09 19:22:57 vapier Exp $
+
+PATCH_VER="1.0"
+UCLIBC_VER="1.0"
+
+# Hardened gcc 4 stuff
+PIE_VER="0.4.5"
+SPECS_VER="0.2.0"
+SPECS_GCC_VER="4.4.3"
+# arch/libc configurations known to be stable with {PIE,SSP}-by-default
+PIE_GLIBC_STABLE="x86 amd64 ppc ppc64 arm ia64"
+PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
+SSP_STABLE="amd64 x86 ppc ppc64 arm"
+# uclibc need tls and nptl support for SSP support
+SSP_UCLIBC_STABLE=""
+#end Hardened stuff
+
+inherit toolchain
+
+DESCRIPTION="The GNU Compiler Collection"
+
+LICENSE="GPL-3 LGPL-3 || ( GPL-3 libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.2"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ elibc_glibc? ( >=sys-libs/glibc-2.8 )
+ amd64? ( multilib? ( gcj? ( app-emulation/emul-linux-x86-xlibs ) ) )
+ ppc? ( >=${CATEGORY}/binutils-2.17 )
+ ppc64? ( >=${CATEGORY}/binutils-2.17 )
+ >=${CATEGORY}/binutils-2.15.94"
+if [[ ${CATEGORY} != cross-* ]] ; then
+ PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
+fi
+
+src_unpack() {
+ toolchain_src_unpack
+
+ use vanilla && return 0
+
+ sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
+
+ [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
+}
+
+pkg_setup() {
+ toolchain_pkg_setup
+
+ if use lto ; then
+ ewarn
+ ewarn "LTO support is still experimental and unstable."
+ ewarn "Any bugs resulting from the use of LTO will not be fixed."
+ ewarn
+ fi
+}
diff --git a/sys-devel/gcc/gcc-4.6.0.ebuild b/sys-devel/gcc/gcc-4.6.0.ebuild
deleted file mode 100644
index fc5714f..0000000
--- a/sys-devel/gcc/gcc-4.6.0.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2010 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/gcc-4.5.1-r1.ebuild,v 1.2 2010/11/29 20:40:15 dirtyepic Exp $
-
-PATCH_VER="0.9.2"
-#UCLIBC_VER="1.0"
-
-ETYPE="gcc-compiler"
-
-# Hardened gcc 4 stuff
-PIE_VER="0.4.8"
-SPECS_VER="0.2.0"
-SPECS_GCC_VER="4.4.3"
-# arch/libc configurations known to be stable with {PIE,SSP}-by-default
-PIE_GLIBC_STABLE="amd64 x86 ppc ppc64 arm ia64"
-PIE_UCLIBC_STABLE="x86 arm amd64 ppc ppc64"
-SSP_STABLE="amd64 x86 ppc ppc64 arm"
-# uclibc need tls and nptl support for SSP support
-SSP_UCLIBC_STABLE=""
-#end Hardened stuff
-
-inherit toolchain
-
-DESCRIPTION="The GNU Compiler Collection"
-
-LICENSE="GPL-3 LGPL-3 || ( GPL-3 libgcc libstdc++ gcc-runtime-library-exception-3.1 ) FDL-1.2"
-KEYWORDS=""
-IUSE="lto"
-
-RDEPEND=">=sys-libs/zlib-1.1.4
- >=sys-devel/gcc-config-1.4
- virtual/libiconv
- >=dev-libs/gmp-4.3.2
- >=dev-libs/mpfr-2.4.2
- >=dev-libs/mpc-0.8.1
- graphite? (
- >=dev-libs/ppl-0.10
- >=dev-libs/cloog-ppl-0.15.8
- )
- lto? ( >=dev-libs/elfutils-0.143 )
- !build? (
- gcj? (
- gtk? (
- x11-libs/libXt
- x11-libs/libX11
- x11-libs/libXtst
- x11-proto/xproto
- x11-proto/xextproto
- >=x11-libs/gtk+-2.2
- x11-libs/pango
- )
- >=media-libs/libart_lgpl-2.1
- app-arch/zip
- app-arch/unzip
- )
- >=sys-libs/ncurses-5.2-r2
- nls? ( sys-devel/gettext )
- )"
-DEPEND="${RDEPEND}
- test? ( >=dev-util/dejagnu-1.4.4 >=sys-devel/autogen-5.5.4 )
- >=sys-apps/texinfo-4.8
- >=sys-devel/bison-1.875
- elibc_glibc? ( >=sys-libs/glibc-2.8 )
- amd64? ( multilib? ( gcj? ( app-emulation/emul-linux-x86-xlibs ) ) )
- ppc? ( >=${CATEGORY}/binutils-2.17 )
- ppc64? ( >=${CATEGORY}/binutils-2.17 )
- >=${CATEGORY}/binutils-2.15.94"
-PDEPEND=">=sys-devel/gcc-config-1.4"
-if [[ ${CATEGORY} != cross-* ]] ; then
- PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
-fi
-
-src_unpack() {
- ewarn "This is experimental and should not be installd."
- ewarn "Don't fill any bugsreports for it is not supported."
- gcc_src_unpack
-
- use vanilla && return 0
-
- sed -i 's/use_fixproto=yes/:/' gcc/config.gcc #PR33200
-
- [[ ${CHOST} == ${CTARGET} ]] && epatch "${FILESDIR}"/gcc-spec-env.patch
-
- [[ ${CTARGET} == *-softfloat-* ]] && epatch "${FILESDIR}"/4.4.0/gcc-4.4.0-softfloat.patch
-}
-
-pkg_setup() {
- gcc_pkg_setup
-
- if use lto ; then
- ewarn
- ewarn "LTO support is still experimental and unstable."
- ewarn "Any bugs resulting from the use of LTO will not be fixed."
- ewarn
- fi
-}
diff --git a/sys-devel/gcc/metadata.xml b/sys-devel/gcc/metadata.xml
index e7773a2..179eb6a 100644
--- a/sys-devel/gcc/metadata.xml
+++ b/sys-devel/gcc/metadata.xml
@@ -3,28 +3,22 @@
<pkgmetadata>
<herd>toolchain</herd>
<use>
- <flag name="d">Enable support for the D programming language</flag>
<flag name="fixed-point">Enable fixed-point arithmetic support for MIPS targets
in gcc (Warning: significantly increases compile time!)</flag>
<flag name="graphite">Add support for the framework for loop
optimizations based on a polyhedral intermediate representation</flag>
- <flag name="ip28">Enable building a compiler capable of building a kernel
- for SGI Indigo2 Impact R10000 (IP28)</flag>
- <flag name="ip32r10k">Enable building a compiler capable of building an
- experimental kernel for SGI O2 w/ R1x000 CPUs (IP32)</flag>
<flag name="libffi">Build the portable foreign function interface library</flag>
<flag name="lto">Add support for link-time optimizations (unsupported, use
at your own risk).</flag>
<flag name="mudflap">Add support for mudflap, a pointer use checking library</flag>
<flag name="multislot">Allow for SLOTs to include minor version (3.3.4
instead of just 3.3)</flag>
- <flag name="n32">Enable n32 ABI support on mips</flag>
- <flag name="n64">Enable n64 ABI support on mips</flag>
<flag name="nopie">Disable PIE support (NOT FOR GENERAL USE)</flag>
<flag name="nossp">Disable SSP support (NOT FOR GENERAL USE)</flag>
<flag name="objc">Build support for the Objective C code language</flag>
<flag name="objc++">Build support for the Objective C++ language</flag>
<flag name="objc-gc">Build support for the Objective C code language Garbage
Collector</flag>
+ <flag name="libssp">Build support for libssp</flag>
</use>
</pkgmetadata>
reply other threads:[~2011-12-29 15:24 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4413c7dfe13e9168daec30d1565b1c29122a957b.blueness@gentoo \
--to=blueness@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox