old
authorMike Frysinger <vapier@gentoo.org>
Tue, 4 Jan 2005 16:17:13 +0000 (16:17 +0000)
committerMike Frysinger <vapier@gentoo.org>
Tue, 4 Jan 2005 16:17:13 +0000 (16:17 +0000)
sys-devel/gcc-config/files/digest-gcc-config-1.3.6-r4 [deleted file]
sys-devel/gcc-config/files/gcc-config-1.3.6 [deleted file]
sys-devel/gcc-config/files/wrapper-1.4.2.c [deleted file]
sys-devel/gcc-config/gcc-config-1.3.6-r4.ebuild [deleted file]

diff --git a/sys-devel/gcc-config/files/digest-gcc-config-1.3.6-r4 b/sys-devel/gcc-config/files/digest-gcc-config-1.3.6-r4
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/sys-devel/gcc-config/files/gcc-config-1.3.6 b/sys-devel/gcc-config/files/gcc-config-1.3.6
deleted file mode 100755 (executable)
index 95ea466..0000000
+++ /dev/null
@@ -1,484 +0,0 @@
-#!/bin/bash
-# Copyright 1999-2004 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-config/files/gcc-config-1.3.6,v 1.9 2004/11/28 16:39:49 lv Exp $
-# Author:  Martin Schlemmer <azarah@gentoo.org>
-
-source /etc/init.d/functions.sh || {
-       echo "$0: Could not source /etc/init.d/functions.sh!"
-       exit 1
-}
-
-usage() {
-cat << "USAGE_END"
-Usage: gcc-config [options] [CC Profile]
-Change the current cc/gcc profile, or give info about profiles.
-
-Options:
-
-  -O, --use-old              Use the old profile if one was selected.
-
-  -P, --use-portage-chost    Only set to given profile if its CHOST is the 
-                             same as that set for portage in /etc/make.conf
-                             (or one of other portage config files...).
-
-  -c, --get-current-profile  Print current used gcc profile.
-
-  -l, --list-profiles        Print a list of available profiles.
-
-  -E, --print-environ        Print environment that can be used to setup the
-                             current gcc profile, or a specified one.
-
-  -B, --get-bin-path         Print path where binaries of the given/current
-                             profile are located.
-
-  -L, --get-lib-path         Print path where libraries of the given/current
-                             profile are located.
-
-  -X, --get-stdcxx-incdir    Print path where g++ include files of the
-                             given/current profile are located.
-
-Profile names are of the form:  <CHOST>-<gcc version>
-For example:                    i686-pc-linux-gnu-3.2.1
-USAGE_END
-
-       exit 1
-}
-
-if [ "$#" -lt 1 ]
-then
-       usage
-fi
-
-find_path() {
-       [ -z "$1" ] && return 0
-
-       local fullpath="$(type -P $1)"
-       
-       if [ -x "${fullpath}" ]
-       then
-               echo "${fullpath}"
-               return 0
-       fi
-
-       for x in /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin
-       do
-               if [ -x "${x}/$1" -a -r "${x}/$1" ]
-               then
-                       echo "${x}/$1"
-                       return 0
-               fi
-       done
-
-       return 0
-}
-
-cmd_setup() {
-
-       # Sourcing /etc/env.d/gcc/${CC_COMP} is going to mess up
-       # PATH among things...
-       CP="$(find_path cp)"
-       RM="$(find_path rm)"
-       MV="$(find_path mv)"
-       LN="$(find_path ln)"
-       CAT="$(find_path cat)"
-       AWK="$(find_path gawk)"
-       GREP="$(find_path grep)"
-       FIND="$(find_path find)"
-       CHMOD="$(find_path chmod)"
-       TOUCH="$(find_path touch)"
-       ENV_UPDATE="$(find_path env-update)"
-}
-
-CC_COMP=
-
-get_real_chost() {
-       [ -n "${REAL_CHOST}" ] && return 0
-
-       # Use absolute path until all protage versions have portageq in /usr/bin
-       export REAL_CHOST="$(/usr/lib/portage/bin/portageq envvar CHOST)"
-
-       if [ -z "${REAL_CHOST}" ]
-       then
-               eerror "$0:  Could not get portage CHOST!"
-               return 1
-       fi
-}
-
-switch_profile() {
-       local MY_LDPATH=
-       local GCC_PROFILES=
-       local OLD_CC_COMP=
-       local GCC_BIN_PATH=
-
-       if [ -r /etc/env.d/gcc/config ]
-       then
-               source /etc/env.d/gcc/config
-
-               if [ -n "${CURRENT}" ]
-               then
-                       OLD_CC_COMP="${CURRENT}"
-               fi
-       fi
-
-       if [ "$(id -u)" -ne 0 ]
-       then
-               eerror "$0: Must be root."
-               exit 1
-       fi
-
-       ebegin "Switching to ${CC_COMP} compiler"
-
-       # Sourcing /etc/env.d/gcc/${CC_COMP} is going to mess up
-       # PATH among things...
-       cmd_setup
-
-       # Order our profiles to have the default first...
-       # We do this so that we can have them ordered with default
-       # first in /etc/ld.so.conf, as the logical is that all
-       # compilers for default CHOST will be used to compile stuff,
-       # and thus we want all their lib paths in /etc/ld.so.conf ...
-       get_real_chost
-       GCC_PROFILES="$(${FIND} /etc/env.d/gcc/ -name "${REAL_CHOST}-*")"
-       GCC_PROFILES="${GCC_PROFILES/\/etc\/env.d\/gcc\/${CC_COMP}}"
-       GCC_PROFILES="/etc/env.d/gcc/${CC_COMP} ${GCC_PROFILES}"
-
-       # Extract all LDPATH's for our CHOST
-       for x in ${GCC_PROFILES}
-       do
-               if [ -f "${x}" ]
-               then
-                       source "${x}"
-
-                       # Handle LDPATH's that have multiple directories
-                       local old_IFS="${IFS}"
-                       export IFS=":"
-                       local sub_ldpath=
-                       for sub_ldpath in ${LDPATH}
-                       do
-                               if [ -z "${MY_LDPATH}" ]
-                               then
-                                       if [ -d "${sub_ldpath}" ]
-                                       then
-                                               MY_LDPATH="${sub_ldpath}"
-                                       fi
-                               else
-                                       if [ -d "${sub_ldpath}" ]
-                                       then
-                                               MY_LDPATH="${MY_LDPATH}:${sub_ldpath}"
-                                       fi
-                               fi
-                       done
-                       export IFS="${old_IFS}"
-               fi
-       done
-
-       # Setup things properly again for this profile
-       source "/etc/env.d/gcc/${CC_COMP}"
-
-       # Setup /etc/env.d/05gcc
-       ${AWK} '!/^STDCXX_INCDIR=|^LDPATH=/ {print $0}' \
-               "/etc/env.d/gcc/${CC_COMP}" > /etc/env.d/05gcc
-
-       # Add our custom LDPATH
-       echo "LDPATH=\"${MY_LDPATH}\"" >> /etc/env.d/05gcc
-
-       # Make sure we do not recreate /lib/cpp and /usr/bin/cc ...
-#      echo "DISABLE_GEN_GCC_WRAPPERS=\"yes\"" >> /etc/env.d/05gcc
-       
-       echo "CURRENT=${CC_COMP}" > /etc/env.d/gcc/config
-
-       # Save PATH
-       GCC_BIN_PATH="${PATH}"
-       # Fix environment
-       source /etc/profile
-
-       # These might not be installed, and we want to update the mtime
-       # for ccache and distcc anyhow ...
-       ${RM} -f /lib/cpp
-       ${CP} -f /usr/lib/gcc-config/wrapper /lib/cpp
-       for x in gcc cpp cc c++ g++ f77 gcj \
-                ${REAL_CHOST}-gcc ${REAL_CHOST}-c++ ${REAL_CHOST}-g++ \
-                ${REAL_CHOST}-f77 ${REAL_CHOST}-gcj
-       do
-               # Make sure we have no stale wrappers
-               ${RM} -f "/usr/bin/${x}"
-               
-               if [ -x "${GCC_BIN_PATH}/${x}" -o \
-                    "${x}" = "c++" -o "${x}" = "${REAL_CHOST}-c++" -o \
-                    "${x}" = "cpp" -o "${x}" = "cc" ]
-               then
-                       # Only install a wrapper if the binary exists ...
-                       ${CP} -f /usr/lib/gcc-config/wrapper "/usr/bin/${x}"
-
-                       if [ "${OLD_CC_COMP}" != "${CC_COMP}" ]
-                       then
-                               ${TOUCH} -m "/usr/bin/${x}"
-                       fi
-               fi
-       done
-
-
-       ${ENV_UPDATE} &> /dev/null
-
-       eend 0
-
-       if [ "${OLD_CC_COMP}" != "${CC_COMP}" ]
-       then
-               echo
-               ewarn "If you intend to use the gcc from the new profile in an already"
-               ewarn "running shell, please remember to do:"
-               echo
-               ewarn "  # source /etc/profile"
-               echo
-       fi
-
-       return 0
-}
-
-get_current_profile() {
-       if [ ! -f /etc/env.d/gcc/config ]
-       then
-               eerror "$0:  No gcc profile is active!"
-               return 1
-       fi
-
-       source /etc/env.d/gcc/config
-
-       if [ -z "${CURRENT}" ]
-       then
-               eerror "$0:  No gcc profile is active!"
-               return 1
-       fi
-
-       echo "${CURRENT}"
-
-       return 0
-}
-
-list_profiles() {
-       local i=1
-
-       if [ ! -f /etc/env.d/gcc/config ]
-       then
-               eerror "$0:  No gcc profile is active!"
-               return 1
-       fi
-
-       get_current_profile > /dev/null
-
-       for x in /etc/env.d/gcc/*
-       do
-               if [ -f "${x}" -a "${x}" != "/etc/env.d/gcc/config" ]
-               then
-                       x="${x##*/}"
-                       [ "${x}" == "${CURRENT}" ] && x="${x} *"
-                       echo "[${i}] ${x}"
-                       i=$((i + 1))
-               fi
-       done
-}
-
-print_environ() {
-       local OLDPATH="${PATH}"
-       local ENV_CMD=
-       local SET_ELEMENT=
-
-       source "/etc/env.d/gcc/${CC_COMP}"
-
-       case ${SHELL} in
-               */csh|*/tsch)
-                       ENV_CMD="setenv"
-                       SET_ELEMENT=" "
-                       ;;
-               *)
-                       ENV_CMD="export"
-                       SET_ELEMENT="="
-                       ;;
-       esac
-
-       echo "${ENV_CMD} PATH${SET_ELEMENT}\"${PATH}:${OLDPATH}\""
-#      if [ -z "${LD_LIBRARY_PATH}" ]
-#      then
-#              echo "${ENV_CMD} LD_LIBRARY_PATH${SET_ELEMENT}\"${LDPATH}\""
-#      else
-#              echo "${ENV_CMD} LD_LIBRARY_PATH${SET_ELEMENT}\"${LDPATH}:${LD_LIBRARY_PATH}\""
-#      fi
-       echo "${ENV_CMD} CC${SET_ELEMENT}\"${CC}\""
-       echo "${ENV_CMD} CXX${SET_ELEMENT}\"${CXX}\""
-}
-
-get_bin_path() {
-       if [ -e /etc/env.d/gcc/${CC_COMP} ] ; then
-               source "/etc/env.d/gcc/${CC_COMP}"
-               echo "${PATH}"
-       else
-               echo "no-config"
-               echo "/etc/env.d/gcc/${CC_COMP} doesnt exist" 1>&2
-       fi
-
-       return 0
-}
-
-get_lib_path() {
-       if [ -e /etc/env.d/gcc/${CC_COMP} ] ; then
-               source "/etc/env.d/gcc/${CC_COMP}"
-               echo "${LDPATH}"
-       else
-               echo "no-config"
-               echo "/etc/env.d/gcc/${CC_COMP} doesnt exist" 1>&2
-       fi
-
-       return 0
-}
-
-get_stdcxx_incdir() {
-       if [ -e /etc/env.d/gcc/${CC_COMP} ] ; then
-               source "/etc/env.d/gcc/${CC_COMP}"
-               echo "${LDPATH}/include/${STDCXX_INCDIR}"
-       else
-               echo "no-config"
-               echo "/etc/env.d/gcc/${CC_COMP} doesnt exist" 1>&2
-       fi
-
-       return 0
-}
-
-NEED_ACTION="yes"
-DOIT="switch_profile"
-CHECK_CHOST="no"
-
-for x in "$@"
-do
-       case "${x}" in
-               # Only use specified compiler if one is not already selected.
-               -O|--use-old)
-                       if get_current_profile &> /dev/null
-                       then
-                               CC_COMP="$(get_current_profile)"
-                       fi
-                       ;;
-               -P|--use-portage-chost)
-                       CHECK_CHOST="yes"
-                       ;;
-               -c|--get-current-profile)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="get_current_profile"
-                       fi
-                       ;;
-               -l|--list-profiles)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="list_profiles"
-                       fi
-                       ;;
-               -E|--print-environ)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="print_environ"
-                       fi
-                       ;;
-               -B|--get-bin-path)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="get_bin_path"
-                       fi
-                       ;;
-               -L|--get-lib-path)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="get_lib_path"
-                       fi
-                       ;;
-               -X|--get-stdcxx-incdir)
-                       if [ "${NEED_ACTION}" = "yes" ]
-                       then
-                               NEED_ACTION="no"
-                               DOIT="get_stdcxx_incdir"
-                       fi
-                       ;;
-               -h|--help)
-                       usage
-                       exit 0
-                       ;;
-               -v|--version)
-                       echo "gcc-config-PORTAGE-VERSION"
-                       exit 0
-                       ;;
-               -*)
-                       eerror "$0: Invalid switch!  Run $0 without parameters for help."
-                       exit 1
-                       ;;
-               *)
-                       if [ -z "${CC_COMP}" ]
-                       then
-                               if [ -n "`echo ${x} | gawk '/^[[:digit:]]*$/ { print }'`" ]
-                               then
-                                       i=1
-                                       for y in /etc/env.d/gcc/*
-                                       do
-                                               [ "${y}" = "/etc/env.d/gcc/config" ] && continue
-                                               
-                                               if [ -f "${y}" -a "${x}" -eq "${i}" ]
-                                               then
-                                                       CC_COMP="${y##*/}"
-                                                       break
-                                               else
-                                                       i=$((i + 1))
-                                               fi
-                                       done
-                               else
-                                       CC_COMP="${x}"
-                               fi
-                       fi
-                       ;;
-       esac
-done
-
-if [ "${DOIT}" = "switch_profile" -a -z "${CC_COMP}" ]
-then
-       usage
-fi
-
-if [ -z "${CC_COMP}" ]
-then
-       if get_current_profile &> /dev/null
-       then
-               CC_COMP="$(get_current_profile)"
-       else
-               eerror "$0: No default profile setup!"
-               exit 1
-       fi
-fi
-
-CC_COMP_NO_SPECS=$(echo ${CC_COMP} | awk -F- '{ print $1"-"$2"-"$3"-"$4"-"$5 }')
-
-GCC_LIB="$(source /etc/env.d/gcc/${CC_COMP}
-       cmd_setup
-       echo ${LDPATH} | ${AWK} -F/ '{ print  "/"$2"/"$3"/"$4"/" }')"
-
-if [ ! -d "${ROOT}/${GCC_LIB}/${CC_COMP_NO_SPECS%-*}/${CC_COMP_NO_SPECS##*-}" -o \
-     ! -f "/etc/env.d/gcc/${CC_COMP}" ]
-then
-       eerror "$0: Profile does not exist or invalid setting for /etc/env.d/gcc/${CC_COMP}" 1>&2
-       #exit 1
-fi
-
-if [ "${CHECK_CHOST}" = "yes" ]
-then
-       # Chosen CHOST are not the same as the real CHOST according to
-       # make.conf, and --use-portage-chost option was given, so do nothing
-       get_real_chost
-       [ "${CC_COMP%-*}" != "${REAL_CHOST}" ] && exit 0
-fi
-
-eval ${DOIT}
-
-
-# vim:ts=4
diff --git a/sys-devel/gcc-config/files/wrapper-1.4.2.c b/sys-devel/gcc-config/files/wrapper-1.4.2.c
deleted file mode 100644 (file)
index 42bf300..0000000
+++ /dev/null
@@ -1,312 +0,0 @@
-/*
- * Copyright 1999-2004 Gentoo Foundation
- * Distributed under the terms of the GNU General Public License v2
- * $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-config/files/wrapper-1.4.2.c,v 1.5 2004/12/09 01:46:23 vapier Exp $
- * Author: Martin Schlemmer <azarah@gentoo.org>
- */
-
-#define _REENTRANT
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/param.h>
-#include <unistd.h>
-#include <wait.h>
-#include <libgen.h>
-#include <string.h>
-#include <stdarg.h>
-#include <errno.h>
-
-#define GCC_CONFIG     "/usr/bin/gcc-config"
-
-#ifndef CC_PROFILE
-# define ENVD_FILE     "/etc/env.d/05gcc"
-#else
-# define ENVD_FILE     "/etc/env.d/gcc/" CC_PROFILE
-#endif
-
-struct wrapper_data {
-       char name[MAXPATHLEN + 1];
-       char fullname[MAXPATHLEN + 1];
-       char bin[MAXPATHLEN + 1];
-       char tmp[MAXPATHLEN + 1];
-       
-       char *path;
-};
-
-static const char *wrapper_strerror(int err, struct wrapper_data *data)
-{
-       /* this app doesn't use threads and strerror 
-        * is more portable than strerror_r */
-       strncpy(data->tmp, strerror(err), sizeof(data->tmp));
-       return data->tmp;
-}
-
-static void wrapper_exit(char *msg, ...)
-{   
-       va_list args;
-       fprintf(stderr, "gcc-config error: ");
-       va_start(args, msg);
-       vfprintf(stderr, msg, args);
-       va_end(args);
-       exit(1);
-}
-
-/* check_for_target checks in path for the file we are seeking 
- * it returns 1 if found (with data->bin setup), 0 if not and
- * negative on error
- */
-static int check_for_target(char *path, struct wrapper_data *data) 
-{
-       struct stat sbuf;
-       int result = 0;
-       char str[MAXPATHLEN + 1];
-       size_t len = strlen(path) + strlen(data->name) + 2;
-
-       snprintf(str, len, "%s/%s", path, data->name);
-
-       /* Stat possible file to check that
-        * 1) it exist and is a regular file, and
-        * 2) it is not the wrapper itself, and
-        * 3) it is in a /gcc-bin/ directory tree
-        */
-       result = stat(str, &sbuf);
-       if ((0 == result) &&
-           ((sbuf.st_mode & S_IFREG) || (sbuf.st_mode & S_IFLNK)) && 
-           (0 != strcmp(str, data->fullname)) && 
-           (0 != strstr(str, "/gcc-bin/"))) {
-               
-               strncpy(data->bin, str, MAXPATHLEN);
-               data->bin[MAXPATHLEN] = 0;
-               result = 1;
-       }
-       else
-               result = 0;
-
-       return result;
-}
-
-static int find_target_in_path(struct wrapper_data *data)
-{
-       char *token = NULL, *state;
-       char str[MAXPATHLEN + 1];
-       
-       if (NULL == data->path) return 0;
-
-       /* Make a copy since strtok_r will modify path */
-       snprintf(str, MAXPATHLEN + 1, "%s", data->path);
-       
-       token = strtok_r(str, ":", &state);
-
-       /* Find the first file with suitable name in PATH.  The idea here is
-        * that we do not want to bind ourselfs to something static like the
-        * default profile, or some odd environment variable, but want to be
-        * able to build something with a non default gcc by just tweaking
-        * the PATH ... */
-       while ((NULL != token) && (strlen(token) > 0)) {
-               
-               if (check_for_target(token, data))
-                       return 1;
-               
-               token = strtok_r(NULL, ":", &state);
-       }
-       
-       return 0;
-}
-
-/* find_target_in_envd parses /etc/env.d/05gcc, and tries to
- * extract PATH, which is set to the current profile's bin
- * directory ...
- */
-static int find_target_in_envd(struct wrapper_data *data)
-{
-       FILE *envfile = NULL;
-       char *token = NULL, *state;
-       char str[MAXPATHLEN + 1];
-       char *strp = str;
-
-       if (NULL == data->path) return 0;
-
-       envfile = fopen(ENVD_FILE, "r");
-       if (NULL == envfile)
-               return 0;
-
-       while (0 != fgets(strp, MAXPATHLEN, envfile)) {
-               
-               /* Keep reading ENVD_FILE until we get a line that
-                * starts with 'PATH='
-                */
-               if (((strp) && (strlen(strp) > strlen("PATH=")) &&
-                       0 == strncmp("PATH=", strp, strlen("PATH=")))) {
-                       
-                       token = strtok_r(strp, "=", &state);
-                       if ((NULL != token) && (strlen(token) > 0))
-                               /* The second token should be the value of PATH .. */
-                               token = strtok_r(NULL, "=", &state);
-                       else {
-                               fclose(envfile);
-                               return 0;
-                       }
-                       
-                       if ((NULL != token) && (strlen(token) > 0)) {
-                               
-                               strp = token;
-                               /* A bash variable may be unquoted, quoted with " or
-                                * quoted with ', so extract the value without those ..
-                                */
-                               token = strtok(strp, "\n\"\'");
-
-                               while (NULL != token) {
-                                       
-                                       if (check_for_target(token, data)) {
-
-                                               fclose(envfile);
-                                               return 1;
-                                       }
-
-                                       token = strtok(NULL, "\n\"\'");
-                               }
-                       }
-                       
-               }
-               strp = str;
-       }
-
-       fclose(envfile);
-
-       return 0;
-}
-
-static void find_wrapper_target(struct wrapper_data *data) 
-{
-       FILE *inpipe = NULL;
-       char str[MAXPATHLEN + 1];
-
-#ifndef CC_PROFILE
-       if (find_target_in_path(data))
-               return;
-#endif
-
-       if (find_target_in_envd(data))
-               return;
-
-       /* Only our wrapper is in PATH, so 
-          get the CC path using gcc-config and 
-          execute the real binary in there... */
-#ifndef CC_PROFILE
-       inpipe = popen(GCC_CONFIG " --get-bin-path", "r");
-#else
-       inpipe = popen(GCC_CONFIG " --get-bin-path " CC_PROFILE, "r");
-#endif
-       if (NULL == inpipe)
-               wrapper_exit(
-                       "Could not open pipe: %s\n",
-                       wrapper_strerror(errno, data));
-
-       if (0 == fgets(str, MAXPATHLEN, inpipe))
-               wrapper_exit(
-                       "Could not get compiler binary path: %s\n",
-                       wrapper_strerror(errno, data));
-
-       strncpy(data->bin, str, sizeof(data->bin) - 1);
-       data->bin[strlen(data->bin) - 1] = '/';
-       strncat(data->bin, data->name, sizeof(data->bin) - 1);
-       data->bin[MAXPATHLEN] = 0;
-
-       pclose(inpipe);
-}
-
-/* This function modifies PATH to have gcc's bin path appended */
-static void modify_path(struct wrapper_data *data)
-{
-       char *newpath = NULL, *token = NULL, *state;
-       char dname_data[MAXPATHLEN + 1], str[MAXPATHLEN + 1];
-       char *str2 = dname_data, *dname = dname_data;
-       size_t len = 0;
-
-       if (NULL == data->bin)
-               return;
-
-       snprintf(str2, MAXPATHLEN + 1, "%s", data->bin);
-
-       if (NULL == (dname = dirname(str2)))
-               return;
-
-       if (NULL == data->path)
-               return;
-
-       /* Make a copy since strtok_r will modify path */
-       snprintf(str, MAXPATHLEN + 1, "%s", data->path);
-
-       token = strtok_r(str, ":", &state);
-
-       /* Check if we already appended our bin location to PATH */
-       if ((NULL != token) && (strlen(token) > 0)) {
-               if (0 == strcmp(token, dname))
-                       return;
-       }
-
-       len = strlen(dname) + strlen(data->path) + 2 + strlen("PATH") + 1;
-
-       newpath = (char *)malloc(len);
-       if (NULL == newpath)
-               wrapper_exit("out of memory\n");
-       memset(newpath, 0, len);
-
-       snprintf(newpath, len, "PATH=%s:%s", dname, data->path);
-       putenv(newpath);
-}
-
-int main(int argc, char **argv) 
-{
-       struct wrapper_data *data;
-       size_t size;
-       char *path;
-       int result = 0;
-
-       data = alloca(sizeof(*data));
-       if (NULL == data) 
-               wrapper_exit("%s wrapper: out of memory\n", argv[0]);
-       memset(data, 0, sizeof(*data));
-
-       path = getenv("PATH");
-       if (NULL != path) {
-               data->path = strdup(getenv("PATH"));
-               if (NULL == data->path) 
-                       wrapper_exit("%s wrapper: out of memory\n", argv[0]);
-       }
-               
-       /* What should we find ? */
-       strcpy(data->name, basename(argv[0]));
-
-       /* cc calls "/full/path/to/gcc" ... */
-       if (0 == strcmp(data->name, "cc"))
-               strcpy(data->name, "gcc");
-
-       /* What is the full name of our wrapper? */
-       size = sizeof(data->fullname);
-       result = snprintf(data->fullname, size, "/usr/bin/%s", data->name);
-       if ((-1 == result) || (result > size))
-               wrapper_exit("invalid wrapper name: \"%s\"\n", data->name);
-
-       find_wrapper_target(data);
-
-       modify_path(data);
-
-       if (data->path)
-               free(data->path);
-       data->path = NULL;
-
-       /* Set argv[0] to the correct binary, else gcc do not find internal
-        * headers, etc (bug #8132). */
-       argv[0] = data->bin;
-
-       /* Ok, do it ... */
-       if (execv(data->bin, argv) < 0)
-               wrapper_exit("Could not run/locate \"%s\"\n", data->name);
-       
-       return 0;
-}
diff --git a/sys-devel/gcc-config/gcc-config-1.3.6-r4.ebuild b/sys-devel/gcc-config/gcc-config-1.3.6-r4.ebuild
deleted file mode 100644 (file)
index c5db893..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc-config/gcc-config-1.3.6-r4.ebuild,v 1.2 2005/01/03 00:02:43 ciaranm Exp $
-
-inherit toolchain-funcs
-
-# Version of .c wrapper to use
-W_VER="1.4.2"
-
-DISABLE_GEN_GCC_WRAPPERS="yes"
-
-GCC_CONFIG_BIN="${ROOT}/usr/bin/gcc-config"
-DESCRIPTION="Utility to change the gcc compiler being used."
-HOMEPAGE="http://www.gentoo.org/"
-SRC_URI=""
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 s390 sh sparc x86"
-IUSE=""
-
-DEPEND="virtual/libc
-       >=sys-apps/portage-2.0.47-r10" # We need portageq ...
-
-pkg_setup() {
-       if [ -x "${GCC_CONFIG_BIN}" ]
-       then
-               # Make sure while we have write access that everything is setup Ok ...
-               ${GCC_CONFIG_BIN} --get-current-profile &> /dev/null
-       fi
-}
-
-src_install() {
-       local gcc_bin_path="$(${GCC_CONFIG_BIN} --get-bin-path)"
-
-       # Setup PATH just in case ...
-       if ${GCC_CONFIG_BIN} --get-current-profile &> /dev/null
-       then
-               if [ -x "${GCC_CONFIG_BIN}" ]
-               then
-                       export PATH="`${GCC_CONFIG_BIN} --get-bin-path`:${PATH}"
-               else
-                       export PATH="`${GCC_CONFIG_BIN} --get-bin-path`:${PATH}"
-               fi
-       fi
-
-       einfo "Compiling wrapper..."
-       $(tc-getCC) -O2 -Wall -o ${WORKDIR}/wrapper \
-               ${FILESDIR}/wrapper-${W_VER}.c || die
-
-       exeinto /usr/lib/gcc-config
-       doexe ${WORKDIR}/wrapper || die
-
-       # Only setup this if we have a proper gcc version installed, else
-       # we will nuke the non gcc-config versions ...
-       if ${GCC_CONFIG_BIN} --get-current-profile &> /dev/null
-       then
-               einfo "Creating wrappers for compiler tools..."
-               exeinto /lib
-               newexe ${WORKDIR}/wrapper cpp
-
-               exeinto /usr/bin
-               for x in gcc cpp cc c++ g++ f77 gcj \
-                        ${CHOST}-gcc ${CHOST}-c++ ${CHOST}-g++ ${CHOST}-f77 ${CHOST}-gcj
-               do
-                       # Make sure we only install wrappers for those present ...
-                       [ -x "${gcc_bin_path}/${x}" -o \
-                         "${x}" = "c++" -o "${x}" = "${REAL_CHOST}-c++" -o \
-                         "${x}" = "cpp" -o "${x}" = "cc" ] && \
-                               newexe ${WORKDIR}/wrapper ${x}
-               done
-       fi
-
-       einfo "Installing gcc-config..."
-       newbin ${FILESDIR}/${PN}-${PV} ${PN}
-       dosed "s:PORTAGE-VERSION:${PV}:" /usr/bin/${PN}
-}
-
-pkg_postinst() {
-       # Do we have a valid multi ver setup ?
-       if ${GCC_CONFIG_BIN} --get-current-profile &> /dev/null
-       then
-               # We not longer use the /usr/include/g++-v3 hacks, as
-               # it is not needed ...
-               if [ -L ${ROOT}/usr/include/g++ ]
-               then
-                       rm -f ${ROOT}/usr/include/g++
-               fi
-               if [ -L ${ROOT}/usr/include/g++-v3 ]
-               then
-                       rm -f ${ROOT}/usr/include/g++-v3
-               fi
-
-               if [ ${ROOT} = "/" ]
-               then
-                       ${GCC_CONFIG_BIN} $(/usr/bin/gcc-config --get-current-profile)
-               fi
-       fi
-}