diff options
author | George Shapovalov <george@gentoo.org> | 2008-05-16 22:11:52 +0000 |
---|---|---|
committer | George Shapovalov <george@gentoo.org> | 2008-05-16 22:11:52 +0000 |
commit | 4e3793585a837d58c52ab48209d1c7a3bdb4617c (patch) | |
tree | 0d7f25255c8c26c378b96a897e2c1e25711df9eb /app-admin/eselect-gnat | |
parent | fixed incorrect semicolon in ADA_PROJECT_PATH (diff) | |
download | gentoo-2-4e3793585a837d58c52ab48209d1c7a3bdb4617c.tar.gz gentoo-2-4e3793585a837d58c52ab48209d1c7a3bdb4617c.tar.bz2 gentoo-2-4e3793585a837d58c52ab48209d1c7a3bdb4617c.zip |
removed old version
(Portage version: 2.1.5)
Diffstat (limited to 'app-admin/eselect-gnat')
-rw-r--r-- | app-admin/eselect-gnat/ChangeLog | 7 | ||||
-rw-r--r-- | app-admin/eselect-gnat/eselect-gnat-1.2.ebuild | 32 | ||||
-rw-r--r-- | app-admin/eselect-gnat/files/gnat-common-1.2.bash | 220 | ||||
-rw-r--r-- | app-admin/eselect-gnat/files/gnat.eselect-1.2 | 207 |
4 files changed, 6 insertions, 460 deletions
diff --git a/app-admin/eselect-gnat/ChangeLog b/app-admin/eselect-gnat/ChangeLog index a90a8f427299..2fc2a81c843d 100644 --- a/app-admin/eselect-gnat/ChangeLog +++ b/app-admin/eselect-gnat/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for app-admin/eselect-gnat # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-gnat/ChangeLog,v 1.26 2008/05/16 22:09:38 george Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-gnat/ChangeLog,v 1.27 2008/05/16 22:11:51 george Exp $ + + 16 May 2008; George Shapovalov <george@gentoo.org> + -files/gnat.eselect-1.2, -files/gnat-common-1.2.bash, + -eselect-gnat-1.2.ebuild: + removed old version *eselect-gnat-1.4-r1 (16 May 2008) diff --git a/app-admin/eselect-gnat/eselect-gnat-1.2.ebuild b/app-admin/eselect-gnat/eselect-gnat-1.2.ebuild deleted file mode 100644 index 4ac86d157b72..000000000000 --- a/app-admin/eselect-gnat/eselect-gnat-1.2.ebuild +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-gnat/eselect-gnat-1.2.ebuild,v 1.2 2007/12/26 02:06:27 truedfx Exp $ - -inherit eutils - -DESCRIPTION="gnat module for eselect." -HOMEPAGE="http://www.gentoo.org" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" - -IUSE="" -RDEPEND="app-admin/eselect" - -MODULEDIR="/usr/share/eselect/modules" - -# NOTE!! -# This path is duplicated in gnat-eselect module, -# adjust in both locations! -LIBDIR="/usr/share/gnat/lib" - -src_install() { - dodir ${MODULEDIR} - insinto ${MODULEDIR} - newins "${FILESDIR}"/gnat.eselect-${PVR} gnat.eselect - dodir ${LIBDIR} - insinto ${LIBDIR} - newins "${FILESDIR}"/gnat-common-${PVR}.bash gnat-common.bash -} diff --git a/app-admin/eselect-gnat/files/gnat-common-1.2.bash b/app-admin/eselect-gnat/files/gnat-common-1.2.bash deleted file mode 100644 index a1a1d8d0885a..000000000000 --- a/app-admin/eselect-gnat/files/gnat-common-1.2.bash +++ /dev/null @@ -1,220 +0,0 @@ -# Copyright 1999-2007 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-gnat/files/gnat-common-1.2.bash,v 1.1 2007/12/14 12:14:00 george Exp $ - -# -# Original Author: George Shapovalov <george@gentoo.org> -# Purpose: Contains common vars/locations and functions for use by gnat.eclass, -# gnat.eselect and gnatbuild.eclass. -# -# NOTE!!! -# This eclass should just define vars (tyr to limit these!) and simple functions. -# No bash extensions!! -# That is, no portage or eclass internals are allowed! -# - - - -# ---------------------------------- -# Globals - -# Environmantal stuff (for env update) -SPECSDIR="/usr/share/gnat/eselect" -ENVDIR="/etc/env.d" -MARKER="55gnat-" - -## Lib install locations -## -## Gnat profile dependent files go under under ${LibTop}/${Gnat_Profile}/${PN} -## and common files go unde SpecsDir, DataDir -#PREFIX=/usr -## Replace %LIBDIR% below with $(get_libdir) in eclasses and ebuilds (top level Ok, inherit multilib) -## or $(profile2libdir ${profile}) in this code, eselect module or anywhere -## outside portage (as profile will be available only during actual execution, this only should -## be done inside corresponding functions). -#AdalibSpecsDir=${PREFIX}/include/ada -#AdalibDataDir=${PREFIX}/share/ada -#AdalibLibTop=${PREFIX}/%LIBDIR%/ada - - -## ------------------------------------ -## multilib's get_libdir issue -## -## As we cannot rely on portage or even a tree being present at the point of run-time call, -## we cannot simply source multilib.eclass (won't even work without bunch of portage preprocessing actually) -## or even use the relevant /etc/make.profile/make.defaults. -## Instead I define below vars of the form gnatProfile_LIBDIR=dirname, one for each supported arch. -## These are to be directly or via the call to $(profile2libdir profile) func. -## profile (gnatProfile) corresponds to the output of get_gnat_Arch -# -#x86_64-pc-linux-gnu_LIBDIR= -#i686-pc-linux-gnu_LIBDIR= -#powerpc-unknown-linux-gnu_LIBDIR= - -# ------------------------------------ -# Helpers -# - -# get_all_profile_components splits gnat profile and returns pace separated list of its components: -# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu gcc 4.1 -# args: -# $1 - the string to split -get_all_profile_components() { - local GnatSLOT=${1##*-} - local remainder=${1%-*} - local GnatPkg=${remainder##*-} - remainder=${remainder%-gnat-*} - echo "${remainder} ${GnatPkg} ${GnatSLOT}" -} - -# similar to above, returns only SLOT component: -# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> 4.1 -# args: -# $1 - the string to extract the slot from -get_gnat_SLOT() { - echo "${1##*-}" -} - -# returns only Pkg component: -# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> gcc -# args: -# $1 - the string to extract the slot from -get_gnat_Pkg() { - local remainder=${1%-*} - echo "${remainder##*-}" -} - -# returns only Arch component: -# x86_64-pc-linux-gnu-gnat-gcc-4.1 -> x86_64-pc-linux-gnu -# args: -# $1 - the string to extract the slot from -get_gnat_Arch() { - echo ${1%-gnat-*} -} - - - -## ------------------------------------------- -# gnat profile and lib detection functions - - -# create a list of all gnat env.d files -# for now use trivial implementation - store name of active profile in the -# env file name, so it gets called 55gnat-${ARCH}-${PN}-${SLOT} -get_env_list() { - for fn in ${ENVDIR}/${MARKER}*; do - echo $(basename ${fn}) - done -} - - - -# find installed compilers and return a list -find_compilers() { - [ ! -d ${SPECSDIR} ] && exit - for fn in ${SPECSDIR}/*; do - [ ! -d ${fn} ] && echo $(basename ${fn}); - done -} - -# find installed libs and return a list -find_all_libs() { - [ ! -d ${SPECSDIR} ] && exit - for fn in ${SPECSDIR}/*; do - [ -d ${fn} ] && echo $(basename ${fn}); - done -} - -# find libs that have been built for a given profile -# Arguments: -# $1 - gnat profile for which to detect active libs -find_libs4profile() { - libs=( $(find_all_libs) ) - - for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do - [ -f ${SPECSDIR}/${libs[$i]}/$1 ] && echo "${libs[$i]}" - done -} - - - - -## ----------------------- -# princial action - central part of do_set and helpers - - -# extracts values of the passed var definition from given spec file -# params: -# $1: spec file (as generated by gnabuild.eclass) -# $2: variable name -get_var_from_spec() { - local var=$(grep -e "^ *$2=" $1|cut -d= -f2) - echo ${var} -} - - -# Cycle through given libs and form a ':' separated list of settings for the given -# var. Returned string starts with ':' if there is any non-empty setting, -# otherwise returns empty string. Repeating settings are omitted, that is -# unique entry is added only first time it is encountered. No need to have some -# common dir listed many times in PATH for example. -# -# params: -# $1 - name of env var to process -# $2 - name of gnat profile -# $3.. - list of libs to check (to avoid its composition every time) -# - the list is expanded to list of args at the point of call -get_lib_var_settings() { - local envVar=$1 - local toset=$2 - #echo "get_lib_var_settings params:$@" >> /tmp/eselect-gnat.rep - if [[ "none" != ${3} ]]; then - local envString - local specLine - while [[ -n $3 ]]; do - specLine=$(get_var_from_spec ${SPECSDIR}/$3/${toset} ${envVar}) - #echo "$3:${specLine}." >> /tmp/eselect-gnat.rep - if [[ -n ${specLine} ]] && [[ ! ${envString} =~ ${specLine} ]]; then - envString="${envString}:${specLine}" - fi - shift - done - echo "${envString}" - fi -} - - - -# The action! -# Part common for do_set and do_update of gnat.eselect, also used in gnat.eclass -# to set environment during lib build and installation -# -# params: -# $1 - profile to set (toset param inside) -# $2 - envfile - -generate_envFile() { - local toset=$1 - local envfile=$2 - - local binpath="$(get_var_from_spec ${SPECSDIR}/${toset} binpath)" - local libexecpath="$(get_var_from_spec ${SPECSDIR}/${toset} libexecpath)" - local libs=( $(find_libs4profile ${toset}) ) - #echo "generate_envFile: ${libs[@]}" >> /tmp/eselect-gnat.rep - if (( 0 == ${#libs[@]} )); then - libs="none" - fi - - local MyPath="${binpath}:${libexecpath}$(get_lib_var_settings PATH ${toset} ${libs[@]})" - echo "PATH=${MyPath}" > "${envfile}" - echo "ROOTPATH=${MyPath}" >> "${envfile}" - echo "MANPATH=$(get_var_from_spec ${SPECSDIR}/${toset} manpath)$(get_lib_var_settings MANPATH ${toset} ${libs[@]})" >> "${envfile}" - echo "INFOPATH=$(get_var_from_spec ${SPECSDIR}/${toset} infopath)$(get_lib_var_settings INFOPATH ${toset} ${libs[@]})" >> "${envfile}" - # the next three use the common base - local libBase=$(get_var_from_spec ${SPECSDIR}/${toset} ldpath) - echo "LDPATH=${libBase}:${libBase}/adalib$(get_lib_var_settings LDPATH ${toset} ${libs[@]})" >> "${envfile}" - echo "ADA_INCLUDE_PATH=${libBase}/adainclude$(get_lib_var_settings ADA_INCLUDE_PATH ${toset} ${libs[@]})" >> "${envfile}" - echo "ADA_OBJECTS_PATH=${libBase}/adalib$(get_lib_var_settings ADA_OBJECTS_PATH ${toset} ${libs[@]})" >> "${envfile}" - echo "ADA_PROJECT_PATH=${libBase}/adalib$(get_lib_var_settings ADA_PROJECT_PATH ${toset} ${libs[@]})" >> "${envfile}" -} - diff --git a/app-admin/eselect-gnat/files/gnat.eselect-1.2 b/app-admin/eselect-gnat/files/gnat.eselect-1.2 deleted file mode 100644 index 23a6ad1eb3c3..000000000000 --- a/app-admin/eselect-gnat/files/gnat.eselect-1.2 +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id: gnat.eselect-1.2,v 1.1 2007/12/14 12:14:00 george Exp $ - -DESCRIPTION="Manage the installed gnat compilers" -MAINTAINER="ada@gentoo.org" -SVN_DATE='$Date: 2007/12/14 12:14:00 $' -VERSION=$(svn_date_to_version "${SVN_DATE}" ) - -# "inheriting" common stuff -# this crude sourcing should be replaced by a call to function in -# libs/package-manager.bash eventually -. /usr/share/gnat/lib/gnat-common.bash - - -### Phylosophy -# Each gnat installs a "specs" file named ${ARCH}-${PN}-${SLOT} under ${SPECSDIR} -# Each lib creates a dir with its name under ${SPECSDIR} and populates it with -# similar specs files (same name scheme) -# Recognizing gnat specs from lib specs is then eazy - test entry for being a -# dir, then just check what gnat profiles are installed for each lib.. -# doset then creates env file that combines settings for gnat and for the -# corresponding profile of each installed lib.. - - -### Helpers - -# return *the* name of the active profile, checking that we do not have multiple -# env files. -# There can be only one! -get_current_gnat() { - local profiles=( $(get_env_list) ) - - if [ ${profiles[@]} == "${MARKER}*" ]; then exit; fi - - if (( 1 == ${#profiles[@]} )); then - local active=${profiles[0]#${MARKER}} - else - die -q "${ENVDIR} contains multiple gnat profiles, please cleanup!" - fi - - if [ -f ${SPECSDIR}/${active} ]; then - echo ${active} - else - die -q "the active env.d profile does not correspond to any installed gnat!" - fi -} - -# check if the passed arg represents the installed gnat and return it or -# not_found -# takes args: -# $1 - list ID to check -get_name_from_list() { - compiler=$1 - - compilers=( $(find_compilers) ) - for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do - if [[ ${compilers[$i]} == ${compiler} ]] ; then - echo ${compiler} - return - fi - done - - echo "(not-found)" -} - - -# removes env files (for compiler and libs) -# params: -# $1: the name of profile for which to remove env file -unset_env() { - rm -f ${ENVDIR}/${MARKER}$1 &> /dev/null -} - - -### show action ### - -describe_show() { - echo "Show the active gnat compiler/profile and installed libs" -} - -do_show() { - write_list_start "Current gnat version:" - active=$(get_current_gnat) - if [ ! -z ${active} ] ; then # not sure why [ -n ] does not do the same - write_kv_list_entry "$active" "" - libs=( $(find_libs4profile ${active}) ) - write_list_start "Active libs:" - write_numbered_list "${libs[@]}" - else - write_kv_list_entry "(none set)" "" - fi -} - -### list action ### - -describe_list() { - echo "List installed gnat compilers and libs" -} - -do_list() { - compilers=( $(find_compilers ) ) - active=$(get_current_gnat) - - write_list_start "Available gnat compilers:" - - if [[ -n ${compilers[@]} ]] ; then - local i - for (( i = 0 ; i < ${#compilers[@]} ; i = i + 1 )) ; do - linkversion=${compilers[${i}]} - - [[ $linkversion == $active ]] && \ - compilers[${i}]="${compilers[${i}]} $(highlight '*' )" - done - write_numbered_list "${compilers[@]}" - - # now the libs - libs=( $(find_all_libs) ) - write_list_start "Installed libs:" - for (( i = 0 ; i < ${#libs[@]} ; i = i + 1 )) ; do - [ -f ${SPECSDIR}/${libs[$i]}/${active} ] && \ - libs[${i}]="${libs[${i}]} $(highlight '*' )" - done - write_numbered_list "${libs[@]}" - else - write_kv_list_entry "(none found)" "" - fi -} - - -### set action ### - -describe_set() { - echo "Set active gnat compiler" -} - -# The set action. Parameters: -# $1 - name of profile to set, obligatory, passed by eselect -# $2 - optional, name of env file to generate. Used from gnat.eclass. -do_set() { - if [[ -z ${1} ]] ; then - # no parameter - die -q "You didn't tell me which gnat to use" - fi - - local toset=$(get_name_from_list $1) - if [[ ${toset} == "(not-found)" ]] ; then - die -q "I don't recognise the selection" - fi - - # the action! - # in this implementation simply create an appropriate env file - local active=$(get_current_gnat) - if [[ -z ${2} ]] ; then - local envfile="${ENVDIR}/${MARKER}${toset}" - - # now we need to remove an old env file, which is guaranteed to - # be unique by get_current_gnat above - if [[ -n ${active} ]] ; then - unset_env ${active} - fi - # just for a good measure remove the one we are going to write - unset_env ${toset} - else - local envfile="$2" - fi - - generate_envFile ${toset} ${envfile} - - # force update environment - # should be replaced with "do_action env update" when #172472 gets resolved - env-update &> /dev/null -} - - - -### update action ### -# -# This action regenerates the /etc/env.d file for the current profile. Basically -# the same as set, only it does not take any parameters. It should be called from ebuilds -# installing Ada libs - -describe_update() { - echo "Update active gnat profile picking up new libs." -} - -do_update() { - local toset=$(get_current_gnat) - local envfile="${ENVDIR}/${MARKER}${toset}" - generate_envFile ${toset} ${envfile} - do_action env update &> /dev/null -} - -### unset action ### - -describe_unset() { - echo "Remove settings for currently active gnat" -} - -do_unset() { - local active=$(get_current_gnat) - # check whether we have any profile set before removing anything.. - if [[ -n ${active} ]] ; then - unset_env ${active} - do_action env update &> /dev/null - fi -} |