From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 19EFC1381F3 for ; Fri, 19 Apr 2013 09:38:17 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D2F73E0ABA; Fri, 19 Apr 2013 09:38:13 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 3ECFBE0ABA for ; Fri, 19 Apr 2013 09:38:13 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1685D33DED4 for ; Fri, 19 Apr 2013 09:38:12 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id A7555E4306 for ; Fri, 19 Apr 2013 09:38:10 +0000 (UTC) From: "Cyprien Nicolas" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Cyprien Nicolas" Message-ID: <1366364271.9a5970422cab53c52f27ec6e6c3fb8e941cf02ec.fulax@gentoo> Subject: [gentoo-commits] proj/lisp:master commit in: app-admin/eselect-guile/files/, app-admin/eselect-guile/, ... X-VCS-Repository: proj/lisp X-VCS-Files: app-admin/eselect-guile/ChangeLog app-admin/eselect-guile/eselect-guile-1.1.ebuild app-admin/eselect-guile/eselect-guile-1.2-r1.ebuild app-admin/eselect-guile/eselect-guile-1.2.ebuild app-admin/eselect-guile/files/1.2/guile.eselect app-admin/eselect-guile/files/1.2/guile.eselect.5 app-admin/eselect-guile/files/guile.eselect app-admin/eselect-guile/files/guile.eselect.5 X-VCS-Directories: app-admin/eselect-guile/files/ app-admin/eselect-guile/ app-admin/eselect-guile/files/1.2/ X-VCS-Committer: fulax X-VCS-Committer-Name: Cyprien Nicolas X-VCS-Revision: 9a5970422cab53c52f27ec6e6c3fb8e941cf02ec X-VCS-Branch: master Date: Fri, 19 Apr 2013 09:38:10 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 2b074f5e-ce93-491a-855a-d7571484c498 X-Archives-Hash: 609cf6f9a1ea5788cbf74d1d11019248 commit: 9a5970422cab53c52f27ec6e6c3fb8e941cf02ec Author: Cyprien Nicolas (fulax) fulax fr> AuthorDate: Fri Apr 19 09:32:30 2013 +0000 Commit: Cyprien Nicolas gmail com> CommitDate: Fri Apr 19 09:37:51 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/lisp.git;a=commit;h=9a597042 app-admin/eselect-guile-1.2-r1: Add a call to 'clean' on pkg_prerm Package-Manager: portage-2.2.01.21890-prefix Manifest-Sign-Key: 0x3D79478FBE63A96F --- app-admin/eselect-guile/ChangeLog | 11 +- app-admin/eselect-guile/eselect-guile-1.1.ebuild | 30 --- ...uile-1.2.ebuild => eselect-guile-1.2-r1.ebuild} | 15 +- app-admin/eselect-guile/files/1.2/guile.eselect | 247 -------------------- app-admin/eselect-guile/files/1.2/guile.eselect.5 | 94 -------- app-admin/eselect-guile/files/guile.eselect | 28 ++- app-admin/eselect-guile/files/guile.eselect.5 | 6 +- 7 files changed, 39 insertions(+), 392 deletions(-) diff --git a/app-admin/eselect-guile/ChangeLog b/app-admin/eselect-guile/ChangeLog index b75ff67..d7de2d2 100644 --- a/app-admin/eselect-guile/ChangeLog +++ b/app-admin/eselect-guile/ChangeLog @@ -1,7 +1,15 @@ # ChangeLog for app-admin/eselect-guile -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ +*eselect-guile-1.2-r1 (19 Apr 2013) + + 19 Apr 2013; Cyprien Nicolas (fulax) + +eselect-guile-1.2-r1.ebuild, -eselect-guile-1.1.ebuild, + -eselect-guile-1.2.ebuild, -files/1.2/guile.eselect, + -files/1.2/guile.eselect.5, files/guile.eselect, files/guile.eselect.5: + app-admin/eselect-guile-1.2-r1: Add a call to 'clean' on pkg_prerm + *eselect-guile-1.2 (02 Oct 2012) 02 Oct 2012; Cyprien Nicolas +files/1.2/guile.eselect, @@ -9,4 +17,3 @@ version bump: EAPI 4, fix 'update ifunset' bug (it was ignored currently). Remove 'GUILE_LOAD_PATH' from env.d file, as it breaks the not eselect'd guile version. Drop pkg_prerm phase. - diff --git a/app-admin/eselect-guile/eselect-guile-1.1.ebuild b/app-admin/eselect-guile/eselect-guile-1.1.ebuild deleted file mode 100644 index 7877a19..0000000 --- a/app-admin/eselect-guile/eselect-guile-1.1.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -DESCRIPTION="Manage multiple Guile versions on one system" -HOMEPAGE="http://www.gentoo.org/proj/en/lisp/scheme/" -#SRC_URI="mirror://gentoo/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris" -IUSE="" - -# Versions prior to guile-1.8.8-r2 aren't properly slotted -DEPEND="" -RDEPEND=">=app-admin/eselect-1.2.6 - !"${EROOT}/etc/env.d/50guile" -} - -remove_symlinks() { - # Remove existing symlinks to binaries, man pages, - # m4 file, and the env file (own function) - local f - for f in ${BINARYLIST}; do - rm -f "${EROOT}/usr/bin/${f}" - done - for f in ${MANPAGELIST}; do - rm -f "${EROOT}"/usr/share/man/man1/${f}.1* - done - rm -f "${EROOT}"/usr/share/aclocal/guile.m4 - remove_envfile -} - -set_bin_symlinks() { - # Set symlinks to binaries in /usr/bin/ - local target=${1} f - for f in ${BINARYLIST}; do - # set symlink only if target binary actually exists - if [[ -f ${EROOT}/usr/bin/${f}-${target} ]]; then - ln -s "${f}-${target}" "${EROOT}/usr/bin/${f}" || die \ - "Couldn't set ${f}-${target} ${EROOT}/usr/bin/${f} symlink" - fi - done -} - -set_m4_symlinks() { - # Set symlink to guile.m4 - local target=${1} - if [[ -f ${EROOT}/usr/share/aclocal/guile-${target}.m4 ]]; then - ln -s "guile-${target}.m4" "${EROOT}"/usr/share/aclocal/guile.m4 \ - || die "Couldn't set guile-${target}.m4 guile.m4 symlink" - fi -} - -set_man_symlinks() { - # Set symlinks to man pages - local target=${1} extension f i - for f in ${MANPAGELIST}; do - for i in "${EROOT}"/usr/share/man/man1/${f}-${target}.1*; do - if [[ -f ${i} ]]; then - # target file exists; determine compress extension - extension=${i##*/${f}-${target}.1} - ln -s "${f}-${target}.1${extension}" \ - "${EROOT}/usr/share/man/man1/${f}.1${extension}" - fi - done - done -} - -set_symlinks() { - # Set symlinks to binaries and man pages, update info path - local target=$1 targets major - # target may be specified by its name or its index - if is_number "${target}"; then - # numeric index, find the target's name - targets=( $(find_targets) ) - [[ ${target} -ge 1 && ${target} -le ${#targets[@]} ]] \ - || die -q "Number out of range: ${1}" - target=${targets[target-1]} - fi - - # is the target valid, i.e. does a Guile binary with this name exist? - [[ -f ${EROOT}/usr/bin/${target} ]] \ - || die -q "Target \"${1}\" doesn't appear to be valid!" - - echo "Switching guile to ${target} ..." - remove_symlinks || die -q "Couldn't remove existing symlink" - - major=${target#guile-} - set_bin_symlinks "${major}" - set_m4_symlinks "${major}" - set_man_symlinks "${major}" - set_envfile "${major}" - - # update /etc/profile.env from /etc/env.d files - do_action env update noldconfig - - return 0 -} - -test_for_root() { - # checks if the user has rights to modify /usr/bin/ - [[ -w ${EROOT}/usr/bin ]] || die -q "You need root privileges!" -} - -### show action ### - -describe_show() { - echo "Show the current target of the Guile symlink" -} - -do_show() { - [[ $# -gt 0 ]] && die -q "Too many parameters" - - write_list_start "Current target of Guile symlink:" - if [[ -L ${EROOT}/usr/bin/guile && -e ${EROOT}/usr/bin/guile ]]; then - write_kv_list_entry \ - "$(basename "$(readlink "${EROOT}/usr/bin/guile")")" "" - elif [[ -e ${EROOT}/usr/bin/guile ]]; then - write_kv_list_entry \ - "(not a symlink or target of symlink does not exist)" "" - else - write_kv_list_entry "(unset)" "" - fi -} - -### list action ### - -describe_list() { - echo "List available Guile symlink targets" -} - -do_list() { - [[ $# -gt 0 ]] && die -q "Too many parameters" - - local i targets - targets=( $(find_targets) ) - - for (( i = 0; i < ${#targets[@]}; i++ )); do - # Highlight the currently chosen version - [[ ${targets[i]} = \ - $(basename "$(readlink "${EROOT}/usr/bin/guile")") ]] \ - && targets[i]=$(highlight_marker "${targets[i]}") - done - write_list_start "Available Guile symlink targets:" - write_numbered_list -m "(none found)" "${targets[@]}" -} - -### set action ### - -describe_set() { - echo "Set a new Guile symlink" -} - -describe_set_options() { - echo "target : Target name or number (from 'list' action)" -} - -describe_set_parameters() { - echo "" -} - -do_set() { - [[ -z $1 ]] && die -q "You didn't tell me what to set the symlink to" - [[ $# -gt 1 ]] && die -q "Too many parameters" - test_for_root - - if [[ -e ${EROOT}/usr/bin/guile && ! -L ${EROOT}/usr/bin/guile ]]; then - die -q "${EROOT}/usr/bin/guile exists but is not a symlink" - fi - - set_symlinks "${1}" || die -q "Couldn't set a new symlink" -} - -### update action ### - -describe_update() { - echo "Automatically update the Guile symlink" -} - -describe_update_options() { - echo "ifunset : Do not override currently set version" -} - -do_update() { - [[ -z $1 || $1 = ifunset || $1 = --if-unset ]] || die -q "Usage error" - [[ $# -gt 1 ]] && die -q "Too many parameters" - - [[ $# -eq 1 && -L ${EROOT}/usr/bin/guile ]] && return 0 - - test_for_root - - if [[ -L ${EROOT}/usr/bin/guile ]]; then - # this is not redundant: "update" is called in pkg_postrm() of guile - # and should clean up any dead symlinks if no valid target exists - remove_symlinks || die -q "Couldn't remove existing symlink" - elif [[ -e ${EROOT}/usr/bin/guile ]]; then - die -q "${EROOT}/usr/bin/guile exists but is not a symlink" - fi - - local targets=( $(find_targets) ) - if [[ ${#targets[@]} -gt 0 ]]; then - set_symlinks "${targets[${#targets[@]}-1]}" \ - || die -q "Couldn't set a new symlink" - fi -} - -### Clean action -describe_clean() { - echo "Remove any existing symlinks" -} - -do_clean() { - remove_symlinks -} diff --git a/app-admin/eselect-guile/files/1.2/guile.eselect.5 b/app-admin/eselect-guile/files/1.2/guile.eselect.5 deleted file mode 100644 index 86dbe13..0000000 --- a/app-admin/eselect-guile/files/1.2/guile.eselect.5 +++ /dev/null @@ -1,94 +0,0 @@ -.\" Copyright 2007-2011 Gentoo Foundation -.\" Distributed under the terms of the GNU General Public License v2 -.\" $Id: $ -.\" -.TH guile.eselect 5 "August 2011" "Gentoo Linux" eselect -.SH NAME -guile.eselect \- The Guile management module for Gentoo's eselect -.SH SYNOPSIS -.B eselect guile -.RB [ help | usage | version ] -.br -.B eselect guile list -.br -.B eselect guile set -.I target -.br -.B eselect guile show -.br -.B eselect guile update -.RB [ ifunset ] -.SH DESCRIPTION -.B eselect -is Gentoo's configuration and management tool. It features modules -that care for the individual administrative tasks. -.SH ACTION: LIST -.B eselect guile list -.br -List all installed Guile versions - -# eselect guile list -.br -Available Guile symlink targets: -.br - [1] guile-1.8 - [2] guile-2.0 * -.SH ACTION: SET -.B eselect guile set -.I target -.br -Activate the selected Guile version. -.I target -can be either an identification number given by -.B eselect guile list -or the name of one installed version. -.\" To avoid runtime issues with -.\" incompatible byte-code from the previously selected Emacs version, run -.\" .B emacs-updater -a rebuild -.\" to remerge all needed packages. - -# eselect guile set 1 -.br -Switching guile to guile-1.8 ... -.SH ACTION: SHOW -.B eselect guile show -.br -Print the currently activated Guile version. - -# eselect guile show -.br -Current target of Guile symlink: -.br - emacs-1.8 -.SH ACTION: UPDATE -.B eselect guile update -.RB [ ifunset ] -.br -Update the guile symlink to the last available version. If option -.B ifunset -is given, an existing implementation is not overridden. - -The update process consists in creating symlinks for guile's binaries, -man page and aclocal.m4. It also generates an environment file. -The symlinks concerns: -.br -* /usr/bin/guil[de] and /usr/bin/guile-{config,snarf,tools} binaries; -.br -* /usr/share/aclocal/guile.m4; -.br -* guile(1) man page. -.br -The environment file (/etc/env.d/50guile) defines INFOPATH and -GUILE_LOAD_PATH. - -# eselect guile update -.br -Switching guile to guile-2.0 ... -.SH AUTHORS -Christian Faulhammer -.br -Ulrich Mueller -.SH SEE ALSO -.BR eselect (1) -.SH REVISION -$Id: $ diff --git a/app-admin/eselect-guile/files/guile.eselect b/app-admin/eselect-guile/files/guile.eselect index 6376562..5f323a7 100644 --- a/app-admin/eselect-guile/files/guile.eselect +++ b/app-admin/eselect-guile/files/guile.eselect @@ -1,25 +1,25 @@ -# Copyright 2005-2012 Gentoo Foundation +# Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id: $ # # DOCUMENTATION # Following actions possible -# * show do_show() -# * list do_list() -# * set do_set() -# * update do_update() +# * show do_show() +# * list do_list() +# * set do_set() +# * update do_update() # * clean do_clean() # # Behaviour: # do_show(): -# Checks if /usr/bin/guile is a link and if the target exists, -# if yes, it outputs the currently linked Guile version. -# If it is no symlink, the user is told so, the same if there is -# no /usr/bin/guile or the target does not exist. +# Checks if /usr/bin/guile is a link and if the target exists, +# if yes, it outputs the currently linked Guile version. +# If it is no symlink, the user is told so, the same if there is +# no /usr/bin/guile or the target does not exist. # do_list(): List all available versions of GNU Guile # do_set(): Set a version to be target of the symlink. # do_update(): Set the target to the highest version available -# (optionally: only if not set) +# (optionally: only if not set) # do_clean(): Remove all set symlinks (for pkg_prerm) DESCRIPTION="Manage /usr/bin/guile* versions" @@ -43,11 +43,10 @@ remove_envfile() { rm -f "${EROOT}/etc/env.d/50guile" } -# Define GUILE_LOAD_PATH environment variable in env file set_envfile() { - echo "GUILE_LOAD_PATH=${EPREFIX}/usr/share/guile/$1" >"${EROOT}/etc/env.d/50guile" + # Define INFOPATH environment variable in env file [[ -d ${EROOT}/usr/share/info/guile-$1 ]] || return 1 - echo "INFOPATH=${EPREFIX}/usr/share/info/guile-$1" >>"${EROOT}/etc/env.d/50guile" + echo "INFOPATH=${EPREFIX}/usr/share/info/guile-$1" >"${EROOT}/etc/env.d/50guile" } remove_symlinks() { @@ -218,6 +217,9 @@ describe_update_options() { do_update() { [[ -z $1 || $1 = ifunset || $1 = --if-unset ]] || die -q "Usage error" [[ $# -gt 1 ]] && die -q "Too many parameters" + + [[ $# -eq 1 && -L ${EROOT}/usr/bin/guile ]] && return 0 + test_for_root if [[ -L ${EROOT}/usr/bin/guile ]]; then diff --git a/app-admin/eselect-guile/files/guile.eselect.5 b/app-admin/eselect-guile/files/guile.eselect.5 index 86dbe13..c2be858 100644 --- a/app-admin/eselect-guile/files/guile.eselect.5 +++ b/app-admin/eselect-guile/files/guile.eselect.5 @@ -1,4 +1,4 @@ -.\" Copyright 2007-2011 Gentoo Foundation +.\" Copyright 2007-2013 Gentoo Foundation .\" Distributed under the terms of the GNU General Public License v2 .\" $Id: $ .\" @@ -85,6 +85,10 @@ GUILE_LOAD_PATH. .br Switching guile to guile-2.0 ... .SH AUTHORS +Cyprien Nicolas +.br +This man page is based on eselect-emacs man-page whose authors are: +.br Christian Faulhammer .br Ulrich Mueller