commit:     c0ff0e5d25b78f612b26b63d0da31c69f6a034d4
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sat Jan  2 19:16:31 2021 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sat Jan  2 19:16:31 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=c0ff0e5d

scripts: remove old/obsolete scripts

- eupdate: dead the moment gx86 was migrated to git
- keyword-check: I frankly don't recall what it is/was for

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 scripts/eupdate.in       | 831 -----------------------------------------------
 scripts/keyword-check.rb |  51 ---
 2 files changed, 882 deletions(-)

diff --git a/scripts/eupdate.in b/scripts/eupdate.in
deleted file mode 100755
index 1726cbec7d..0000000000
--- a/scripts/eupdate.in
+++ /dev/null
@@ -1,831 +0,0 @@
-#!/usr/bin/env bash
-# Copyright 2006-2014 Gentoo Foundation; Distributed under the GPL v2
-
-# <ha...@gentoo.org> -- 2014-08-04
-# do numeric comparison on calculated rev-diff, as [[ 0 < -9 ]] is true
-# <grob...@gentoo.org> -- 2010-10-16
-# treat ChangeLogs special, such that newer repoman that update the
-# ChangeLog can just do so -- we try to 'prepend only' avoiding
-# conflicts
-# <a...@gentoo.org> -- 2010-01-14
-# allow eclasses to be found in MTREEDIR if not in PTREEDIR
-# <zu...@cs.tu-berlin.de> -- 2009-08-11
-# allow to use web-based viewcvs instead of anonymous CVS access
-# <grob...@gentoo.org> -- 2008-06-17
-# switch to fully sourcing ebuilds (and their eclasses) in fetch_files
-# such that we catch more cases in which patches can be referenced
-# <grob...@gentoo.org> -- 2007-11-27
-# ignore live CVS ebuilds (version 9999)
-# <grob...@gentoo.org> -- 2007-11-11
-# add some dummy implementations of often used functions to silence bash
-# some more
-# <grob...@gentoo.org> -- 2007-11-09
-# also take notion of local variables for expansion in fetch_files
-# <grob...@gentoo.org> -- 2007-10-08
-# added support for _p in versions after _rc, _pre, etc.
-# sourcing the versionator eclass when being used now for better
-# expansion of variables in fetch_files
-# <grob...@gentoo.org> -- 2007-09-24
-# added support for all P* variables in fetch_files expansion, avoided
-# getting bash errors due to unterminated quotes
-# <grob...@gentoo.org> -- 2007-09-12
-# performance improvements by avoiding comparing ebuilds to non-ebuilds
-# when looking for updates, and by avoiding fork/execs for cut and echo
-# in the version comparator function
-# <grob...@gentoo.org> -- 2007-03-20
-# also update alpha, beta, pre, p, etc. instead of only revisions.
-# Basically everything which is on top of the 'base' version number
-# should be upgraded always.
-# <grob...@gentoo.org> -- 2007-02-08
-# when adding a new version, also try and copy all extra files from
-# FILESDIR.  Also when invoked from an empty directory properly deal
-# with "missing" files, so new files are copied.
-# <grob...@gentoo.org> -- 2006-12-24
-# support for inter-revisions (-r01.1), which are also ignored when
-# comparing to the main tree
-# <grob...@gentoo.org> -- 2006-11-03
-# let eapify figure out what should be done to a file.  This requires
-# the extension of the file to be retained in the temp location, but
-# afterwards it works nicely for eclasses and ebuilds, as well as
-# ChangeLogs.
-# <grob...@gentoo.org> -- 2006-09-22
-# eupdate: a not yet fully complete bucket of voodoo to sync a the
-# prefix tree with the mainline tree.  Strategies followed are largerly
-# based on cvs revision numbers and diffs between those revisions.  For
-# the real internals, please look at the comments below in the code.  In
-# general, this script checks if an ebuild contains the most recent
-# changes to it, and if there is a newer ebuild available.  In both
-# cases (cross) diffing techniques are used to maintain the manually
-# made changes.
-#
-# This script doesn't run out of the box, you have to feed it some paths
-# so it can do it's magic stuff.  Also, you have to be a gentoo
-# developer with cvs access.  (Or when anoncvs is available, every user
-# can do it.)  For your convenience it is intended that you rename this
-# file to something without the .in and change the paths below.
-
-# Main Tree Directory, an rsynced portage tree is fine
-[[ -z $MTREEDIR ]] && MTREEDIR='/path/to/rsync-gentoo-x86'
-# Prefix offset
-[[ -z $EPREFIX ]] && EPREFIX=$(portageq envvar EPREFIX)
-# Prefix Tree Directory
-[[ -z $PTREEDIR ]] && PTREEDIR="`cd ${EPREFIX}/usr/portage && pwd -P`"
-# How to reach the CVS server for retrieving revision diffs, devs can
-# use their ssh access for the most up-to-date tree.  You can use the
-# anonymous CVS (:pserver:anonym...@anoncvs.gentoo.org:/var/cvsroot) or
-# HTTP-based webcvs (http://sources.gentoo.org/viewcvs.py).  We default
-# to the first since it should be less stressful for the server.
-[[ -z $CVSROOT ]] && 
CVSROOT=':pserver:anonym...@anoncvs.gentoo.org:/var/cvsroot'
-
-# Don't touch this.  You really don't want to.
-CVSMODULE='gentoo-x86'
-# Voodoo to figure out what package you're currently messing with
-EPACKAGE="`pwd -P`"; EPACKAGE=${EPACKAGE#*${PTREEDIR}/}
-
-[[ -e "${EPREFIX}"/etc/init.d/functions.sh ]] \
-       && source "${EPREFIX}"/etc/init.d/functions.sh \
-       || echo "!!! cannot find functions.sh !!!"
-
-[[ -z $DO_INDENT ]] || RC_INDENTATION=$DO_INDENT
-
-# file used for subshell communication (in /tmp, so swap on Solaris)
-gf=/tmp/eupdate.subshell.$$
-
-# returns the CVS revision number from the $Header
-get_cvsversion() {
-       if [[ -z $1 ]] ; then
-               echo 0
-               return
-       fi
-
-       ver=`egrep '(^|[^\\])\\\$(Header|Id):' "$1" | egrep -m1 -o "v [0-9.]+" 
| head -n1`
-       if [[ $ver == "" ]] ; then
-               echo 0
-               return
-       fi
-       echo ${ver#v }
-}
-
-# Comparator for ebuild version strings.  Returns 0 if both arguments
-# are equal, a number less then 0 if the first argument is smaller than
-# the second, and a number greater then 0 otherwise.  Arguments may be
-# up to full paths to the bare version string only.
-# It is possible to deduce what the largest difference between the two
-# given versions is, by considering the following on the absolute return
-# value: 10000 < x < 0 -> main version, where 1 is a difference in
-# the major, 10 a difference in the minor, etc. 100000 < x < 10000 ->
-# suffix, 1000000 < x < 100000 -> revision.
-cmp_ebuild_ver() {
-       # get the bare version, if not already
-       local l=$(get_ebuildversion $1)
-       local r=$(get_ebuildversion $2)
-
-       if [[ -z $l ]] && [[ -z $r ]]; then
-               echo 0
-               return
-       elif [[ ! -z $l ]] && [[ -z $r ]] ; then
-               echo 1
-               return
-       fi
-
-       local lver=${l%%-*}
-       local lrev=${l#${lver}} ; lrev=${lrev#-}
-       local t=$lver
-       lver=${lver%%_*}
-       local lsuf=${t#${lver}} ; lsuf=${lsuf#_}
-
-       local rver=${r%%-*}
-       local rrev=${r#${rver}} ; rrev=${rrev#-}
-       t=$rver
-       rver=${rver%%_*}
-       local rsuf=${t#${rver}} ; rsuf=${rsuf#_}
-
-       local cnt=1
-       # start "eating" the version from the left, comparing the numbers,
-       # following an exit-early approach
-       while [[ $lver != "" ]] || [[ $rver != "" ]] ; do
-               # get the "head" component
-               local la=${lver%%.*}
-               local ra=${rver%%.*}
-               # unfortunately also characters next to numbers can appear in
-               # the version number, 4a is considered to be smaller than 33
-               local lan=${la%%[a-zA-Z]*}
-               local ran=${ra%%[a-zA-Z]*}
-
-               # deal with 1.0301 < 1.30
-               while [[ ${lan} == 0* && ${ran} == 0* ]] ; do
-                       lan=${lan#0}
-                       ran=${ran#0}
-               done
-               if [[ ${lan} == 0* ]] ; then
-                       [[ -z ${ran} ]] && echo ${cnt} || echo -${cnt}
-                       return
-               elif [[ ${ran} == 0* ]] ; then
-                       [[ -z ${lan} ]] && echo -${cnt} || echo ${cnt}
-                       return
-               fi
-
-               t=$((lan - ran))
-               if (( ${t} != 0 )) ; then
-                       (( $t > 9 )) && t=9
-                       (( $t < -9 )) && t=-9
-                       echo $((t * cnt))
-                       return
-               else
-                       # perform string equality... should work
-                       if [[ ${la} < ${ra} ]] ; then
-                               echo $((-1 * cnt))
-                               return
-                       elif [[ ${la} > ${ra} ]] ; then
-                               echo $cnt
-                               return
-                       fi
-               fi
-
-               # remove the part we processed (and was equal)
-               lver=${lver#${la}}
-               rver=${rver#${ra}}
-               # strip leading dot (if any)
-               lver=${lver#.}
-               rver=${rver#.}
-
-               (( $cnt < 1000 )) && cnt=$((cnt * 10))
-       done
-
-       # the main version components are equal, dive into the suffices
-       # we need to treat _p special, as it can occur with the other suffices
-
-       # suffix precedence rules:
-       # alpha
-       # beta
-       # pre
-       # rc
-       # (none)
-       # p
-
-       cnt=10000
-       local lan=0
-       case $lsuf in
-               alpha*)
-                       lan=-1
-                       lsuf=${lsuf#alpha}
-               ;;
-               beta*)
-                       lan=-2
-                       lsuf=${lsuf#beta}
-               ;;
-               pre*)
-                       lan=-3
-                       lsuf=${lsuf#pre}
-               ;;
-               rc*)
-                       lan=-4
-                       lsuf=${lsuf#rc}
-               ;;
-               p*)
-                       lan=-6
-                       lsuf=${lsuf#p}
-               ;;
-               *)
-                       lan=-5
-               ;;
-       esac
-
-       local ran=0
-       case $rsuf in
-               alpha*)
-                       ran=-1
-                       rsuf=${rsuf#alpha}
-               ;;
-               beta*)
-                       ran=-2
-                       rsuf=${rsuf#beta}
-               ;;
-               pre*)
-                       ran=-3
-                       rsuf=${rsuf#pre}
-               ;;
-               rc*)
-                       ran=-4
-                       rsuf=${rsuf#rc}
-               ;;
-               p*)
-                       ran=-6
-                       rsuf=${rsuf#p}
-               ;;
-               *)
-                       ran=-5
-               ;;
-       esac
-
-       t=$((lan - ran))
-       if (( ${t} != 0 )) ; then
-               echo $((-t * cnt))
-               return
-       fi
-
-       # if lsuf or rsuf starts with a 0, bash thinks it's an octal number
-       if [[ ${lsuf} == 0* || ${rsuf} == 0* ]] ; then
-               lsuf="1${lsuf}"
-               rsuf="1${rsuf}"
-       fi
-
-       lsuf=${lsuf:-0}
-       rsuf=${rsuf:-0}
-       t=$((${lsuf%_p*} - ${rsuf%_p*}))
-       if (( ${t} != 0 )) ; then
-               (( $t > 9 )) && t=9
-               (( $t < -9 )) && t=-9
-               echo $((t * cnt))
-               return
-       fi
-       # we may have a _p in the suffices now, need to compare those
-       case ${lsuf}:${rsuf} in
-               *_p*:*_p*)
-                       t=$((${lsuf#*_p} - ${rsuf#*_p}))
-                       if (( ${t} != 0 )) ; then
-                               (( $t > 9 )) && t=9
-                               (( $t < -9 )) && t=-9
-                               echo $((t * cnt))
-                               return
-                       fi
-               ;;
-               *_p*:*)
-                       echo $cnt
-                       return
-               ;;
-               *:*_p*)
-                       echo -$cnt
-                       return
-               ;;
-       esac
-
-       # suffices were equal too, now lets see the revision
-
-       cnt=100000
-       lrev=${lrev#r}
-       rrev=${rrev#r}
-       lsrev=0
-       rsrev=0
-       
-       if [[ ${lrev:0:1} == "0" ]] ; then
-               lsrev=${lrev/*./}
-               lrev=${lrev:1}
-               lrev=${lrev/.*/}
-       fi
-       if [[ ${rrev:0:1} == "0" ]] ; then
-               rsrev=${rrev/*./}
-               rrev=${rrev:1}
-               rrev=${rrev/.*/}
-       fi
-
-       t=$((lrev - rrev))
-       (( $t == 0 )) && t=$((lsrev - rsrev))
-       (( $t > 9 )) && t=9
-       (( $t < -9 )) && t=-9
-       echo $((t * cnt))
-}
-
-get_ebuildversion() {
-       if [[ -z $1 ]] ; then
-               return
-       fi
-
-       # strip extension
-       t=${1%.ebuild}
-       # abort if this is not an ebuild
-       if [[ $t == $1 ]] ; then
-               return
-       fi
-       # strip package name
-       t=${t#*-}
-       # sometimes there are dashes in the package name
-       while [[ ${t:0:1} < "0" || ${t:0:1} > "9" ]] ; do
-               [[ $t != ${t#*-} ]] \
-                       && t=${t#*-} \
-                       || break
-       done
-
-       echo ${t}
-}
-
-cross_diff() {
-       mver=$(get_ebuildversion $1)
-       pver=$(get_ebuildversion $2)
-       # $1 is just somewhere, $2 must be local, mte becomes local $1
-       mte=${1##*/}
-       pte=$2
-       # get real main tree corresponding version
-       if [[ ${pte/-r0/-r} == $pte ]] ; then
-               mypte=$pte
-       else
-               # normalise version, so we compare against the original
-               # version from the main tree
-               mypte=${pte%.*.ebuild}.ebuild
-               mypte=${mypte/-r0/-r}
-               mypte=${mypte/-r.ebuild/.ebuild}
-               mypte=${mypte/-r0.ebuild/.ebuild}
-       fi
-       mtecv=$(get_cvsversion $1)
-       ptecv=$(get_cvsversion $2)
-       ewarn "new version in main tree: ${mver} [${pver}] ... cross diff from 
$ptecv to $mtecv"
-       # checkout both original versions and make the diffs,
-       # ignoring keywords
-       tmp="tmp.${package##*.}"
-       if [[ ${CVSROOT} == "http://"* ]] ; then
-               wget -q -O /var/tmp/$mypte-$ptecv.$tmp \
-                       "${CVSROOT}/${CVSMODULE}/${EPACKAGE}/$mypte?rev=$ptecv"
-               wget -q -O /var/tmp/$mte-$mtecv.$tmp \
-                       "${CVSROOT}/${CVSMODULE}/${EPACKAGE}/$mte?rev=$mtecv"
-       else
-               cvs -Q -d"${CVSROOT}" \
-                       checkout -r$ptecv -p ${CVSMODULE}/${EPACKAGE}/$mypte \
-                       > /var/tmp/$mypte-$ptecv.$tmp
-               cvs -Q -d"${CVSROOT}" \
-                       checkout -r$mtecv -p ${CVSMODULE}/${EPACKAGE}/$mte \
-                       > /var/tmp/$mte-$mtecv.$tmp
-       fi
-       # create the new file to patch against
-       cp $pte $mte
-       # Sanitise the $Header line, because it may differ being in the
-       # Attic or something.  Use version of main tree, to keep updates
-       # working.
-       sed -i \
-               -e 's|^# \$Header:.*$|'"`egrep '^# \\\$Header: ' 
/var/tmp/$mte-$mtecv.$tmp`"'|' \
-               $mte /var/tmp/$mypte-$ptecv.$tmp
-       # make KEYWORDS void in the diff
-       sed -i \
-               -e 's|^KEYWORDS=.*$|'"$(egrep '^KEYWORDS=' $pte | head -n1)"'|' 
\
-               /var/tmp/$mypte-$ptecv.$tmp /var/tmp/$mte-$mtecv.$tmp
-       # destroy changes (hopefully) with the prefixed version by eapifying
-       eapify -e /var/tmp/$mypte-$ptecv.$tmp /var/tmp/$mte-$mtecv.$tmp > 
/dev/null
-       # (attempt to) do it!
-       diff -u /var/tmp/$mypte-$ptecv.$tmp /var/tmp/$mte-$mtecv.$tmp \
-               | patch --no-backup-if-mismatch $mte
-       ret=$?
-       rm /var/tmp/$mypte-$ptecv.$tmp /var/tmp/$mte-$mtecv.$tmp
-       # try to get new patches and stuff
-       fetch_files $mte
-       return $ret
-}
-
-revision_diff() {
-       local mtecv=$1
-       local ptecv=$2
-       local package=$3
-       local pfile=$4
-       # Gentoo never increments the major, and branches are not
-       # allowed, so we can make things easy and only use the minor
-       if [[ ${mtecv#1.} -eq ${ptecv#1.} ]] ; then
-               return
-       elif [[ ${mtecv#1.} -gt ${ptecv#1.} ]] ; then
-               echo "out-of-date, applying diff -r$ptecv -r$mtecv"
-               # checkout both original versions and make the diffs,
-               # ignoring keywords
-               local tmp="tmp.${package##*.}"
-               if [[ ${CVSROOT} == "http://"* ]] ; then
-                       wget -q -O /var/tmp/$package-$ptecv.$tmp \
-                               
"${CVSROOT}/${CVSMODULE}/${EPACKAGE}/$package?rev=$ptecv"
-                       wget -q -O /var/tmp/$package-$mtecv.$tmp \
-                               
"${CVSROOT}/${CVSMODULE}/${EPACKAGE}/$package?rev=$mtecv"
-               else
-                       cvs -Q -d"${CVSROOT}" \
-                               checkout -r$ptecv -p 
${CVSMODULE}/${EPACKAGE}/$package \
-                               > /var/tmp/$package-$ptecv.$tmp
-                       cvs -Q -d"${CVSROOT}" \
-                               checkout -r$mtecv -p 
${CVSMODULE}/${EPACKAGE}/$package \
-                               > /var/tmp/$package-$mtecv.$tmp
-               fi
-               # make KEYWORDS void in the diff
-               [[ ${package##*.} == "ebuild" ]] && sed -i \
-                       -e 's|^KEYWORDS=.*$|'"$(egrep '^KEYWORDS=' $pfile | 
head -n1)"'|' \
-                       /var/tmp/$package-$mtecv.$tmp 
/var/tmp/$package-$ptecv.$tmp
-               if [[ ${package} != "ChangeLog" ]] ; then
-                       # destroy changes (hopefully) with the prefixed version 
by eapifying
-                       eapify /var/tmp/$package-$ptecv.$tmp 
/var/tmp/$package-$mtecv.$tmp > /dev/null
-                       # if the file was checked out by ecopy from the web, 
correct the
-                       # header so we don't get conflicts because of that
-                       sed -i -e '/^# 
$Header:/s:/var/www/viewcvs.gentoo.org/raw_cvs:/var/cvsroot:' \
-                               $pfile
-                       # show what's going to change
-                       diff -U 1 /var/tmp/$package-$ptecv.$tmp 
/var/tmp/$package-$mtecv.$tmp
-                       local chng=$?
-                       # (attempt to) do it!
-                       diff -u /var/tmp/$package-$ptecv.$tmp 
/var/tmp/$package-$mtecv.$tmp \
-                               | patch --no-backup-if-mismatch $pfile
-                       local ret=$?
-                       # try to get new patches and stuff
-                       fetch_files $pfile
-               else
-                       # treat ChangeLogs different, so we can have appends 
both in
-                       # gx86 and Prefix (repoman insists)
-
-                       # first zap the headers, so we don't get any changes 
there
-                       sed -i \
-                               -e '1c\# ChangeLog for '"${EPACKAGE}" \
-                               -e '2c\# Copyright 1999-'"$(date +%Y)"' Gentoo 
Foundation; Distributed under the GPL v2' \
-                               /var/tmp/$package-$mtecv.$tmp
-                       {
-                               echo "@@ -1,3 +1,3 @@"
-                               head -n3 /var/tmp/$package-$ptecv.$tmp | sed -e 
's/^/-/'
-                               head -n3 $pfile | sed -e 's/^/+/'
-                       } | patch -r - --no-backup-if-mismatch 
/var/tmp/$package-$ptecv.$tmp
-                       
-                       # then just take the first hunk, nothing more
-                       diff -U 1 /var/tmp/$package-$ptecv.$tmp 
/var/tmp/$package-$mtecv.$tmp | sed -e '4,$s/^@@ .*$/REMOVEMEXXXXXX/' | sed -e 
'/REMOVEMEXXXXXX/,$d'
-                       local chng=$?
-                       diff -U 0 /var/tmp/$package-$ptecv.$tmp 
/var/tmp/$package-$mtecv.$tmp | \
-                               sed -e '4,$s/^@@ .*$/REMOVEMEXXXXXX/' | \
-                               sed -e '/REMOVEMEXXXXXX/,$d' | \
-                               patch --no-backup-if-mismatch $pfile
-                       local ret=$?
-               fi
-               [[ $ret == 0 ]] && ret=$chng
-               rm /var/tmp/$package-$ptecv.$tmp /var/tmp/$package-$mtecv.$tmp
-               return $ret
-       fi
-}
-
-fetch_files() {
-       local mver=$(get_ebuildversion $1)
-       local pn=${EPACKAGE##*/}
-       local pv=${mver%-r*}
-       local pr=${mver#${pv}} ; pr=${pr#-} ; pr=${pr:-r0}
-       local pf=${pn}-${mver}
-       local p=$pn-$pv
-       local t=""
-
-       # ebuild.sh and friends provided often occurring funcs
-       local funcs='
-       EXPORT_FUNCTIONS() { :; }
-       has() { :; }
-       hasq() { :; }
-       use() { :; }
-       use_enable() { :; }
-       use_with() { :; }
-       addwrite() { :; }
-       addpredict() { :; }
-       debug-print-function() { :; }
-       debug-print() { :; }
-       inherit() {
-               for p in $*; do
-                       if [[ -f '"${PTREEDIR}"'/eclass/${p}.eclass ]]; then
-                               source '"${PTREEDIR}"'/eclass/${p}.eclass
-                       else
-                               source '"${MTREEDIR}"'/eclass/${p}.eclass
-                       fi
-               done
-       }
-       :'
-
-       # Find all "referenced" files from/to FILESDIR.  We keep ${FILESDIR}
-       # in, to just use a bash eval on what we found to get the right
-       # path.
-       eindent
-       sed \
-               -e '/FILESDIR/!d' \
-               -e 's/^.*[^"]\("\?\${FILESDIR}\)/\1/' \
-               -e 's/#.*$//' \
-               -e 's/\\$//' \
-               $1 | \
-       while read l ; do
-               t=$(eval a='$l'; for i in $a ; do echo $i ; break ; done)
-               t=$(env -i P=$p PN=$pn PV=$pv PR=$pr PVR=$mver PF=$pf 
FILESDIR=files $(type -P bash) -c "${funcs}; source $1; echo $t")
-               # we can have file{1,2} stuff in the first t here, so iterate
-               # over the result list...
-               for u in $t ; do
-                       if [[ ! -e $u ]] ; then
-                               ewarn "copying $u"
-                               [[ ! -d $(dirname $u) ]] && mkdir -p $(dirname 
$u)
-                               cp -R "${MTREEDIR}/${EPACKAGE}"/$u $u
-                       fi
-               done
-       done
-       eoutdent
-}
-
-diff_patch() {
-       ( diff -u $2 "${MTREEDIR}/${EPACKAGE}"/$1 ; echo $? > $gf ) | patch $2
-       local ret=$?
-       [[ ${ret} == 0 ]] && ret=$(< $gf)
-       rm $gf
-       # try to get new patches and stuff
-       fetch_files $2
-       return $ret
-}
-
-update_file() {
-       # on directories, recurse
-       if [[ -d $1 ]] ; then
-               eindent
-               # recurse into this directory (don't update digests)
-               f=$(ls -p $1 | egrep -v "^digest-")
-               [[ ! -z $f ]] && ( cd $1 && DO_INDENT=$RC_INDENTATION eupdate 
$f ; ret=$? )
-               eoutdent
-               return $ret
-       fi
-
-       # check existence of files
-       if [[ ! -f $2 ]] ; then
-               echo "no such file: $2"
-               return -1
-       fi
-       if [[ ! -f "${MTREEDIR}/${EPACKAGE}"/$1 ]] ; then
-               echo "$1 not found in the main tree"
-               return 0
-       fi
-
-       # see if the file has a CVS header
-       local mtecv=$(get_cvsversion "${MTREEDIR}/${EPACKAGE}"/$1)
-       local ptecv=$(get_cvsversion $2)
-       if [[ $mtecv == 0 ]] && [[ $ptecv == 0 ]] ; then
-               diff_patch $1 $2
-               return $?
-       else
-               revision_diff $mtecv $ptecv $1 $2
-               return $?
-       fi
-}
-
-do_check_file() {
-       local mfile=$1
-       local pfile=$2
-       local msg=""
-       if [[ -z $3 ]] ; then
-               [[ $pfile != $mfile ]] \
-                       && msg="checking $mfile/$pfile" \
-                       || msg="checking $mfile"
-       else
-               msg=$3
-       fi
-
-       if [[ -d $mfile ]] ; then
-               einfo "$msg (a directory)"
-               update_file $pfile
-               return $?
-       fi
-
-       ebegin $msg
-       local err=$(update_file $mfile $pfile ; echo $? > $gf)
-       local ret=$(< $gf)
-       rm $gf
-       [[ $ret < 0 ]] && eend -1 || eend 0
-       if [[ ! -z $err ]] ; then
-               if [[ $mfile != $pfile ]] ; then
-                       [[ $ret < 0 ]] \
-                               && eerror "$mfile/$pfile: $err" \
-                               || ewarn "$mfile/$pfile: $err"
-               else
-                       [[ $ret < 0 ]] \
-                               && eerror "$mfile: $err" \
-                               || ewarn "$mfile: $err"
-               fi
-       fi
-
-       return $ret
-}
-
-# if the user gave some files on the command line, try to update those
-if [[ ${#*} > 0 ]] ; then
-       while [[ ${#*} > 0 ]] ; do
-               if [[ ${1/->/} != ${1} ]] ; then
-                       # if a a.1.ebuild->a.2.ebuild is given, we force a
-                       # cross-diff from a.1 to a.2
-                       cross_diff ${MTREEDIR}/${EPACKAGE}/${1#*->} ${1%->*}
-               elif [[ ${1#=} != ${1} ]] ; then
-                       # try to fetch files for this ebuild
-                       fetch_files ${1#=}
-               elif [[ -f $1 ]] ; then
-                       # $1 just exists, just update
-                       do_check_file $1 $1
-               elif [[ ! -f ${MTREEDIR}/${EPACKAGE}/$1 ]] ; then
-                       # kind of lazy way of saying "file not found"
-                       do_check_file $1 $1
-               else
-                       # move over the file
-                       ewarn "copying $1"
-                       cp "${MTREEDIR}/${EPACKAGE}"/$1 .
-                       eapify $1
-                       ecleankw $1
-                       fetch_files $1
-               fi
-               shift
-       done
-
-       # we're done
-       exit 0
-fi
-
-if [[ ! -d ${MTREEDIR}/${EPACKAGE} ]] ; then
-       eerror "no such package in main tree: ${EPACKAGE}"
-       exit 2
-fi
-
-if [[ ${EPACKAGE} == "eclass" || ${EPACKAGE} == "licenses" || ${EPACKAGE} == 
"updates" || ${EPACKAGE} == "desc" ]] ; then
-       einfo "Processing ${EPACKAGE} directory"
-       excode=0
-       mt=`cd "${MTREEDIR}"/${EPACKAGE}/ && ls -p`
-       pt=`ls -p`
-       # nested loop join
-       for pte in $pt ; do
-               had_match=0
-               for mte in $mt ; do
-                       if [[ $pte == $mte ]] ; then
-                               do_check_file $mte $pte
-                               ret=$?
-                               if [[ $ret < 0 ]] || [[ $ret > 1 ]] ; then
-                                       excode=-1
-                               elif [[ $excode == 0 ]] ; then
-                                       excode=$ret
-                               fi
-                               had_match=1;
-                               # we don't need $pte/$mte any more
-                               pt=${pt/$pte/}
-                               mt=${mt/$mte/}
-                               break;
-                       fi
-               done
-               [[ $had_match == 0 ]] \
-                       && ewarn "warning: $pte no longer in the main tree"
-       done
-
-       # everything left in $mt now is what's not in $pt, let's make a
-       # note about them and perform a copy
-       for mte in $mt ; do
-               ewarn "adding from main tree: $mte"
-               cp "${MTREEDIR}"/${EPACKAGE}/$mte .
-       done
-
-       exit $excode
-fi
-
-einfo "Processing ${EPACKAGE}"
-excode=0
-mt=`cd "${MTREEDIR}"/${EPACKAGE}/ && ls -p | egrep -v "^Manifest$"`
-pt=`ls -p | egrep -v "^Manifest$"`
-# do a nested loop join, we don't assume any order
-for pte in $pt ; do
-       had_match=0
-       mypte=$pte
-       for mte in $mt ; do
-               # calculate the diffs between prefix and main
-               if [[ ${pte} == *-r0* ]] ; then
-                       # normalise version, so we compare against the original
-                       # version from the main tree
-                       mypte=${pte%.*.ebuild}.ebuild
-                       mypte=${mypte/-r0/-r}
-                       mypte=${mypte/-r.ebuild/.ebuild}
-                       mypte=${mypte/-r0.ebuild/.ebuild}
-               fi
-               vdiff=$(cmp_ebuild_ver $mte $mypte)
-               # if we have the same ebuild version... (or file)
-               if [[ $vdiff == 0 ]] && [[ $mte == $mypte ]] ; then
-                       had_match=1
-                       # ... look inside the files to see if the file was 
updated or not
-                       do_check_file $mte $pte
-                       ret=$?
-                       if [[ $ret < 0 ]] || [[ $ret > 1 ]] ; then
-                               excode=-1
-                       elif [[ $excode == 0 ]] ; then
-                               excode=$ret
-                       fi
-                       # we found this version, so needless to look for it any 
more
-                       mt=${mt/$mte/}
-               fi
-       done
-       # stale entry
-       [[ $had_match == 0 ]] \
-               && ewarn "warning: $pte (${mypte}) no longer in the main tree"
-done
-# what's left in $mt is everything which is not in $pt
-# find the latest revisions/alpha/beta/pre and see if there is a more
-# recent revision in the main tree
-last_pte=""
-for pte in $pt ; do
-       # skip over non-ebuilds
-       if [[ ${pte} != *.ebuild ]] ; then
-               pt=${pt/${pte}/}
-               continue
-       fi
-       for xpte in $pt ; do
-               # check against the rest
-               [[ $(cmp_ebuild_ver $pte $xpte) -ge 10000 ]] \
-                       && pt=${pt/$xpte/}
-       done
-       [[ $(cmp_ebuild_ver $pte $last_pte) > 0 ]] \
-               && last_pte=$pte
-done
-# for all ebuilds (the latest revisions/alpha/beta/pre) we check if
-# there is a more recent revision in the main tree
-for pte in $pt ; do
-       last_rev=""
-       for mte in $mt ; do
-               # kill live CVS ebuilds
-               v=$(get_ebuildversion ${mte})
-               if [[ ${v} == 9999 || ${v} == 99999999 ]] ; then
-                       mt=${mt/$mte/}
-                       continue
-               fi
-
-               if [[ $(cmp_ebuild_ver $mte $pte) -ge 10000 ]] ; then
-                       [[ $(cmp_ebuild_ver $mte $last_rev) > 0 ]] \
-                               && last_rev=$mte
-                       # we will deal with the (newer) revision later, so let's
-                       # avoid the final update check below finding this 
revision
-                       mt=${mt/$mte/}
-               fi
-       done
-       if [[ $last_rev != "" ]] ; then
-               cross_diff ${MTREEDIR}/${EPACKAGE}/$last_rev $pte
-               ret=$?
-               if [[ $ret < 0 ]] || [[ $ret > 1 ]] ; then
-                       excode=-1
-               elif [[ $excode -ge 0 ]] ; then
-                       excode=1        # not 0, as we changed something (added 
a file)
-               fi
-       fi
-done
-# if there is anything left in mt that is bigger than last_pte we want
-# the biggest of that
-last_mte=""
-for mte in $mt ; do
-       # skip over non-ebuilds
-       [[ ${mte} != *.ebuild ]] && continue
-       [[ $(cmp_ebuild_ver $mte $last_pte) > 0 ]] && \
-       [[ $(cmp_ebuild_ver $mte $last_mte) > 0 ]] \
-               && last_mte=$mte
-done
-if [[ $last_mte != "" ]] ; then
-       if [[ $last_pte != "" ]] ; then
-               # we have to apply an update from $last_pte to $last_mte
-               cross_diff ${MTREEDIR}/${EPACKAGE}/$last_mte $last_pte
-               ret=$?
-               if [[ $ret < 0 ]] || [[ $ret > 1 ]] ; then
-                       excode=-1
-               elif [[ $excode -ge 0 ]] ; then
-                       excode=1        # not 0, as we changed something (added 
a file)
-               fi
-       else
-               # this is from an empty directory, get the last one and relevant
-               # files
-               if [[ -f ${MTREEDIR}/${EPACKAGE}/metadata.xml ]] ; then
-                       ewarn "copying metadata.xml"
-                       cp "${MTREEDIR}/${EPACKAGE}"/metadata.xml .
-               fi
-               if [[ -f ${MTREEDIR}/${EPACKAGE}/ChangeLog ]] ; then
-                       ewarn "copying ChangeLog"
-                       cp "${MTREEDIR}/${EPACKAGE}"/ChangeLog .
-               fi
-               if [[ -f ${MTREEDIR}/${EPACKAGE}/Manifest ]] ; then
-                       ewarn "copying Manifest"
-                       cp "${MTREEDIR}/${EPACKAGE}"/Manifest .
-               fi
-               ewarn "copying $last_mte"
-               cp "${MTREEDIR}/${EPACKAGE}"/$last_mte .
-               eapify $last_mte
-               ecleankw $last_mte
-               fetch_files $last_mte
-       fi
-fi
-
-exit $excode

diff --git a/scripts/keyword-check.rb b/scripts/keyword-check.rb
deleted file mode 100755
index 71bb8695e1..0000000000
--- a/scripts/keyword-check.rb
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/bin/env ruby -w
-# Copyright 2008-2014 Gentoo Foundation; Distributed under the GPL v2
-
-%w{ pathname set }.each {|lib| require lib}
-
-lines = Pathname.new( 'profiles/arch.list' ).readlines
-allowed = lines.collect {|line| line.chomp }.reject {|line|
-       line.slice( 0, 1 ) == '#' or line.empty?
-}
-
-kmods = Set.new %w{ ~ - }
-
-start = Time.now
-problemCnt = 0
-
-Pathname.new( '.' ).find {|file| 
-       next unless file.fnmatch? '*/*/*.ebuild'
-       file.readlines.each {|line|
-               unless line.slice( 0, 9 ) == 'KEYWORDS='
-                       next
-               else
-                       kws = line.chomp.slice( 10..-2 )
-                       break if kws.empty?
-                       forbidden = Array.new
-                       stable    = Array.new
-                       kws.split.each {|kw|
-                               # keywords are only allowed to start with a 
tilde for now but
-                               # keywords are only stable if there is no - in 
front of them
-                               stable << kw if is_stable = !kmods.include?( 
kw.slice( 0, 1 ) )
-                               forbidden << kw unless allowed.include?(
-                                       is_stable ? kw : kw.slice( 1..-1 )
-                               )
-                       }
-                       if stable.any? or forbidden.any?
-                               puts 'EBUILD    : %s' % [ file.dirname.dirname 
+ file.basename ]
-                               puts 'stable    : %s' % stable.join( " "  ) if 
stable.any?
-                               puts 'forbidden : %s' % forbidden.join( " " ) 
if forbidden.any?
-                               puts
-                               problemCnt += 1
-                       end
-                       break
-               end
-       }
-}
-
-if problemCnt > 0
-       puts 'found %d packages with problems in %.1fs' %
-               [ problemCnt, (Time.new - start) ]
-end
-
-# vim: set ts=4 sw=4 noexpandtab:

Reply via email to