diff options
author | Heinrich Wendel <lanius@gentoo.org> | 2005-03-25 07:27:38 +0000 |
---|---|---|
committer | Heinrich Wendel <lanius@gentoo.org> | 2005-03-25 07:27:38 +0000 |
commit | f44c6a1722c737c05eac7c6e81a5c8b4aeee2a94 (patch) | |
tree | a8f856179a5e5c42618be1ba98f0cece0a99a517 /x11-libs | |
parent | initial commit for bug #68430 (diff) | |
download | gentoo-2-f44c6a1722c737c05eac7c6e81a5c8b4aeee2a94.tar.gz gentoo-2-f44c6a1722c737c05eac7c6e81a5c8b4aeee2a94.tar.bz2 gentoo-2-f44c6a1722c737c05eac7c6e81a5c8b4aeee2a94.zip |
fix upgrading from unslottet version
(Portage version: 2.0.51.19)
Diffstat (limited to 'x11-libs')
-rw-r--r-- | x11-libs/motif-config/ChangeLog | 8 | ||||
-rw-r--r-- | x11-libs/motif-config/Manifest | 16 | ||||
-rw-r--r-- | x11-libs/motif-config/files/digest-motif-config-0.8 | 0 | ||||
-rwxr-xr-x | x11-libs/motif-config/files/motif-config-0.8 | 373 | ||||
-rw-r--r-- | x11-libs/motif-config/motif-config-0.8.ebuild | 52 |
5 files changed, 436 insertions, 13 deletions
diff --git a/x11-libs/motif-config/ChangeLog b/x11-libs/motif-config/ChangeLog index 4723ff7bf42f..a56d7db7017d 100644 --- a/x11-libs/motif-config/ChangeLog +++ b/x11-libs/motif-config/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for x11-libs/motif-config # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-libs/motif-config/ChangeLog,v 1.11 2005/03/24 18:26:52 lanius Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-libs/motif-config/ChangeLog,v 1.12 2005/03/25 07:27:38 lanius Exp $ + +*motif-config-0.8 (25 Mar 2005) + + 25 Mar 2005; Heinrich Wendel <lanius@gentoo.org> +files/motif-config-0.8, + +motif-config-0.8.ebuild: + fix upgrading from unslottet version *motif-config-0.7 (24 Mar 2005) diff --git a/x11-libs/motif-config/Manifest b/x11-libs/motif-config/Manifest index f7ce3cec0a26..1dc85c352b8e 100644 --- a/x11-libs/motif-config/Manifest +++ b/x11-libs/motif-config/Manifest @@ -1,22 +1,14 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - MD5 33bcba9885d6419bbb4e22eed35676ab motif-config-0.6.ebuild 1239 -MD5 6a4afb867e5879f7f5e738bfdb52266c ChangeLog 2424 +MD5 b57f5a2346d07273acd7e675d3f5d8cc motif-config-0.8.ebuild 1239 +MD5 215c5b7435cdfb4f6634a1e3d6abbf7f ChangeLog 2601 MD5 503ccb1138f9c49f0855884d830988a6 metadata.xml 253 MD5 b57f5a2346d07273acd7e675d3f5d8cc motif-config-0.7.ebuild 1239 MD5 76af3b1b80127315546ef5ea7f5875e1 files/bindings.tbz2 5342 MD5 ea7dd0dd1e039ef38db246c23f4d9422 files/motif-config-0.6 7347 -MD5 850befc48daae3dd492f9e263c6dfd4a files/motif-config-0.7 7014 +MD5 cb77fdbcc6380097ea840bea7d9672dd files/motif-config-0.8 7126 MD5 beb566e653a0a239409d76dc502c87e1 files/system.mwmrc 4358 MD5 aaf04376f7011a2f68b7961100f611fb files/Mwm.defaults 536 MD5 b4cca983e552045606f845e17a00e1d6 files/bitmaps.tbz2 3165 MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-motif-config-0.6 0 MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-motif-config-0.7 0 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.1 (GNU/Linux) - -iD8DBQFCQwaeevY57Fted3ERAjtnAJ9CdFXcdp5tXD0TCY17yT1zvYF1wACfVnL6 -3bUzXHJS5c3Y3mgLAUhBjAg= -=LHFo ------END PGP SIGNATURE----- +MD5 d41d8cd98f00b204e9800998ecf8427e files/digest-motif-config-0.8 0 diff --git a/x11-libs/motif-config/files/digest-motif-config-0.8 b/x11-libs/motif-config/files/digest-motif-config-0.8 new file mode 100644 index 000000000000..e69de29bb2d1 --- /dev/null +++ b/x11-libs/motif-config/files/digest-motif-config-0.8 diff --git a/x11-libs/motif-config/files/motif-config-0.8 b/x11-libs/motif-config/files/motif-config-0.8 new file mode 100755 index 000000000000..ddb2199277d5 --- /dev/null +++ b/x11-libs/motif-config/files/motif-config-0.8 @@ -0,0 +1,373 @@ +#!/bin/bash +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# based on gcc-config by Martin Schlemmer <azarah@gentoo.org +# Author: Heinrich Wendel <lanius@gentoo.org> + +umask 022 + +PROFILE_PATH=/usr/@@LIBDIR@@/motif +CONFIG_FILE=${PROFILE_PATH}/current + +usage() { +cat << "USAGE_END" +Usage: motif-config [option] [profile] +Change the current motif profile, or give info about profiles. + +Options: + + -c, --get-current-profile Print current used motif profile. + + -l, --list-profiles Print a list of available profiles. + + -s, --set-profile Set the current profile. + + -L, --get-lib-path Print path where libraries of the given/current + profile are located. + + -I, --get-inc-path Print path where includes of the given/current + profile are located. + + --libs Print link flags for the given/current + profile. + + --cflags Print compilation flags for the given/current + profile. + + --install Install the given profile. + + --uninstall Uninstall the given profile. + + --start-install Start installation of new Motif version + + --finish-install Finish installation of new Motif version + +USAGE_END + exit $1 +} +[[ $# -lt 1 ]] && usage 1 +[[ $# -gt 2 ]] && usage 1 + +# redefine eerror/einfo to remove baselayout dep +# to make ppc-macos people happy +eerror() { + echo -e " \e[31;01m*\e[0m $*"; + exit 1 +} +einfo() { + echo -e " \e[32;01m*\e[0m $*"; +} + +_check_root() { + if [[ "$(id -u)" -ne 0 ]] ; then + eerror "$0: Must be root." + exit 1 + fi +} + +_activate_profile() { + _check_root + + new=${1} + # libs + for file in `ls /usr/@@LIBDIR@@/${new}/ | grep lib`; do + rm -f /usr/@@LIBDIR@@/${file} + ln -s /usr/@@LIBDIR@@/${new}/${file} /usr/@@LIBDIR@@/${file} + done + # includes + for file in `ls /usr/include/${new}/`; do + rm -fR /usr/include/${file} + ln -s /usr/include/${new}/${file} /usr/include/${file} + done + # binaries + for file in `ls /usr/@@LIBDIR@@/${new} | grep -v lib`; do + rm -f /usr/bin/${file} + ln -s /usr/@@LIBDIR@@/${new}/${file} /usr/bin/${file} + done + # man pages + for file in `find /usr/share/man -regex ".*-${new}\..x?.gz"`; do + rm -f ${file/-${new}/} + ln -s ${file} ${file/-${new}/} + done + + # set new profile as default + cat ${PROFILE_PATH}/${new} > ${CONFIG_FILE} + + return $? +} + +_deactivate_profile() { + _check_root + + current=`cat ${CONFIG_FILE} 2>/dev/null` + + if [ -z "$current" ]; then + return 0 + fi + + # libs + for file in `ls /usr/@@LIBDIR@@/${current} | grep lib`; do + rm -f /usr/@@LIBDIR@@/${file} + done + # includes + for file in `ls /usr/include/${current}/`; do + rm -f /usr/include/${file} + done + # binaries + for file in `ls /usr/@@LIBDIR@@/${current} | grep -v lib`; do + rm -f /usr/bin/${file} + done + # man pages + for file in `find /usr/share/man -regex ".*-${current}\..x?.gz"`; do + rm -f ${file/-${current}/} + done + + rm -f ${CONFIG_FILE} + + return $? +} + +switch_profile() { + _check_root + + if [ -n "$1" ]; then + if [ ! -e ${PROFILE_PATH}/${1} ]; then + eerror "$0: no such profile ${1}" + else + _deactivate_profile + _activate_profile $1 + fi + else + for y in `ls ${PROFILE_PATH} | grep -v removed | grep -v current | sort -r`; do + _deactivate_profile + _activate_profile ${y} + break + done + if [ -z "${y}" ]; then + _deactivate_profile + eerror "$0: no profile to activate" + fi + fi + + einfo "$0: New default Profile is: `cat ${CONFIG_FILE}`" + + return $? +} + +get_current_profile() { + cat ${CONFIG_FILE} 2> /dev/null +} + +list_profiles() { + i=1 + current=`cat ${CONFIG_FILE} 2>/dev/null` + for y in `ls ${PROFILE_PATH} | grep -v current | grep -v removed`; do + output=`cat ${PROFILE_PATH}/${y}`; + output="[${i}] $output"; + if [ "${y}" = "${current}" ]; then + output="${output} *" + fi + echo "$output" + i=$((i + 1)) + done + exit $? +} + +get_lib_path() { + if [ "$1" != "" ]; then + profile=${1} + else + profile="current" + fi + name=`cat ${PROFILE_PATH}/${profile} 2> /dev/null` + if [ $? -eq 1 ]; then + eerror "$0: No such profile: $profile" + else + echo "/usr/@@LIBDIR@@/${name}/" + exit 0 + fi +} + +get_inc_path() { + if [ "$1" != "" ]; then + profile=${1} + else + profile="current" + fi + name=`cat ${PROFILE_PATH}/${profile} 2> /dev/null` + if [ $? -eq 1 ]; then + eerror "$0: No such profile: $profile" + else + echo "/usr/include/${name}/" + exit 0 + fi +} + +get_cflags() { + if [ "$1" != "" ]; then + profile=${1} + else + profile="current" + fi + name=`cat ${PROFILE_PATH}/${profile} 2> /dev/null` + if [ $? -eq 1 ]; then + eerror "$0: No such profile: $profile" + else + echo "-I/usr/include/${name}/" + exit 0 + fi +} + +get_libs() { + if [ "$1" != "" ]; then + profile=${1} + else + profile="current" + fi + name=`cat ${PROFILE_PATH}/${profile} 2> /dev/null` + if [ $? -eq 1 ]; then + eerror "$0: No such profile: $profile" + else + echo "-L/usr/@@LIBDIR@@/${name}/" + exit 0 + fi +} + +install_profile() { + _check_root + + # give info + einfo "$0: Installing Profile: ${1}" + + # create profile + echo ${1} > ${PROFILE_PATH}/${1} + + # create env.d entry + echo "LDPATH=/usr/lib/${1}" > /etc/env.d/15${1} + + # make it default if no profile is activated + if [ ! -e $CONFIG_FILE ]; then + switch_profile ${1} + fi + + exit $? +} + +uninstall_profile() { + _check_root + + # give info + einfo "$0: Uninstalling Profile: ${1}" + + # remove profile + rm -f ${PROFILE_PATH}/${1} 2> /dev/null + + # remove env.d entry + rm -f /etc/env.d/15${1} + + # activate next profile if non is activated + if [ "`cat $CONFIG_FILE`" == "${1}" ]; then + switch_profile + fi + + exit $? +} + +start_installation() { + einfo "Starting installation of a new motif version." + einfo "Note: You can't use any motif app during this process." + + if [ -f ${CONFIG_FILE} ]; then + cat ${CONFIG_FILE} > ${PROFILE_PATH}/removed + + _deactivate_profile + fi +} + +finish_installation() { + einfo "Finishing installation." + einfo "Note: You can now use your motif apps again." + + if [ -f ${PROFILE_PATH}/removed ]; then + _activate_profile `cat ${PROFILE_PATH}/removed` + rm -f ${PROFILE_PATH}/removed + fi +} + +for x in "$@"; do + case "${x}" in + -c|--get-current-profile) + [[ $# -ne 1 ]] && usage 1 + get_current_profile + ;; + + -l|--list-profiles) + [[ $# -ne 1 ]] && usage 1 + list_profiles + ;; + + -s|--set-profile) + [[ $# -ne 2 ]] && usage 1 + switch_profile $2 + exit $? + ;; + + -L|--get-lib-path) + [[ $# -gt 2 ]] && usage 1 + get_lib_path $2 + ;; + + -I|--get-inc-path) + [[ $# -gt 2 ]] && usage 1 + get_inc_path $2 + ;; + + --cflags) + [[ $# -gt 2 ]] && usage 1 + get_cflags $2 + ;; + + --libs) + [[ $# -gt 2 ]] && usage 1 + get_libs $2 + ;; + + --install) + [[ $# -ne 2 ]] && usage 1 + install_profile $2 + ;; + + --uninstall) + [[ $# -ne 2 ]] && usage 1 + uninstall_profile $2 + ;; + + --start-install) + [[ $# -ne 1 ]] && usage 1 + start_installation + ;; + + --finish-install) + [[ $# -ne 1 ]] && usage 1 + finish_installation + ;; + + -h|--help) + usage 0 + ;; + + -v|--version) + echo "motif-config-0.7" + exit 0 + ;; + + -*) + usage 1 + ;; + + *) + usage 1 + ;; + + esac +done diff --git a/x11-libs/motif-config/motif-config-0.8.ebuild b/x11-libs/motif-config/motif-config-0.8.ebuild new file mode 100644 index 000000000000..c8f939e3311f --- /dev/null +++ b/x11-libs/motif-config/motif-config-0.8.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/motif-config/motif-config-0.8.ebuild,v 1.1 2005/03/25 07:27:38 lanius Exp $ + +inherit multilib + +DESCRIPTION="Utility to change the default Motif library" +HOMEPAGE="http://www.gentoo.org/" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~ppc-macos ~sparc ~x86" +IUSE="" + +DEPEND="" + +RDEPEND="app-shells/bash" + +src_unpack(){ + einfo "nothing to unpack" +} + +src_compile() { + einfo "nothing to compile" +} + +src_install () { + exeinto /usr/bin + newexe ${FILESDIR}/${P} motif-config + dosed "s:@@LIBDIR@@:$(get_libdir):g" /usr/bin/motif-config + + # for profile + dodir /usr/$(get_libdir)/motif + keepdir /usr/$(get_libdir)/motif + + # bitmaps + dodir /usr/include/X11/bitmaps + tar -xjf ${FILESDIR}/bitmaps.tbz2 -C ${D}/usr/include/X11/bitmaps + # bindings + dodir /usr/$(get_libdir)/X11/bindings + tar -xjf ${FILESDIR}/bindings.tbz2 -C ${D}/usr/$(get_libdir)/X11/bindings + + # mwm default config + insinto /etc/X11/app-defaults + doins ${FILESDIR}/Mwm.defaults + + insinto /etc/X11/mwm + doins ${FILESDIR}/system.mwmrc + + dosym /etc/X11/mwm /usr/$(get_libdir)/X11/mwm +} |