diff options
author | Brian Dolbec <dolsen@gentoo.org> | 2017-03-22 03:46:05 -0700 |
---|---|---|
committer | Brian Dolbec <dolsen@gentoo.org> | 2017-03-22 03:46:05 -0700 |
commit | 264213e8322704dc99f4a1fb2ca796e21af955ad (patch) | |
tree | 0b5934d7f42c86d0e9546ef800fe495844d5586a | |
parent | Move echangelog to DEPRECATED in prep for gentoolkit merge (diff) | |
download | gentoolkit-264213e8322704dc99f4a1fb2ca796e21af955ad.tar.gz gentoolkit-264213e8322704dc99f4a1fb2ca796e21af955ad.tar.bz2 gentoolkit-264213e8322704dc99f4a1fb2ca796e21af955ad.zip |
Remove DEPRECATED in prep for gentoolkit merge
22 files changed, 0 insertions, 1879 deletions
diff --git a/src/DEPRECATED/echangelog/AUTHORS b/src/DEPRECATED/echangelog/AUTHORS deleted file mode 100644 index fc1bdef..0000000 --- a/src/DEPRECATED/echangelog/AUTHORS +++ /dev/null @@ -1,4 +0,0 @@ -Christian Ruppert <idl0r@gentoo.org> - -Original author: -Aron Griffis <agriffis@gentoo.org> diff --git a/src/DEPRECATED/echangelog/ChangeLog b/src/DEPRECATED/echangelog/ChangeLog deleted file mode 100644 index c1c5885..0000000 --- a/src/DEPRECATED/echangelog/ChangeLog +++ /dev/null @@ -1,84 +0,0 @@ -26 Mar 2006 Aron Griffis <agriffis@gentoo.org> - * echangelog: Don't warn about missing ebuilds when updating - copyrights #120061 - -27 Apr 2005 Aron Griffis <agriffis@gentoo.org> - * more changes for #90326; report all trivial files if no significant - changes can be found - -26 Apr 2005 Aron Griffis <agriffis@gentoo.org> - * detect conflicts explicitly - * report ChangeLog in the list of files if it's the only file that is - changing #90326 - -23 Mar 2005 Aron Griffis <agriffis@gentoo.org> - * handle package moves without adding new version lines - -08 Mar 2005 Aron Griffis <agriffis@gentoo.org> - * don't complain about cvs add of digests #84377 - * use gmtime instead of localtime - -07 Mar 2005 Aron Griffis <agriffis@gentoo.org> - * report all changed versions #84332 - -25 Feb 2005 Aron Griffis <agriffis@gentoo.org> - * strip GECOS #80011 - -09 Nov 2004 Aron Griffis <agriffis@gentoo.org> - * change "cvs diff -fU 0" => "cvs -f diff U0" because -f is a - global option, not a diff option - -08 Nov 2004 Aron Griffis <agriffis@gentoo.org> - * call cvs with -f to refrain from using .cvsrc, which might - contain conflicting options - * fix auto-addition of ChangeLog; last attempt was broken - -03 Nov 2004 Aron Griffis <agriffis@gentoo.org> - * abort when there are unresolved files (files that aren't under - revision control) just like repoman - * auto-add to cvs when a new ChangeLog is created - -15 Sep 2004 Aron Griffis <agriffis@gentoo.org> - * fix the wrapping to fit in 80 columns properly. It was - previously possible to get lines with 81 chars. Thanks to - ciaranm for reporting. - -29 Mar 2004 Aron Griffis <agriffis@gentoo.org> - * fix bug 46111 by testing for /<root@/ instead of / root@/ - -28 Mar 2004 Aron Griffis <agriffis@gentoo.org> - * apply patch from plasmaroo, with minor modifications, to enable EDITOR - and +- support - -27 Mar 2004 Michael Sterrett <mr_bones_@gentoo.org> - * don't fall out of the loop if update_copyright() didn't change - anything. Just go on to the next file. - -21 Mar 2004 Aron Griffis <agriffis@gentoo.org> - * Fix typo $0 -> 0 - -19 Mar 2004 Aron Griffis <agriffis@gentoo.org> - * Remove debugging output - * Fix $v bug introduced in last commit - -16 Mar 2004 Aron Griffis <agriffis@gentoo.org> - * Make Feb 17 behavior work without Feb 20 bug :-) - * Release as version 0.2.0 - -20 Feb 2004 Aron Griffis <agriffis@gentoo.org> - * Only update copyrights on modified ebuilds, otherwise if you run - echangelog again, it reports that all the ebuilds have been updated! - The copyright year issue would be better solved on Jan 1 of each year by - a separate script. - -17 Feb 2004 Aron Griffis <agriffis@gentoo.org> - * Update copyrights on all ebuilds, not just the modified ones - -07 Jan 2004 Aron Griffis <agriffis@gentoo.org> - * Updated Makefile to understand building man-page from pod - * Removed static man-page in favor of generated man-page from pod - * Added copyright year updating - * Allow echangelog to run even when no files have changed - -2004-01-07 Karl Trygve Kalleberg <karltk@gentoo.org> - * Added Makefile diff --git a/src/DEPRECATED/echangelog/Makefile b/src/DEPRECATED/echangelog/Makefile deleted file mode 100644 index 27ad5ca..0000000 --- a/src/DEPRECATED/echangelog/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2004 Karl Trygve Kalleberg <karltk@gentoo.org> -# Copyright 2004 Gentoo Technologies, Inc. -# Distributed under the terms of the GNU General Public License v2 -# -# $Header$ - -include ../../makedefs.mak - -.PHONY: all test - -all: - -clean: - $(RM) -r test/tmp - -test: - cd test; sh test.sh - -echangelog.1: - pod2man echangelog > echangelog.1 - -dist: echangelog.1 - mkdir -p ../../$(DISTDIR)/src/echangelog/test/templates - cp Makefile AUTHORS README ChangeLog echangelog echangelog.1 ../../$(DISTDIR)/src/echangelog/ - cp test/TEST.pm test/test.sh ../../$(DISTDIR)/src/echangelog/test/ - cp test/templates/test.patch test/templates/vcstest-0.0.1.ebuild ../../$(DISTDIR)/src/echangelog/test/templates - -install: all echangelog.1 - install -m 0755 echangelog $(BINDIR)/ - install -d $(DOCDIR)/echangelog - install -m 0644 AUTHORS README $(DOCDIR)/echangelog/ - install -m 0644 echangelog.1 $(MAN1DIR)/ diff --git a/src/DEPRECATED/echangelog/README b/src/DEPRECATED/echangelog/README deleted file mode 100644 index 77a7930..0000000 --- a/src/DEPRECATED/echangelog/README +++ /dev/null @@ -1,11 +0,0 @@ -Most of the documentation is contained in the man-page, which you can -read directly (using GNU man) by doing - - man ./echangelog.1 - -To rebuild the man-page from pod source, do - - pod2man --name=echangelog --center='Gentoolkit' \ - echangelog.pod echangelog.1 - -03 Nov 2004 agriffis diff --git a/src/DEPRECATED/echangelog/echangelog b/src/DEPRECATED/echangelog/echangelog deleted file mode 100755 index 98af377..0000000 --- a/src/DEPRECATED/echangelog/echangelog +++ /dev/null @@ -1,997 +0,0 @@ -#!/usr/bin/perl -# -# echangelog: Update the ChangeLog for an ebuild. For example: -# -# $ echangelog 'Add ~alpha to KEYWORDS' -# 4a5,7 -# > 10 Feb 2003; Aron Griffis <agriffis@gentoo.org> oaf-0.6.8-r1.ebuild : -# > Add ~alpha to KEYWORDS -# > - -use warnings; -use strict; -use POSIX qw(locale_h strftime getcwd setlocale); -use File::Basename; -use Getopt::Long; -use Pod::Usage; - -# Fix bug 21022 by restricting to C locale -setlocale(LC_ALL, "C"); - -use Text::Wrap; -$Text::Wrap::columns = 80; -$Text::Wrap::unexpand = 0; - -# Global variables -my (@files, @ebuilds, @conflicts, @trivial, @unknown, @new_versions, %actions); -my ($input, $editor, $entry, $user, $date, $text, $vcs); -my ($fh); -my ($opt_man, $opt_help, $opt_nostrict, $opt_force_vcs, $opt_version, $opt_strict); - -$date = strftime("%d %b %Y", gmtime); - -$opt_help = 0; -$opt_nostrict = 0; -$opt_version = 0; -# DEPRECATED -$opt_strict = 0; - -my %vcs = ( - bzr => { - directory => ".bzr", - diff => "bzr diff", - status => "bzr status -S .", - add => "bzr add", - skip => 3, - # The same as for hg. - regex => qr/^=== \S+ file '\S+\/\S+\/((\S+)\.ebuild)/ - }, - cvs => { - directory => "CVS", - diff => "cvs -f diff -U0", - status => "cvs -fn up", - add => "cvs -f add", - skip => 6, - regex => qr/^Index: (([^\/]*?)\.ebuild)\s*$/ - }, - git => { - directory => ".git", - diff => "git diff", - status => "git diff-index HEAD --name-status", - add => "git add", - # This value should usually be 3 but on new file mode we need skip+1. - # So 4 should be fine anyway. - skip => 4, - regex => qr/^diff \-\-git \S*\/((\S*)\.ebuild)/ - }, - hg => { - directory => ".hg", - diff => "hg diff", - status => "hg status .", - add => "hg add", - skip => 3, - # hg diff is relative to the root. - # TODO: Write a proper regex :) - regex => qr/diff \-r \S+ \S+\/\S+\/((\S+)\.ebuild)/ - }, - svn => { - directory => ".svn", - diff => "svn diff -N", - status => "svn status", - add => "svn add", - skip => 4, - regex => qr/^Index: (([^\/]*?)\.ebuild)\s*$/ - }, -); - -sub version { - my $Revision = "Last svn change rev"; - my $Date = "Last svn change date"; - my $foo = ""; - print "echangelog\n$Revision$foo \n$Date$foo\n"; - exit 0; -} - -sub getenv ($) { - my $key = shift; - - # Check for key: defined and not empty - return if !$key or $key eq ''; - - # Fetch key in %ENV hash - my $env = $ENV{$key}; - - # Make sure the variable does exist, - # check for its length - # and return it - return $env if $env and (length($env) > 0); -} - -# Bug 264146. -# Copied from Text::Wrap. -# The only modified thing is: -# We trim _just_ tab/space etc. but not \n/\r. -# \s treats even \n/\r as whitespace. -# BUGS: -# ' test' -# ' test' -# Will end up in: -# ' test' -# '' -# 'test' -# See 'my $ps = ($ip eq $xp) ? "\n\n" : "\n";' -sub text_fill { - my ($ip, $xp, @raw) = @_; - my @para; - - for my $pp ( split(/\n\s+/, join("\n", @raw)) ) { - $pp =~ s/[\x09\x0B\x0C\x20]+/ /g; - my $x = Text::Wrap::wrap($ip, $xp, $pp); - push(@para, $x); - } - - # if paragraph_indent is the same as line_indent, - # separate paragraphs with blank lines - my $ps = ($ip eq $xp) ? "\n\n" : "\n"; - return join ($ps, @para); -} - -sub changelog_info { - my %changed = @_; - - open(my $fh, '>', 'ChangeLog.new'); - - print($fh "\n"); - print($fh "# Please enter the ChangeLog message for your changes. Lines starting\n"); - print($fh "# with '#' will be ignored, and an empty message aborts the ChangeLog.\n"); - print($fh "#\n# Changes:\n"); - - foreach my $key (keys(%changed)) { - if ($changed{$key} eq "+") { - printf($fh "# new file:\t%s\n", $key); - } - elsif ($changed{$key} eq "-") { - printf($fh "# deleted:\t%s\n", $key); - } - else { - printf($fh "# modified:\t%s\n", $key); - } - } - - close($fh); -} - -sub update_cat_pn { - my $t = shift; - my $cwd = getcwd(); - - my $category = basename(dirname($cwd)); - my $package_name = basename($cwd); - - $t =~ s/^(# ChangeLog for).*/$1 $category\/$package_name/; - - return $t; -} - -# Check partent dirs recursivevly/backward -sub check_vcs_dir { - my $type = shift; - - my $dir = getcwd(); - while($dir !~ /^\/$/) { - return 1 if -d "${dir}/${type}"; - $dir = dirname($dir); - } - # Check / as well - return 1 if -d "/${type}"; - - return 0; -} - -# Just to ensure we don't get duplicate entries. -sub mypush(\@@) { - my $aref = shift; - - foreach my $value (@_) { - push(@{$aref}, $value) if !grep(/^\Q$value\E$/, @{$aref}); - } -} - -sub update_copyright { - my ($t) = @_; - (my $year = $date) =~ s/.* //; - - $t =~ s/^# Copyright \d+(?= )/$&-$year/m or - $t =~ s/^(# Copyright) (\d+)-\d+/$1 $2-$year/m; - - return $t; -} - -my $ret = GetOptions( - 'no-strict' => \$opt_nostrict, - 'version|v' => \$opt_version, - 'help|h' => \$opt_help, - 'strict' => \$opt_strict, - 'vcs=s' => \$opt_force_vcs, - 'man' => \$opt_man, -); - - -pod2usage(-verbose => 1, -exitval => -1) if ($opt_help || $ret ne 1); -pod2usage(-verbose => 2, -exitval => -1) if $opt_man; -version() if $opt_version; - -if($opt_strict) { - print STDERR "Warning: The option '--strict' has been deprecated and will be removed soon!\n"; - print STDERR "--strict behaviour is now default.\n"; -} - -# Figure out what kind of repo we are in. -# Respect $PATH while looking for the VCS -if(! defined($opt_force_vcs)) { - foreach my $path ( split(":", (getenv("PATH") || "/bin:/usr/bin:/usr/local/bin")) ) { - foreach my $_vcs (sort(keys(%vcs))) { - if ( -X "${path}/${_vcs}" ) { - $vcs = $_vcs if check_vcs_dir($vcs{$_vcs}{directory}); - last if $vcs; - } - } - last if $vcs; - } -} -else { - $vcs = $opt_force_vcs if defined $vcs{$opt_force_vcs}; -} - -if ( ! $vcs ) { - print STDERR "Either no CVS, .git, .svn, ... directories found, the specific VCS has not been\n"; - print STDERR "installed or you don't have execute rights!\n"; - exit(1); -} - -# Read the current ChangeLog -if (-f 'ChangeLog') { - open($fh, '<', 'ChangeLog') or die "Can't open ChangeLog for input: $!\n"; - { local $/ = undef; $text = <$fh>; } - close($fh); -} else { - # No ChangeLog here, maybe we should make one... - if (glob("*.ebuild")) { - open(my $ph, '-|', "portageq portdir") or die "portageq returned with an error: $!\n"; - my $portdir = <$ph>; - $portdir =~ s/\s+$//; - close($ph); - - die "Can't find PORTDIR\n" if (length $portdir == 0); - - if (open($fh, '<', "$portdir/skel.ChangeLog")) { - local $/ = undef; $text = <$fh>; - close($fh); - } - else { - $text = <<EOT -# ChangeLog for <CATEGORY>/<PACKAGE> -# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2 -# \$Id\$ -EOT - } - - $text =~ s/^\*.*//ms; # don't need the fake entry - } else { - die "This should be run in a directory with ebuilds...\n"; - } -} - -# Update the copyright year in the ChangeLog -$text = update_copyright($text); - -# New packages and/or ones that have moved around often have stale data here. -# But only do that in places where ebuilds are around (as echangelog can be -# used in profiles/ and such places). -if (glob("*.ebuild")) { - $text = update_cat_pn($text); -} - -# Figure out what has changed around here -open(my $ph_status, "-|", $vcs{$vcs}{status}.' 2>&1') or die "Can't run ".$vcs{$vcs}{status}.": $!\n"; -while (<$ph_status>) { - # I don't want mess our existing stuff with the horrible bazaar stuff. - # TODO: add stuff for untracked/conflicting files. - if ($vcs eq "bzr") { - # NEW, DELETED, MODIFIED - if (/^[\s\+\-]([NDM])\s+(.*)/) { - my ($status, $filename) = ($1, $2); - # strip category/package/ since everything is relative to the repo root. - $filename =~ s/^([^\/]+\/){2}//; - - # skip empty $filename, e.g. if you add a new package, the first - # line would be the package directory app-foo/bar/ but thats stripped above. - next if !$filename; - # skip directories - next if -d $filename; - - ($actions{$filename} = $status) =~ tr/NDM/+-/d; - push(@files, $filename); - next; - } - # RENAMED/MOVED/MODIFIED - elsif (/^RM?\s+(\S+) => (\S+)/) { - my ($old, $new) = ($1, $2); - $old =~ s/^([^\/]+\/){2}//; - $new =~ s/^([^\/]+\/){2}//; - - next if !$old or !$new; - next if -d $old or -d $new; - - $actions{$old} = '-'; - $actions{$new} = '+'; - - push(@files, $old, $new); - next; - } - } - if (/^C\s+(\S+)/) { - # NOTE: The git part here might be unused - if($vcs eq "git") { - my $filename = $1; - $filename =~ /\S*\/(\S*)/; - - next if -d $filename; - - push @conflicts, $filename; - next; - } - - push @conflicts, $1; - next; - } - elsif (/^\?\s+(\S+)/) { - push @unknown, $1; - $actions{$1} = '?'; - next; - } - elsif (/^([ARMD])\s+\+?\s*(\S+)/) { - my ($status, $filename) = ($1,$2); - - if($vcs eq "git") { - open(my $ph, '-|', "git rev-parse --sq --show-prefix"); - my $prefix = <$ph>; - close($ph); - - if (defined($prefix)) { - chomp($prefix); - - if ($filename =~ /\Q$prefix\E(\S*)/) { - $filename = $1 ; - } - else { - next; - } - } - } - - next if -d $filename; - - push(@files, $filename); - ($actions{$filename} = $status) =~ tr/DARM/-+-/d; - } -} -close($ph_status); - -sub git_unknown_objects { - open(my $ph, "-|", "${vcs} ls-files --exclude-standard --others"); - while(defined( my $line = <$ph> )) { - chomp($line); - - # IMHO we can skip those files, even if they're untracked - #next if $line =~ m/^\.gitignore$/; - - push(@unknown, $line); - } - close($ph); -} - -# git only shows files already added so we need to check for unknown files -# separately here. -if($vcs eq "git") { - git_unknown_objects(); -} - -# Separate out the trivial files for now -@files = grep { - !/^(Manifest|ChangeLog)$/ or do { push @trivial, $_; 0; } -} @files; - -@unknown = grep { - !/^(Manifest|ChangeLog)$/ or do { push @trivial, $_; 0; } -} @unknown; - -# Don't allow any conflicts -if (@conflicts) { - print STDERR <<EOT; -$vcs reports the following conflicts. Please resolve them before -running echangelog. -EOT - print STDERR map "C $_\n", @conflicts; - exit 1; -} - -# Don't allow unknown files (other than the trivial files that were separated -# out above) -if (@unknown) { - print STDERR <<EOT; -$vcs reports the following unknown files. Please use "$vcs add" before -running echangelog, or remove the files in question. -EOT - print STDERR map "? $_\n", @unknown; - exit 1; -} - -# Sort the list of files as portage does. None of the operations through -# the rest of the script should break this sort. -sub sortfunc($$) { - my ($a, $b) = @_; - (my $va = $a) =~ s/.*?-(\d.*?)(?:\.ebuild)?$/$1/; - (my $vb = $b) =~ s/.*?-(\d.*?)(?:\.ebuild)?$/$1/; - my ($na, $sa, $sna, $ra) = ($va =~ /^(.*?)(?:_(alpha|beta||pre|rc|p)(\d*))?(?:-r(\d+))?$/); - my ($nb, $sb, $snb, $rb) = ($vb =~ /^(.*?)(?:_(alpha|beta||pre|rc|p)(\d*))?(?:-r(\d+))?$/); - my (@na) = split /\.|(?<=\d)(?=[^\d\.])/, $na; - my (@nb) = split /\.|(?<=\d)(?=[^\d\.])/, $nb; - my $retval; - - # - # compare version numbers first - # - for (my $i = 0; defined $na[$i] or defined $nb[$i]; $i++) { - # def vs. undef - return +1 if defined $na[$i] and !defined $nb[$i]; - return -1 if defined $nb[$i] and !defined $na[$i]; - - # num vs. num - if ($na[$i] =~ /^\d/ and $nb[$i] =~ /^\d/) { - $retval = ($na[$i] <=> $nb[$i]); - return $retval if $retval; - next; - } - - # char vs. char - if ($na[$i] =~ /^\D/ and $nb[$i] =~ /^\D/) { - $retval = ($na[$i] cmp $nb[$i]); - return $retval if $retval; - next; - } - - # num vs. char - $retval = ($na[$i] =~ /\d/ and -1 or +1); - return $retval; - } - - # - # compare suffix second - # - if (defined $sa and !defined $sb) { - return +2 if $sa eq "p"; - return -2; - } - if (defined $sb and !defined $sa) { - return -3 if $sb eq "p"; - return +3; - } - - if (defined $sa) { # and defined $sb - $retval = ($sa cmp $sb); - if ($retval) { - return +4 if $sa eq "p"; - return -4 if $sb eq "p"; - return $retval; # suffixes happen to be alphabetical order, mostly - } - - # compare suffix number - return +5 if defined $sna and !defined $snb; - return -5 if defined $snb and !defined $sna; - - if (defined $sna) { # and defined $snb - $retval = ($sna <=> $snb); - return $retval if $retval; - } - } - - # - # compare rev third - # - return +6 if defined $ra and !defined $rb; - return -6 if defined $rb and !defined $ra; - - if (defined $ra) { # and defined $rb - return ($ra <=> $rb); - } - - # - # nothing left to compare - # - return 0; -} - -# Forget ebuilds that only have changed copyrights, unless that's all -# the changed files we have -@ebuilds = grep(/\.ebuild$/, @files); -@files = grep(!/\.ebuild$/, @files); - -if (@ebuilds) { - my $ph_diff; - if ($vcs eq "git") { - open($ph_diff, "-|", $vcs{$vcs}{diff}." HEAD -- @ebuilds 2>&1") or die "Can't run: ".$vcs{$vcs}{diff}."$!\n"; - } else { - open($ph_diff, "-|", $vcs{$vcs}{diff}." @ebuilds 2>&1") or die "Can't run: ".$vcs{$vcs}{diff}."$!\n"; - } - - while (defined(my $line = <$ph_diff>)) { - # only possible with cvs - if ($line =~ m/^$vcs diff: (([^\/]*?)\.ebuild) was removed/) { - mypush(@ebuilds, $1); - } - # We assume GNU diff output format here. - # git format: diff --git a/app-doc/repodoc/metadata.xml b/app-doc/repodoc/metadata.xml - elsif ($line =~ m/$vcs{$vcs}{regex}/) { - my ($file, $version) = ($1, $2); - - if ($vcs eq "git") { - while (defined($line = <$ph_diff>)) { - last if $line =~ m/^deleted file mode|^index/; - if ($line =~ m/^new file mode/) { - mypush(@ebuilds, $file); - mypush(@new_versions, $version); - last; - } - } - } - - if ($vcs eq "bzr") { - if ($line =~ m/^=== added file/) { - mypush(@ebuilds, $file); - mypush(@new_versions, $version); - last; - } - elsif($line =~ /^=== renamed file '.+\/([^\/]+\.ebuild)' => '.+\/(([^\/]+)\.ebuild)'/) { - mypush(@ebuilds, $1, $2); - mypush(@new_versions, $3); - last; - } - } - - # check if more than just copyright date changed. - # skip some lines (vcs dependent) - foreach(1..$vcs{$vcs}{skip}) { - $line = <$ph_diff>; - } - - - my $copy_only = 1; - while(defined($line = <$ph_diff>)) { - # We just want to check/compare the differences so anything beginning with +/- - if ($line =~ m/^[-+](?!# Copyright)/m) { - mypush(@ebuilds, $file); - $copy_only = 0; - last; - } - } - - # Only the Copyright has been changed so lets remove the file from the array - if ($copy_only) { - @ebuilds = grep(!/\Q${file}\E/, @ebuilds); - } - - # At this point all ebuilds where more than just the copyright has been changed have been added to @ebuilds. - # So lets go ahead with the next diff. - next; - } - elsif ($line =~ m/^$vcs.*?: (([^\/]*?)\.ebuild) is a new entry/) { - mypush(@ebuilds, $1); - mypush(@new_versions, $2); - } - } - close($ph_diff); -} - -# Subversion diff doesn't identify new versions. So use the status command -if (($vcs eq "svn" or $vcs eq "hg") and (@ebuilds)) { - open(my $ph_status, "-|", $vcs{$vcs}{status}." @ebuilds 2>&1") or die "Can't run: ".$vcs{$vcs}{status}."$!\n"; - - while (defined(my $line = <$ph_status>)) { - if ($line =~ m/^A\s+\+?\s*(([^\s]*)\.ebuild)/) { - mypush(@ebuilds, $1); - mypush(@new_versions, $2); - } - } - close($ph_status); -} - -# When a package move occurs, the versions appear to be new even though they are -# not. Trim them from @new_versions in that case. -@new_versions = grep { $text !~ /^\*\Q$_\E\s/m } @new_versions; - -# Allow ChangeLog entries with no changed files, but give a fat warning -if (!@files && !@ebuilds) { - print STDERR "**\n"; - print STDERR "** NOTE: No non-trivial changed files found. Normally echangelog\n"; - print STDERR "** should be run after all affected files have been added and/or\n"; - print STDERR "** modified. Did you forget to $vcs add?\n"; - print STDERR "**\n"; - - if (!$opt_nostrict) { - print STDERR "** In strict mode, exiting\n"; - print STDERR "** If you know what you're doing there pass '--no-strict' to echangelog\n"; - exit(1); - } - - @files = @trivial; - - # last resort to put something in the list - unless (@files) { - @files = qw/ChangeLog/; - $actions{'ChangeLog'} = ""; - } -} - -# sort -@ebuilds = sort sortfunc @ebuilds; -@files = sort sortfunc @files; -@new_versions = sort sortfunc @new_versions; - -# Get the input from the cmdline, editor or stdin -if ($ARGV[0]) { - $input = "@ARGV"; -} else { - $editor = getenv('ECHANGELOG_EDITOR') ? getenv('ECHANGELOG_EDITOR') : getenv('EDITOR') || undef; - - if ($editor) { - # Append some informations. - changelog_info(%actions); - - system("$editor ChangeLog.new"); - - if ($? != 0) { - # This usually happens when the editor got forcefully killed; and - # the terminal is probably messed up: so we reset things. - system('stty sane'); - print STDERR "Editor died! Reverting to stdin method.\n"; - undef $editor; - } else { - if (open($fh, "<", "ChangeLog.new")) { - local $/ = undef; - $input = <$fh>; - close($fh); - - # Remove comments from changelog_info(). - local $/ = "\n"; - $input =~ s/^#.*//mg; - local $/ = undef; - } else { - print STDERR "Error opening ChangeLog.new: $!\n"; - print STDERR "Reverting to stdin method.\n"; - undef $editor; - } - } - unlink('ChangeLog.new') if -f 'ChangeLog.new'; - } - - unless ($editor) { - print "Please type the log entry: use Ctrl-d to finish, Ctrl-c to abort...\n"; - local $/ = undef; - $input = <>; - } -} -die "Empty entry; aborting\n" unless $input =~ /\S/; - -# If there are any long lines, then wrap the input at $columns chars -# (leaving 2 chars on left, one char on right, after adding indentation below). -$input = text_fill(' ', ' ', $input); - -# Prepend the user info to the input -# Changes related to bug 213374; -# This sequence should be right: -# 1. GENTOO_COMMITTER_NAME && GENTOO_COMMITTER_EMAIL -# 2. GENTOO_AUTHOR_NAME && GENTOO_AUTHOR_EMAIL -# 3. ECHANGELOG_USER (fallback/obsolete?) -# 4. getpwuid().. -if ( getenv("GENTOO_COMMITTER_NAME") && getenv("GENTOO_COMMITTER_EMAIL") ) { - $user = sprintf("%s <%s>", getenv("GENTOO_COMMITTER_NAME"), getenv("GENTOO_COMMITTER_EMAIL")); -} -elsif ( getenv("GENTOO_AUTHOR_NAME") && getenv("GENTOO_AUTHOR_EMAIL") ) { - $user = sprintf("%s <%s>", getenv("GENTOO_AUTHOR_NAME"), getenv("GENTOO_AUTHOR_EMAIL")); -} -elsif ( getenv("ECHANGELOG_USER") ) { - $user = getenv("ECHANGELOG_USER"); -} -else { - my ($fullname, $username) = (getpwuid($<))[6,0]; - $fullname =~ s/,.*//; # remove GECOS, bug 80011 - $user = sprintf('%s <%s@gentoo.org>', $fullname, $username); -} - -# Make sure that we didn't get "root" -die "Please set ECHANGELOG_USER or run as non-root\n" if $user =~ /<root@/; - -$entry = "$date; $user "; -if(@ebuilds) { - $entry .= join(', ', map("$actions{$_}$_", @ebuilds)); - $entry .= ", ".join(', ', map("$actions{$_}$_", @files)) if @files; -} -else { - $entry .= join ', ', map("$actions{$_}$_", @files); -} -$entry .= ':'; -$entry = Text::Wrap::fill(' ', ' ', $entry); # does not append a \n -$entry .= "\n$input"; # append user input - -# Each one of these regular expressions will eat the whitespace -# leading up to the next entry (except the two-space leader on the -# front of a dated entry), so it needs to be replaced with a -# double carriage-return. This helps to normalize the spacing in -# the ChangeLogs. -if (@new_versions) { - # Insert at the top with a new version marker - $text =~ s/^( .*? ) # grab header - \s*\n(?=\ \ \d|\*|\z) # suck up trailing whitespace - /"$1\n\n" . - join("\n", map "*$_ ($date)", reverse @new_versions) . - "\n\n$entry\n\n"/sxe - or die "Failed to insert new entry (4)\n"; -} else { - # Changing an existing patch or ebuild, no new version marker - # required - $text =~ s/^( .*? ) # grab header - \s*\n(?=\ \ \d|\*|\z) # suck up trailing whitespace - /$1\n\n$entry\n\n/sx - or die "Failed to insert new entry (3)\n"; -} - -# Update affected ebuilds and some other files copyright dates. There is no reason to update the -# copyright lines on ebuilds that haven't changed. I verified this with an IP -# lawyer. (patches/diffs and binary files are excluded) -for my $e (grep(!/\.(patch|diff)$/, @files), @ebuilds) { - if (-s $e && ! -B $e) { - my ($etext, $netext); - - open($fh, "<", $e) or warn("Can't read $e to update copyright year\n"), next; - { local $/ = undef; $etext = <$fh>; } - close($fh); - - # Attempt the substitution and compare - $netext = update_copyright($etext); - next if $netext eq $etext; # skip this file if no change. - - # Write the new ebuild - open($fh, ">", "${e}.new") or warn("Can't open $e.new\n"), next; - print $fh $netext and - close($fh) or warn("Can't write $e.new\n"), next; - - # Move things around and show the diff - system "diff -U 0 $e $e.new"; - rename "$e.new", $e or warn("Can't rename $e.new: $!\n"); - - # git requires to re-add this file else it wouln't be included in the commit. - if ($vcs eq "git") { - system("$vcs{$vcs}{add} ${e}"); - } - } -} - -# Write the new ChangeLog -open($fh, ">", 'ChangeLog.new') or die "Can't open ChangeLog.new for output: $!\n"; -print $fh $text or die "Can't write ChangeLog.new: $!\n"; -close($fh) or die "Can't close ChangeLog.new: $!\n"; - -# Move things around and show the ChangeLog diff -system 'diff -Nu ChangeLog ChangeLog.new'; -rename 'ChangeLog.new', 'ChangeLog' or die "Can't rename ChangeLog.new: $!\n"; - -# Okay, now we have a starter ChangeLog to work with. -# The text will be added just like with any other ChangeLog below. -# Add the new ChangeLog to vcs before continuing. -if ($vcs eq "cvs") { - if (open($fh, "<", "CVS/Entries")) { - system("cvs -f add ChangeLog") unless (scalar grep /^\/ChangeLog\//, <$fh>); - close($fh); - } -} elsif ($vcs eq "svn") { - if (open($fh, "<", ".svn/entries")) { - system("svn add ChangeLog") unless (scalar grep /ChangeLog/, <$fh>); - close($fh); - } -} else { - system("$vcs{$vcs}{add} ChangeLog 2>&1 > /dev/null"); -} - -# vim: set ts=4 sw=4 tw=0: - -__END__ - -=head1 NAME - -echangelog - Update portage ChangeLog files. - -=head1 SYNOPSIS - -echangelog [options] <changelog message> - - --no-strict - --vcs <vcs> - --help|h - --man - --version - -=head1 OPTIONS - -=over 14 - -=item B<--no-strict> - -Do not abort on trivial changes. - -=item B<--vcs vcs> - -Skip VCS autodetection and use the specified VCS instead. - -Supported VCS: bzr, cvs, git, hg, svn - -=item B<--help|h> - -Display help. - -=item B<--man> - -Display man page. - -=item B<--version> - -Display version. - -=back - -=head1 DESCRIPTION - -This tool provides an easy way to create or update portage ChangeLogs in -Gentoo. The tool scans the current directory, which is assumed to be a package -directory such as /usr/portage/app-editors/vim, finds what files have been -changed or added, and inserts the appropriate entry to ChangeLog. If text is -not provided on the command-line, echangelog prompts for it. - -All modifications should occur before running echangelog so that it can include -the appropriate file information in the ChangeLog entry. For example, you -should run "cvs add" on your files, otherwise echangelog won't know those files -are part of the update. - -If your text would cause the ChangeLog entry to exceed 80 columns, it will be -rewrapped to keep the ChangeLog neat. If you need special formatting in the -ChangeLog, then you can either (1) run echangelog with no text on the -command-line, and make sure that your text won't be too wide, (2) edit the -ChangeLog manually. If you prefer (2), I'd recommend something like -"echangelog blah" so that the header lines are computed correctly, then edit -and change "blah" to your preferred text. - -In addition to updating the ChangeLog, echangelog will automatically update the -copyright year of all out-of-date ebuilds, as well as the ChangeLog itself. -These updates are included in the diff displayed by echangelog when it finishes -its work. - -=head1 EXAMPLES - -To create a ChangeLog for a completely new package. The header is parsed from -skel.ebuild. - - $ cvs add metalog-0.1.ebuild - cvs server: use 'cvs commit' to add this file permanently - $ echangelog 'New ebuild, thanks to Harvey McGillicuddy' - --- ChangeLog 1969-12-31 19:00:00.000000000 -0500 - +++ ChangeLog.new 2003-02-23 14:04:06.000000000 -0500 - @@ -0,0 +1,9 @@ - +# ChangeLog for app-admin/metalog - +# Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL - v2 - +# $Header$ - + +*metalog-0.1 (23 Feb 2003) + - + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild : - - + New ebuild, thanks to Harvey McGillicuddy - + -To bump a revision. Note you need to "cvs add" so that echangelog will notice -the new file. - - $ cvs add metalog-0.1-r1.ebuild - cvs server: use 'cvs commit' to add this file permanently - $ echangelog 'Bump revision to fix bug #999' - --- ChangeLog 2003-02-23 14:04:06.000000000 -0500 - +++ ChangeLog.new 2003-02-23 14:07:48.000000000 -0500 - @@ -2,6 +2,11 @@ - # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL - # v2 - # $Header$ - - +*metalog-0.1-r1 (23 Feb 2003) - + - + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1-r1.ebuild : - + Bump revision to fix bug #999 - + - *metalog-0.1 (23 Feb 2003) - 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild : - -For a multi-line entry, omit the command-line arg. - - $ echangelog - Please type the log entry, finish with ctrl-d - Bump revision to fix bug #999. Necessary to bump the revision because - the problem appears at run-time, not compile-time. This should also - give users the updated default configuration file. - --- ChangeLog 2003-02-23 14:09:12.000000000 -0500 - +++ ChangeLog.new 2003-02-23 14:12:43.000000000 -0500 - @@ -2,6 +2,13 @@ - # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL - # v2 - # $Header$ - +*metalog-0.1-r1 (23 Feb 2003) - + - + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1-r1.ebuild : - + Bump revision to fix bug #999. Necessary to bump the revision because - + the problem appears at run-time, not compile-time. This should also - + give users the updated default configuration file. - + *metalog-0.1 (23 Feb 2003) - - 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild : - -For a multi-line entry, omit the command-line arg. - - $ echangelog - Please type the log entry, finish with ctrl-d - Bump revision to fix bug #999. Necessary to bump the revision because - the problem appears at run-time, not compile-time. This should also - give users the updated default configuration file. - --- ChangeLog 2003-02-23 14:09:12.000000000 -0500 +++ ChangeLog.new - 2003-02-23 14:12:43.000000000 -0500 @@ -2,6 +2,13 @@ - # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL - # v2 - # $Header$ - - +*metalog-0.1-r1 (23 Feb 2003) - + - + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1-r1.ebuild : - + Bump revision to fix bug #999. Necessary to bump the revision because + - the problem appears at run-time, not compile-time. This should also + give - users the updated default configuration file. + - *metalog-0.1 (23 Feb 2003) - 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild : - -=head1 ENVIRONMENT VARIABLES - -=over 4 - -=item B<ECHANGELOG_USER> - - If echangelog can't figure out your username for the entry, you should set - ECHANGELOG_USER like so: - $ export ECHANGELOG_USER="Aron Griffis <agriffis@gentoo.org" - -=back - -=head1 NOTES - -As of the most recent version of echangelog (when this man-page appeared), -echangelog puts all new entries at the top of the file instead of finding the -appropriate *version line within the file. This is because that "new" -ChangeLog format was never agreed upon by the Gentoo developers. Unfortunately -the existence of both formats will undoubtedly cause much confusion. This also -means that the examples above are wrong, since I just copied them from some old -email. However they're not much wrong. ;-) - -Bugs found should be filed against tools-portage@gentoo.org at http://bugs.gentoo.org/ - -=head1 AUTHORS - -This tool was originally written by Aron Griffis <agriffis@gentoo.org>. - -Continued by Christian Ruppert <idl0r@gentoo.org>. - -This man page has been turned into a Perl POD document by Patrice Clement -<monsieurp@gentoo.org>. - -=cut diff --git a/src/DEPRECATED/echangelog/test/TEST.pm b/src/DEPRECATED/echangelog/test/TEST.pm deleted file mode 100644 index 6632148..0000000 --- a/src/DEPRECATED/echangelog/test/TEST.pm +++ /dev/null @@ -1,26 +0,0 @@ -# We just return a static/predefined date because we're working with -# static md5 checksums. - -package TEST; - -use strict; -use warnings; - -BEGIN { - use Exporter(); - our ($VERSION, @ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS); - - $VERSION = 1.00; - - @ISA = qw(Exporter); - @EXPORT = qw(&strftime); - %EXPORT_TAGS = ( ); - @EXPORT_OK = qw(); -} -our @EXPORT_OK; - -sub strftime { - return "01 Jan 2009"; -} - -1; diff --git a/src/DEPRECATED/echangelog/test/templates/test.patch b/src/DEPRECATED/echangelog/test/templates/test.patch deleted file mode 100644 index 72d46fa..0000000 --- a/src/DEPRECATED/echangelog/test/templates/test.patch +++ /dev/null @@ -1,6 +0,0 @@ ---- test.patch 2009-04-28 14:13:26.171225175 +0200 -+++ test.patch 2009-04-28 14:12:26.246497830 +0200 -@@ -0,0 +1,3 @@ -+This is just an example. -+Its used for several echangelog tests. -+ diff --git a/src/DEPRECATED/echangelog/test/templates/vcstest-0.0.1.ebuild b/src/DEPRECATED/echangelog/test/templates/vcstest-0.0.1.ebuild deleted file mode 100644 index 2824b83..0000000 --- a/src/DEPRECATED/echangelog/test/templates/vcstest-0.0.1.ebuild +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -DESCRIPTION="echangelog test ebuild" -HOMEPAGE="" -SRC_URI="" - -LICENSE="" -SLOT="0" -KEYWORDS="" -IUSE="" - -DEPEND="" -RDEPEND="" - diff --git a/src/DEPRECATED/echangelog/test/test.sh b/src/DEPRECATED/echangelog/test/test.sh deleted file mode 100755 index 53bb0b5..0000000 --- a/src/DEPRECATED/echangelog/test/test.sh +++ /dev/null @@ -1,182 +0,0 @@ -#!/bin/sh - -# Load functions.sh -. "/etc/init.d/functions.sh" - -SUPPORTED_VCS="cvs svn git" -VCSTEST="echangelog-test/vcstest" -_ROOT=$(pwd) - - -# bug 373421 -unset GENTOO_AUTHOR_NAME GENTOO_AUTHOR_EMAIL \ - GENTOO_COMMITTER_NAME GENTOO_COMMITTER_EMAIL - -export GENTOO_COMMITTER_NAME="Just a test" -export GENTOO_COMMITTER_EMAIL="echangelogtest@gentoo.org" - -MD5_INIT="21ac109c53cf02378593a4f613b2bb55" -MD5_PATCH="f3fa1cacae3bf51d6188278e6a5fd0c6" -MD5_REVBUMP="e474aa136f06e2a001320240b2ae92bd" -MD5_COPYRIGHT="9ce45576db5489c4f109ed9ef9ffe05e" -MD5_OBSOLETE="f0079450e03e69741502776a6b8138dc" -MD5_FINAL="a3954786368fd92d8466bc65cbf689fc" - -UPDATE_MD5=0 - -md5() { - local fname=$1 - local var=$2 - local md5=$(md5sum ${fname} | awk '{ print $1 }') - [ ${UPDATE_MD5:-0} -eq 1 ] && echo "${var}=\"${md5}\"" >> ${_ROOT}/MD5.new - echo $md5 -} - -ech() { - local bin=$1 - shift - local msg="${*}" - - perl -I$(dirname $(dirname ${bin})) $bin $msg -} - -make_test() { - local root=$1 - local vcs=$2 - - local echangelog="${root}/tmp/echangelog" - local tmp="${root}/tmp/${vcs}" - local template="${root}/templates" - - cd $root - mkdir -p ${tmp} - cd ${tmp} - - [ "${vcs}" = "cvs" ] && mkdir -p ${tmp}/cvsroot - [ "${vcs}" = "svn" ] && mkdir -p ${tmp}/svnroot - - if [ "${vcs}" = "git" ]; then - git init - - # bug 454782 - git config user.name "${GENTOO_COMMITTER_NAME}" - git config user.email "${GENTOO_COMMITTER_EMAIL}" - - touch .gitignore - git add .gitignore - git commit -a -m 'Initial Commit' - elif [ "${vcs}" = "svn" ]; then - svnadmin create svnroot - svn co file://${tmp}/svnroot svn - cd svn - elif [ "${vcs}" = "cvs" ]; then - CVSROOT="${tmp}/cvsroot" cvs init - mkdir cvsroot/cvs - cvs -d:local:${tmp}/cvsroot co cvs - cd cvs - fi - - mkdir -p ${VCSTEST} - - cp ${template}/vcstest-0.0.1.ebuild ${VCSTEST} - ${vcs} add $(dirname ${VCSTEST}) - if [ "${vcs}" = "cvs" ]; then - ${vcs} add ${VCSTEST} - ${vcs} add "${VCSTEST}/vcstest-0.0.1.ebuild" - fi - - cd ${VCSTEST} - ech ${echangelog} --vcs $vcs 'New ebuild for bug <id>.' - - if [ "${MD5_INIT}" != "$(md5 ChangeLog MD5_INIT)" ]; then - eerror "WRONG MD5_INIT!" - fi - - mkdir files - cp ${template}/test.patch files - if [ "${vcs}" = "cvs" ]; then - ${vcs} add files/ - ${vcs} add files/test.patch - else - ${vcs} add files - fi - - ech ${echangelog} --vcs $vcs "Added adittional patch to fix foo." - - if [ "${MD5_PATCH}" != "$(md5 ChangeLog MD5_PATCH)" ]; then - eerror "WRONG MD5_PATCH!" - fi - - if [ "${vcs}" = "svn" ]; then - ${vcs} commit -m 'New ebuild for bug <id>.' ../ - else - ${vcs} commit -m 'New ebuild for bug <id>.' - fi - - [ "${vcs}" = "cvs" ] && sed -i -e 's:# $Header\: .*$:# $Header\: $:' ChangeLog - - cp vcstest-0.0.1.ebuild vcstest-0.0.1-r1.ebuild - ${vcs} add vcstest-0.0.1-r1.ebuild - - ech ${echangelog} --vcs $vcs "Revbump..." - - if [ "${MD5_REVBUMP}" != "$(md5 ChangeLog MD5_REVBUMP)" ]; then - eerror "WRONG MD5_REVBUMP!" - fi - - sed -i -e 's:# Copyright 1999-2009 Gentoo Foundation:# Copyright 1999-2010 Gentoo Foundation:' vcstest-0.0.1.ebuild - ech ${echangelog} --vcs $vcs "Revbump...; Just copyright changed." - - if [ "${MD5_COPYRIGHT}" != "$(md5 ChangeLog MD5_COPYRIGHT)" ]; then - eerror "WRONG MD5_COPYRIGHT!" - fi - - if [ "${vcs}" = "cvs" ]; then - rm -f files/test.patch - ${vcs} remove files/test.patch - else - ${vcs} rm files/test.patch - fi - - ech ${echangelog} --vcs $vcs "Revbump...; Just copyright changed; Removed obsolete patch." - - if [ "${MD5_OBSOLETE}" != "$(md5 ChangeLog MD5_OBSOLETE)" ]; then - eerror "WRONG MD5_OBSOLETE!" - fi - - echo "foobar" >> vcstest-0.0.1.ebuild - ech ${echangelog} --vcs $vcs "Revbump...; Just copyright changed; Removed obsolete patch; Modified more then just the copyright." - - if [ "${MD5_FINAL}" != "$(md5 ChangeLog MD5_FINAL)" ]; then - eerror "WRONG MD5_FINAL!" - fi -} - -[ -d "${_ROOT}/tmp" ] && rm -rf ${_ROOT}/tmp -[ -f "${_ROOT}/MD5.new" ] && rm -f ${_ROOT}/MD5.new -mkdir -p ${_ROOT}/tmp - -ebegin "Preparing echangelog" - -if [ -e "../echangelog" ]; then - cp ../echangelog "${_ROOT}/tmp" || set $? - sed -i -e 's:use POSIX qw.*:use POSIX qw(locale_h setlocale getcwd);\nuse TEST qw(strftime);:' "${_ROOT}/tmp/echangelog" || set $? - eend ${1:-0} || exit ${1} -else - eerror "error" - eend ${1:-1} - exit 1 -fi - -for vcs in $SUPPORTED_VCS; do - if [ -x "$(which ${vcs} 2>/dev/null)" ]; then - ebegin "Starting test with ${vcs}" - make_test $_ROOT "${vcs}" || set $? - eend ${1:-0} - [ ${UPDATE_MD5:-0} -eq 1 ] && break - else - ewarn "No ${vcs} executable found, skipping test..." - fi -done - -exit ${1:-0} diff --git a/src/DEPRECATED/ego/AUTHORS b/src/DEPRECATED/ego/AUTHORS deleted file mode 100644 index 36d5bfd..0000000 --- a/src/DEPRECATED/ego/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Aron Griffis <agriffis@gentoo.org> diff --git a/src/DEPRECATED/ego/ChangeLog b/src/DEPRECATED/ego/ChangeLog deleted file mode 100644 index 503d0da..0000000 --- a/src/DEPRECATED/ego/ChangeLog +++ /dev/null @@ -1,2 +0,0 @@ -2004-15-01 Karl Trygve Kalleberg <karltk@gentoo.org> - * Added Makefile diff --git a/src/DEPRECATED/ego/Makefile b/src/DEPRECATED/ego/Makefile deleted file mode 100644 index b8efd42..0000000 --- a/src/DEPRECATED/ego/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 2004 Karl Trygve Kalleberg <karltk@gentoo.org> -# Copyright 2004 Gentoo Technologies, Inc. -# Distributed under the terms of the GNU General Public License v2 -# -# $Header$ - -include ../../makedefs.mak - -all: - -dist: - mkdir -p ../../$(DISTDIR)/src/ego/ - cp Makefile AUTHORS README ChangeLog ego ../../$(DISTDIR)/src/ego/ - -install: all - install -d $(DOCDIR)/ego - install -m 0644 AUTHORS README ego $(DOCDIR)/ego/ - diff --git a/src/DEPRECATED/ego/README b/src/DEPRECATED/ego/README deleted file mode 100644 index 6c44b4c..0000000 --- a/src/DEPRECATED/ego/README +++ /dev/null @@ -1,2 +0,0 @@ -[ -f ${HOME}/scripts/ego.bash ] && -alias ego="unalias ego ; source ${HOME}/scripts/ego.bash ; ego " diff --git a/src/DEPRECATED/ego/ego b/src/DEPRECATED/ego/ego deleted file mode 100644 index cacd188..0000000 --- a/src/DEPRECATED/ego/ego +++ /dev/null @@ -1,88 +0,0 @@ -#!/bin/sh - -echo1() { - echo "$1" -} - -ego() { - local portdir tmpdir category pkg target - - # This is WAY faster than portageq: - # portdir=$(portageq portdir) - # tmpdir=$(portageq envvar PORTAGE_TMPDIR)/portage - eval $( - . /etc/make.globals - . /etc/make.conf - export PORTDIR PORTAGE_TMPDIR - export | sed -n ' - s/^declare -x PORTDIR=/portdir=/p - s/^declare -x PORTAGE_TMPDIR=\(.*\)/tmpdir=\1\/portage/p' - ) - - case $1 in - *-*/*) - pkg=${1##*/} - category=${1%/*} - ;; - - ?*) - pkg=$1 - # require an ebuild so that we can block deprecated packages - # such as dev-libs/rep-gtk - category=$(echo1 $portdir/*-*/$pkg/*.ebuild) - [[ -f $category ]] || category=$(echo1 $portdir/*-*/$pkg*/*.ebuild) - [[ -f $category ]] || category=$(echo1 $portdir/*-*/*$pkg/*.ebuild) - [[ -f $category ]] || category=$(echo1 $portdir/*-*/*$pkg*/*.ebuild) - if [[ ! -f $category ]]; then - echo "Can't find $pkg in $portdir" >&2 - return 1 - fi - pkg=${category%/*} - pkg=${pkg##*/} - category=${category#$portdir/} - category=${category%%/*} - ;; - - *) - # Check if we're under $portdir first - pkg=${PWD##*/} - category=${PWD%/*} - category=${category##*/} - if [[ ! -d $portdir/$category/$pkg ]]; then - # Next check if we're in PORTAGE_TMPDIR - if [[ $PWD = $tmpdir/* ]]; then - pkg=${PWD#$tmpdir/} - pkg=${pkg%%/*} - pkg=${pkg%%-[0-9]*} # not really a valid assumption - category=$(echo1 $portdir/*-*/$pkg/*.ebuild) - if [[ ! -f $category ]]; then - echo "Can't find $pkg in $portdir" >&2 - return 1 - fi - category=${category#$portdir/} - category=${category%%/*} - else - echo "syntax: ego [pkgname]" >&2 - echo "or simply ego from a dir under $portdir or $tmpdir" >&2 - return 1 - fi - fi - ;; - esac - - # go to tmpdir or portdir? - if [[ $PWD/ = */$category/$pkg/* ]]; then - [[ -n $tmpdir ]] || tmpdir=$(portageq envvar PORTAGE_TMPDIR)/portage - target=$(command ls -1td $tmpdir/$pkg-* 2>/dev/null | head -n 1) - if [[ -z $target ]]; then - echo "No matches found for $tmpdir/$pkg-*" >&2 - return 1 - fi - cd $target/work/$pkg* 2>/dev/null || - cd $target/work 2>/dev/null || - cd $target - else - cd $portdir/$category/$pkg - fi -} - diff --git a/src/DEPRECATED/eshowkw/Makefile b/src/DEPRECATED/eshowkw/Makefile deleted file mode 100644 index cc70813..0000000 --- a/src/DEPRECATED/eshowkw/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -include ../../makedefs.mak - -.PHONY: all - -all: - -dist: - mkdir -p ../../$(DISTDIR)/src/eshowkw/ - cp Makefile eshowkw eshowkw.1 ../../$(DISTDIR)/src/eshowkw/ - -install: all - install -m 0755 eshowkw $(BINDIR)/ - install -m 0644 eshowkw.1 $(MAN1DIR)/ - diff --git a/src/DEPRECATED/eshowkw/eshowkw b/src/DEPRECATED/eshowkw/eshowkw deleted file mode 100644 index 98ee7c9..0000000 --- a/src/DEPRECATED/eshowkw/eshowkw +++ /dev/null @@ -1,196 +0,0 @@ -#!/bin/bash -# vim: set sw=4 sts=4 et tw=80 : - -# Author: Ciaran McCreesh <ciaranm@gentoo.org> -# Purpose: Display ebuild keywords in a graphical form -# Invocation: eshowkw [ packagename ] (defaults to current directory if no -# packagename is provided) - -shopt -s extglob - -PID_TO_KILL=$$ - -die() { - echo "$@" 1>&2 - kill $PID_TO_KILL -} - -trap 'exit 250' 15 - -get_portage_dir() { - local dir - if [[ -z ${portage_dir_cache} ]] ; then - for dir in "${HOME}/cvs/gentoo-x86" "/usr/portage" ; do - [[ -d ${dir}/profiles ]] && portage_dir_cache=${dir} && break - done - fi - [[ -z ${portage_dir_cache} ]] && portage_dir_cache=$(portageq portdir ) - export portage_dir_cache - echo ${portage_dir_cache} -} - -version_sort() { - items=$@ - python -c "import portage.versions; versions='$items'.split(); versions.sort(portage.versions.vercmp); print ' '.join(versions)" -} - -get_package_dir() { - if [[ -z ${1} ]] ; then - pwd - return 0 - fi - - if [[ -d ${1} ]] ; then - readlink -f ${1} - return 0 - fi - - get_portage_dir 1>/dev/null - if [[ ${1/\/} != ${1} ]] ; then - local d=$(get_portage_dir )/${1} - if [[ -d ${d} ]] ; then - echo ${d} - return 0 - fi - else - local d - d=( $(echo $(get_portage_dir )/*-*/${1} ) ) - if [[ ${#d[@]} -gt 1 ]] ; then - die "${1} is ambiguous" - elif [[ -d ${d[0]} ]] ; then - echo ${d[0]} - return 0 - fi - fi - - return 1 -} - -repeat() { - local i - for (( i=0 ; i < ${1} ; i=$(( ${i} + 1 )) )) ; do - echo -n "${2}" - done -} - -get_keywords() { - ( - inherit() { :; } - source "$(pwd)/${1}" 2>/dev/null - echo ${KEYWORDS} - ) -} - -colorarch() { - case "${1}" in - amd64) - echo -n -e "\033[0;33m${2}\033[0;0m" - ;; - x86) - echo -n -e "\033[0;31m${2}\033[0;0m" - ;; - *) - echo -n "${2}" - ;; - esac -} - -colourise() { - case "${1}" in - \*) - echo -n -e "\033[0;31m*\033[0;0m" - ;; - +) - echo -n -e "\033[0;32m+\033[0;0m" - ;; - -) - echo -n -e "\033[0;31m-\033[0;0m" - ;; - \~) - echo -n -e "\033[0;33m~\033[0;0m" - ;; - *) - echo -n "${1}" - ;; - esac -} - -show_keyword_diagram() { - echo -n -e "Keywords for \033[1;34m" - local title=$(readlink -f $(pwd ) ) - title=${title#$(readlink -f ../.. )/*( )} - echo -n "${title}" - echo -e "\033[0;0m:" - echo - - local archs=() arch_length=0 arch= - while read arch - do - [[ -z "${arch}" ]] && continue - [[ "${arch:0:1}" == "#" ]] && continue - [[ ${#arch} -gt ${arch_length} ]] && arch_length=${#arch} - - archs[${#archs[*]}]=$arch - done < "$(get_portage_dir)/profiles/arch.list" - - - local versions= pkgname= version_length=0 version= - pkgname=$(basename $(readlink -f ./ ) ) - versions=( $(for e in $(echo *.ebuild ) ; do \ - [[ -f ${e} ]] && echo ${e} | sed -e 's/\.ebuild$//g' \ - -e "s/^${pkgname}-//g" ; \ - done ) ) - versions=( $(version_sort ${versions[@]} ) ) - for version in "${versions[@]}" ; do - [[ ${#version} -gt ${version_length} ]] && version_length=${#version} - done - - local i=0 archletter= - for (( i = 0 ; i < ${arch_length} ; i=$(( ${i} + 1 )) )) ; do - repeat ${version_length} " " - echo -n " | " - for arch in "${archs[@]}" ; do - archletter="${arch:${i}:1}" - echo -n "$(colorarch "${arch}" "${archletter:- }" ) " - done - echo - done - - repeat ${version_length} "-" - echo -n "-+" - repeat ${#archs[@]} "--" - echo - - for version in "${versions[@]}" ; do - echo -n "${version}" - repeat $(( ${version_length} - ${#version} )) " " - echo -n " | " - - local keyword keywords - keywords=( $(get_keywords "${pkgname}-${version}.ebuild" ) ) - for arch in "${archs[@]}" ; do - local display=" " - [[ ${keywords[@]/-\*} != ${keywords[@]} ]] && display="*" - for keyword in "${keywords[@]}" ; do - [[ ${arch} == "${keyword#[~-]}" ]] && \ - display=${keyword:0:1} && \ - break; - done - [[ -z ${display#[~ *-]} ]] || display="+" - echo -n "$(colourise "${display}" ) " - done - - echo - done -} - -main() { - local dir=$(get_package_dir "${1}" ) - [[ -z ${dir} ]] && die "Couldn't find '${1}'" - cd ${dir} - [[ $(echo *.ebuild ) != "*.ebuild" ]] || die "No ebuilds in ${dir}" - show_keyword_diagram - true -} - -main "$@" diff --git a/src/DEPRECATED/eshowkw/eshowkw.1 b/src/DEPRECATED/eshowkw/eshowkw.1 deleted file mode 100644 index 6099f0a..0000000 --- a/src/DEPRECATED/eshowkw/eshowkw.1 +++ /dev/null @@ -1,16 +0,0 @@ -.TH "eshowkw" "1" "Ciaran McCreesh" "gentoolkit-dev" -.SH "NAME" -.LP -eshowkw \- Displays ebuild keywords in a graphical form. -.SH "SYNTAX" -.LP -eshowkw [ packagename ] (defaults to current directory if no packagename is provided) - - -.SH "AUTHORS" -.LP -Ciaran McCreesh <ciaranm@gentoo.org> -Mart Raudsepp <leio@gentoo.org> -Christian Ruppert <idl0r@gentoo.org> -.SH "BUGS" -Please report any bugs to http://bugs.gentoo.org diff --git a/src/DEPRECATED/eviewcvs/AUTHORS b/src/DEPRECATED/eviewcvs/AUTHORS deleted file mode 100644 index 36d5bfd..0000000 --- a/src/DEPRECATED/eviewcvs/AUTHORS +++ /dev/null @@ -1 +0,0 @@ -Aron Griffis <agriffis@gentoo.org> diff --git a/src/DEPRECATED/eviewcvs/Makefile b/src/DEPRECATED/eviewcvs/Makefile deleted file mode 100644 index 76200f4..0000000 --- a/src/DEPRECATED/eviewcvs/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 2005 Gentoo Technologies, Inc. -# Distributed under the terms of the GNU General Public License v2 -# -# $Header$ - -include ../../makedefs.mak - -%.1 : %.pod - pod2man $< > $@ - -.PHONY: all -all: eviewcvs.1 - -dist: eviewcvs.1 - mkdir -p ../../$(DISTDIR)/src/eviewcvs/ - cp Makefile AUTHORS README eviewcvs eviewcvs.pod eviewcvs.1 ../../$(DISTDIR)/src/eviewcvs/ - -install: all - install -m 0755 eviewcvs $(BINDIR)/ - install -d $(DOCDIR)/eviewcvs - install -m 0644 AUTHORS README $(DOCDIR)/eviewcvs/ - install -m 0644 eviewcvs.1 $(MAN1DIR)/ - -clean: - $(RM) eviewcvs.1 diff --git a/src/DEPRECATED/eviewcvs/README b/src/DEPRECATED/eviewcvs/README deleted file mode 100644 index c7258d7..0000000 --- a/src/DEPRECATED/eviewcvs/README +++ /dev/null @@ -1,11 +0,0 @@ -Most of the documentation is contained in the man-page, which you can -read directly (using GNU man) by doing - - man ./eviewcvs.1 - -To rebuild the man-page from pod source, do - - pod2man --name=eviewcvs --center='Gentoolkit' \ - eviewcvs.pod eviewcvs.1 - -03 Nov 2004 agriffis diff --git a/src/DEPRECATED/eviewcvs/eviewcvs b/src/DEPRECATED/eviewcvs/eviewcvs deleted file mode 100755 index 280ec0b..0000000 --- a/src/DEPRECATED/eviewcvs/eviewcvs +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/bash -# $Id$ -# -# Copyright 2005, Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# Written by Aron Griffis <agriffis@gentoo.org> -# -# eviewcvs - generate viewcvs urls for some files -# - -if [[ -t 1 ]]; then - blue="[34;01m" - cyan="[36;01m" - green="[32;01m" - red="[31;01m" - off="[0m" -else - unset blue cyan green red off -fi - -startdir="$PWD" -url="http://sources.gentoo.org/viewcvs.py" -unset diffs -declare -a hdr orev - -chdir() { - cd "$1" || return - - # Figure out where we are, hopefully - unset cwd root - if [[ -f CVS/Repository ]]; then - cwd=$(<CVS/Repository) - elif [[ -f .svn/entries ]]; then - cwd=$(grep -om1 'url=.*' .svn/entries) - cwd=${cwd#*/var/svnroot/} - cwd=${cwd%\"*} - fi -} - -# Default to all files in directory -[[ -n $* ]] || set -- * - -for f in "$@"; do - [[ -f $f ]] || continue - - # Determine the directory settings - if [[ $f == */* ]]; then - chdir ${f%/*} - f=${f##*/} - else - chdir ${startdir} - fi - - # Default to the directory settings - fwd=$cwd - - # Get the header for this file, from which we can extract the root, - # directory and revision - hdr=( $(egrep -m1 -o '\$(Header|Id):[^$]*\$' "$f") ) - frev=${hdr[2]} - case ${hdr[*]} in - \$Header:\ /var/cvsroot/*/*\ \$*) - fwd=${hdr[1]} # /var/cvsroot/gentoo-src/keychain/keychain.sh,v - fwd=${fwd#/var/cvsroot/} # gentoo-src/keychain/keychain.sh,v - fwd=${fwd%/*} # gentoo-src/keychain - ;; - '') - if [[ -d CVS ]]; then - frev=$(cvs log "$f" 2>/dev/null | awk '/^head:/{print $2}') - elif [[ -d .svn ]]; then - frev=$(svn info "$f" 2>/dev/null | awk '/^Revision:/{print $2}') - fi - ;; - esac - [[ -n ${frev} ]] || continue - - # Here is the simple URL to view it - echo "${url}/${fwd:+$fwd/}${green}${f}${off}?rev=${frev}&view=markup" - - # Also supply a diff URL if possible - if [[ ${frev##*.} -gt 1 ]]; then - orev=( ${frev//./ } ) # convert to array - (( orev[${#orev[@]}-1]-- )) # decrement the last element - orev=${orev[*]} # convert to string - orev=${orev// /.} # revert spaces to dots - diffs="${diffs:+$diffs -}${url}/${fwd:+$fwd/}${blue}${f}${off}?r1=${orev}&r2=${frev}" - fi -done - -if [[ -n ${diffs} ]]; then - echo "${diffs}" -fi - -# vim:set expandtab sw=4 smarttab: diff --git a/src/DEPRECATED/eviewcvs/eviewcvs.pod b/src/DEPRECATED/eviewcvs/eviewcvs.pod deleted file mode 100644 index b4403c8..0000000 --- a/src/DEPRECATED/eviewcvs/eviewcvs.pod +++ /dev/null @@ -1,48 +0,0 @@ -=head1 NAME - -eviewcvs - Gentoo: generate viewcvs URLs - -=head1 SYNOPSIS - -eviewcvs [ I<files...> ] - -=head1 DESCRIPTION - -This tool generates a list of viewcvs URLs based on the files listed, or all the -files in the current directory if the file list is omitted. The first part of -the output, hilighted in green, is the simple URLs to view the files. The -second part of the output, hilighted in blue, is the URLs to view the diffs -against the previous revision. - -=head1 OPTIONS - -Presently eviewcvs is simple enough that it supplies no options. -Probably I'll add B<--help> and B<--version> in the future, but for -now it's enough to track the gentoolkit version. - -=head1 EXAMPLES - -To generate viewcvs URLs for a given file: - - $ eviewcvs package.mask - http://www.gentoo.org/cgi-bin/viewcvs.cgi/profiles/package.mask?rev=1.3716&content-type=text/vnd.viewcvs-markup - http://www.gentoo.org/cgi-bin/viewcvs.cgi/profiles/package.mask?r1=1.3715&r2=1.3716 - -To generate viewcvs URLs for all files in a directory: - - $ cd portage/net-misc/keychain - $ eviewcvs - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/ChangeLog?rev=1.54&view=markup - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/Manifest?rev=1.86&view=markup - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/keychain-2.6.1.ebuild?rev=1.3&view=markup - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/keychain-2.6.2.ebuild?rev=1.1&view=markup - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/metadata.xml?rev=1.3&view=markup - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/ChangeLog?r1=1.53&r2=1.54 - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/Manifest?r1=1.85&r2=1.86 - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/keychain-2.6.1.ebuild?r1=1.2&r2=1.3 - http://sources.gentoo.org/viewcvs.py/gentoo-x86/net-misc/keychain/metadata.xml?r1=1.2&r2=1.3 - -=head1 AUTHOR - -This tool was written by Aron Griffis <agriffis@gentoo.org>. Bugs -found should be filed against me at http://bugs.gentoo.org/ |