diff options
Diffstat (limited to 'Tools/scripts/modulesupdate')
-rwxr-xr-x | Tools/scripts/modulesupdate | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/Tools/scripts/modulesupdate b/Tools/scripts/modulesupdate deleted file mode 100755 index c5a0bbce1f37..000000000000 --- a/Tools/scripts/modulesupdate +++ /dev/null @@ -1,115 +0,0 @@ -#! /usr/bin/perl -# -# This code mostly stolen from easy-import written by J^vrg Wunsch -# -# $Id: modulesupdate,v 1.8 2000/04/02 05:42:12 mharo Exp $ -# $FreeBSD$ - -use strict; - -my $tmpdir; - -if ($ENV{CVSROOT} eq "") { - $ENV{CVSROOT}="pcvs.freebsd.org:/home/pcvs"; -} - -sub goodbye -{ - my ($exitstatus)=@_; - chdir "/tmp"; - print `rm -rf $tmpdir`; - exit $exitstatus; -} - -sub contains -{ - # look if the first parameter is contained in the list following it - my($item, @list) = @_; - - foreach my $i (@list) { - return 1 if $i eq $item; - } - return 0; -} - -sub lsmodules -{ - # list all known CVS modules - my(%rv, $mname, $mpath); - - %rv = (); - - print "Checking out the modules database...\n"; - system("cvs -R co modules") && die "failed.\n"; - - my $start_read = 0; - - open(CVS, "<modules/modules") || die "$!"; - while(<CVS>) { - if (/!!MERGE!!/g) { - $start_read = 1; - } - - if ($start_read && /^[^ #]/) { - chomp; - chomp; - ($mname,$mpath) = split; - next if $mname eq ""; - $rv{$mname} = $mpath; - } - } - close(CVS); - - return %rv; -} - -$tmpdir=`mktemp -d -t mu`; -chomp $tmpdir; -chdir $tmpdir or die "$tmpdir: $!"; - -my %cvsmods = &lsmodules; -my $modulename = shift; -my $modulepath = shift; -my $dont_do_it = ""; - -if ($modulepath eq "") { - print "Error: Must specify both modulename and modulepath\n"; - &goodbye(1); -} - -if (&contains($modulename, keys(%cvsmods))) { - print "Error: $modulename already exists in modules\n"; - &goodbye(1); -} - -my $mod = ""; -foreach my $tmp (sort(keys(%cvsmods))) { - if ($tmp gt $modulename) { - $mod = $tmp; - last; - } -} - -my $cmd; -if ($mod eq "") { - # we are going to append our module - $cmd = "\$\na\n"; -} else { - # we can insert it - $cmd = "/^" . $mod . "[ \t]/\ni\n"; -} - -my $len = length($modulename); -print "Inserting new module...\n"; -open(ED, "|ed modules/modules") || die "Cannot start ed\n"; -print ED "$cmd$modulename" . "\t" x ($len < 8 ? 2 : 1) . - "$modulepath\n.\nw\nq\n"; -close(ED); - -print "Commiting new modules database...\n"; -system("cvs -R $dont_do_it commit -m \" " . - "$modulename --> $modulepath\" modules") - && die "Commit failed\n"; - -# cleanup -&goodbye; |