summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-01-09 20:41:24 +0000
committerMike Frysinger <vapier@gentoo.org>2010-01-09 20:41:24 +0000
commite8733668d9186244f42b0956e21e4c9ceb90193c (patch)
tree66466257afc6345f716cf6f1cd59417f85f3c573 /sys-devel/gcc
parentAdd ~arm (diff)
downloadgentoo-2-e8733668d9186244f42b0956e21e4c9ceb90193c.tar.gz
gentoo-2-e8733668d9186244f42b0956e21e4c9ceb90193c.tar.bz2
gentoo-2-e8733668d9186244f42b0956e21e4c9ceb90193c.zip
old
Diffstat (limited to 'sys-devel/gcc')
-rw-r--r--sys-devel/gcc/files/awk/scanforssp.awk225
-rw-r--r--sys-devel/gcc/files/scan_libgcc_linked_ssp.sh42
2 files changed, 0 insertions, 267 deletions
diff --git a/sys-devel/gcc/files/awk/scanforssp.awk b/sys-devel/gcc/files/awk/scanforssp.awk
deleted file mode 100644
index e8a1fe8fc82a..000000000000
--- a/sys-devel/gcc/files/awk/scanforssp.awk
+++ /dev/null
@@ -1,225 +0,0 @@
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# Author: Martin Schlemmer <azarah@gentoo.org>
-# Contributor: Ned Ludd <solar@gentoo.org>
-# Contributor: Natanael Copa <nat@c2i.net>
-# Contributor: Carter Smithhart <derheld42@derheld.net>
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/files/awk/scanforssp.awk,v 1.7 2004/07/15 00:59:02 agriffis Exp $
-
-
-# Does not seem to be used in this script.
-function printn(string)
-{
- printf("%s", string)
-}
-
-function einfo(string)
-{
- printf(" %s %s%s", "\033[32;01m*\033[0m", string, "\n")
-}
-
-# Does not seem to be used in this script.
-function einfon(string)
-{
- printf(" %s %s" , "\033[32;01m*\033[0m", string)
-}
-
-function ewarn(string)
-{
- printf(" %s %s%s" , "\033[33;01m*\033[0m", string, "\n")
-}
-
-# Does not seem to be used in this script.
-function ewarnn(string)
-{
- printf("%s %s" , "\032[33;01m*\033[0m", string)
-}
-
-function eerror(string)
-{
- printf(" %s %s%s" , "\033[31;01m*\033[0m", string, "\n")
-}
-
- # These are private, else wierd things
- # might happen ...
-function iself(scan_files, scan_file_pipe, scan_data) {
- # Can we open() a file and read() 4 bytes?
- scan_file_pipe = ("head -c 4 " scan_files " 2>/dev/null | tail -c 3")
- scan_file_pipe | getline scan_data
- close(scan_file_pipe)
- return ((scan_data == "ELF") ? 0 : 1)
-}
-
-BEGIN {
- # Do we have etcat ?
- pipe = ("which etcat 2>/dev/null")
- if ((((pipe) | getline etcat_data) > 0) && (etcat_data != ""))
- auto_etcat = 1
- else
- auto_etcat = 0
-
- # Fix bug that causes script to fail when pipe is not closed. Closes bug #36792
- close(pipe)
-
- DIRCOUNT = 0
- # Add the two default library paths
- DIRLIST[1] = "/lib"
- DIRLIST[2] = "/usr/lib"
-
- # Walk /etc/ld.so.conf line for line and get any library paths
- pipe = ("cat /etc/ld.so.conf 2>/dev/null | sort")
- while(((pipe) | getline ldsoconf_data) > 0) {
-
- if (ldsoconf_data !~ /^[[:space:]]*#/) {
-
- if (ldsoconf_data == "") continue
-
- # Remove any trailing comments
- sub(/#.*$/, "", ldsoconf_data)
- # Remove any trailing spaces
- sub(/[[:space:]]+$/, "", ldsoconf_data)
-
- split(ldsoconf_data, nodes, /[:,[:space:]]/)
-
- # Now add the rest from ld.so.conf
- for (x in nodes) {
-
- sub(/=.*/, "", nodes[x])
- sub(/\/$/, "", nodes[x])
-
- if (nodes[x] == "") continue
-
- CHILD = 0
-
- # Drop the directory if its a child directory of
- # one that was already added ...
- for (y in DIRLIST) {
-
- if (nodes[x] ~ "^" DIRLIST[y]) {
-
- CHILD = 1
- break
- }
- }
-
- if (CHILD) continue
-
- DIRLIST[++DIRCOUNT + 2] = nodes[x]
- }
- }
- }
-
-# We have no guarantee that ld.so.conf have more library paths than
-# the default, and its better scan files only in /lib and /usr/lib
-# than nothing at all ...
-#
-# exit_val = close(pipe)
-# if (exit_val != 0)
-# print(exit_val " - " ERRNO)
-#
-# if (DIRCOUNT == 0) {
-# eerror("Could not read from /etc/ld.so.conf!")
-# exit 1
-# }
-
- # Correct DIRCOUNT, as we already added /lib and /usr/lib
- DIRCOUNT += 2
-
- # Add all the dirs in $PATH
- split(ENVIRON["PATH"], TMPPATHLIST, ":")
- count = asort(TMPPATHLIST, PATHLIST)
- for (x = 1;x <= count;x++) {
-
- ADDED = 0
-
- # Already added?
- for (dnode in DIRLIST)
- if (PATHLIST[x] == DIRLIST[dnode])
- ADDED = 1
-
- if (ADDED)
- continue
-
- # Valid? If so, add it ...
- if (((PATHLIST[x] != "") && (PATHLIST[x] != "/") && (PATHLIST[x] != ".")))
- DIRLIST[++DIRCOUNT] = PATHLIST[x]
-
- }
-
- GCCLIBPREFIX = "/usr/lib/gcc-lib/"
-
- for (x = 1;x <= DIRCOUNT;x++) {
-
- # Do nothing if the target dir is gcc's internal library path
- if (DIRLIST[x] ~ GCCLIBPREFIX) continue
-
- einfo(" Scanning " ((x <= 9) ? "0"x : x)" of " DIRCOUNT " " DIRLIST[x] "...")
-
- pipe = ("find " DIRLIST[x] "/ -type f -perm -1 2>/dev/null")
- while ( (pipe | getline scan_files) > 0) {
-
- #print scan_files
- # Do nothing if the file is located in gcc's internal lib path ...
- if (scan_files ~ GCCLIBPREFIX) continue
- # Or if its hardend files ...
- if (scan_files ~ "/lib/libgcc-3" ) continue
- # Or not a elf image ...
- if (iself(scan_files)) continue
-
- scan_file_pipe = ("readelf -s " scan_files " 2>&1")
- while (((scan_file_pipe) | getline scan_data) > 0) {
- bad = 0;
- if (scan_data ~ /__guard@GCC/ || scan_data ~ /__guard@@GCC/) {
- bad = 1;
- print
-
- # 194: 00000000 32 OBJECT GLOBAL DEFAULT UND __guard@GCC_3.0 (3)
- # 59: 00008ee0 32 OBJECT GLOBAL DEFAULT 22 __guard@@GCC_3.0
- split(scan_data, scan_data_nodes)
- ewarn("Found " scan_data_nodes[8] " in " scan_files "!")
- print
- }
- if (scan_data ~ /readelf: Error: Unable to seek/) {
- bad = 1;
- print
- ewarn("Error executing readelf. Bad block? Filesystem error? in " scan_files)
- print
- }
-
- if (bad) {
-
- if (auto_etcat) {
-
- # Use etcat that comes with gentoolkit if auto_etcat is true.
- etcat_pipe = ("etcat belongs " scan_files)
- (etcat_pipe) | getline etcat_belongs
-
- while(((etcat_pipe) | getline etcat_belongs) > 0)
- eerror(etcat_belongs != "" ? "Please emerge '>=" etcat_belongs "'": "")
- close(etcat_pipe)
- } else {
-
- eerror("You need to remerge package that above file belongs to!")
- eerror("To find out what package it is, please emerge gentoolkit,")
- eerror("and then run:")
- print
- print " # etcat belongs " scan_files
- }
-
- print
-
- close(scan_file_pipe)
- close(pipe)
- exit(1)
- }
- }
- close(scan_file_pipe)
- }
- close(pipe)
- }
-
- exit(0)
-}
-
-
-# vim:ts=4
diff --git a/sys-devel/gcc/files/scan_libgcc_linked_ssp.sh b/sys-devel/gcc/files/scan_libgcc_linked_ssp.sh
deleted file mode 100644
index 35119e5d93f7..000000000000
--- a/sys-devel/gcc/files/scan_libgcc_linked_ssp.sh
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/bash
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# Author: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/files/scan_libgcc_linked_ssp.sh,v 1.4 2007/05/05 05:13:15 vapier Exp $
-
-usage() {
-cat << "USAGE_END"
-Usage: can_libgcc_linked_ssp.sh
-
- This scans the system for files that contains the __guard symbol, that was
- linked against libgcc.
-
-
-USAGE_END
-
- exit 1
-}
-
-if [ "$#" -ne 0 ]
-then
- usage
-fi
-
-source /etc/profile || exit 1
-source /etc/init.d/functions.sh || exit 1
-
-AWKDIR="$(portageq envvar PORTDIR)/sys-devel/gcc/files/awk"
-
-if [ ! -r "${AWKDIR}/scanforssp.awk" ]
-then
- eerror "${0##*/}: ${AWKDIR}/scanforssp.awk does not exist!"
- exit 1
-fi
-
-einfo "Scanning system for __guard@GCC symbols..."
-/bin/gawk -f "${AWKDIR}/scanforssp.awk"
-
-exit $?
-
-
-# vim:ts=4