home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-08-25 | 44.7 KB | 1,668 lines |
- Newsgroups: comp.sources.misc
- From: Raphael Manfredi <ram@acri.fr>
- Subject: v39i049: dist-3.0 - Configure script generator and related tools, Patch03
- Message-ID: <1993Aug25.235012.23562@sparky.sterling.com>
- X-Md4-Signature: 8b61182fc1d55f0beb309ba59afd1380
- Sender: kent@sparky.sterling.com (Kent Landfield)
- Organization: Advanced Computer Research Institute, Lyon, France
- Date: Wed, 25 Aug 1993 23:50:12 GMT
- Approved: kent@sparky.sterling.com
-
- Submitted-by: Raphael Manfredi <ram@acri.fr>
- Posting-number: Volume 39, Issue 49
- Archive-name: dist-3.0/patch03
- Environment: UNIX, Perl, RCS
- Patch-To: dist-3.0: Volume 39, Issue 5-32
-
- [The latest patch for dist version 3.0 is #4.]
-
- System: dist version 3.0
- Patch #: 3
- Priority: MEDIUM
- Subject: was not correctly writing the To: header field
- Subject: config.sh searching was not aborting properly
- Subject: added patnotify and patsnap
- Subject: forgot two people in main credit section
- Subject: new credit section for patches
- Subject: added entries for patnotify and patsnap
- Subject: privlib dir was ~name expanded in the wrong place
- Subject: added TOP as a local shell temporary variable
- Subject: typo fixes
- Subject: now removes older patch temporary files within bugs
- Subject: patcol has a new -S option
- Subject: the users file built by mailagent is now listed under FILES
- Subject: random cleanup
- Subject: new -S option for snapshot check-outs
- Subject: removed useless orgname variable
- Subject: now asks for patch mailing/posting after all patches edited
- Subject: patch release notification is done via new patnotify
- Subject: random cleanup, removed old RCS logs
- Subject: created five new files
- Subject: added ~name expansion for orgname
- Subject: new -u option
- Subject: added Precedence and X-Mailer headers in mail message
- Subject: added some comments about the users file format
- Date: Tue Aug 24 14:25:56 MET DST 1993
- From: Raphael Manfredi <ram@acri.fr>
-
- Description:
- Random cleanup in the patching tools:
- - patsend was not correctly writing the To: header field
- - patcol has a new -S option for snapshot check-outs
- - removed useless orgname variable in patftp
- - patch release notification is done via new patnotify
- - now asks for patch mailing/posting after all patches edited
- - added ~name expansion for orgname
- - patsend has a brand new -u option
- - added Precedence and X-Mailer headers in mail message
- - pat now removes older patch temporary files within bugs
-
- Added patnotify and patsnap in the patching tools. Patnotify
- is the pending of patsend for patch notification and is now
- directly used by patmake. Patsnap creates RCS snapshots which
- can then recreate the distribution when fed to patcol -S.
-
- Forgot two people in main credit section, sorry. There is also
- a new section in the Credits file for people contributing to
- the release from now on.
-
- Privlib dir was ~name expanded in the wrong place in jmake,
- hence resulting in a /bin/cpp failure when portability was
- asked in Configure.
-
- Added TOP as a local shell temporary variable in mcon/U/Config_h.U
-
- The users file built by mailagent is now listed under the FILES
- section of the pat tools manual page.
-
- Added some comments about the users file format in the pl/users.pl
- file itself.
-
- There are 5 new files created by this patch, one of which
- (mcon/U/afs.U) was missing from the original distribution
- although referenced by some other units...
-
-
- Fix: From rn, say "| patch -p -N -d DIR", where DIR is your dist source
- directory. Outside of rn, say "cd DIR; patch -p -N <thisarticle".
- If you don't have the patch program, apply the following by hand,
- or get patch (version 2.0, latest patchlevel).
-
- After patching:
- *** DO NOTHING--INSTALL ALL PATCHES UP THROUGH #4 FIRST ***
-
- If patch indicates that patchlevel is the wrong version, you may need
- to apply one or more previous patches, or the patch may already
- have been applied. See the patchlevel.h file to find out what has or
- has not been applied. In any event, don't continue with the patch.
-
- If you are missing previous patches they can be obtained from me:
-
- Raphael Manfredi <ram@acri.fr>
-
- If you send a mail message of the following form it will greatly speed
- processing:
-
- Subject: Command
- @SH mailpatch PATH dist 3.0 LIST
- ^ note the c
-
- where PATH is a return path FROM ME TO YOU either in Internet notation,
- or in bang notation from some well-known host, and LIST is the number
- of one or more patches you need, separated by spaces, commas, and/or
- hyphens. Saying 35- says everything from 35 to the end.
-
- To get some more detailed instructions, send me the following mail:
-
- Subject: Command
- @SH mailhelp PATH
-
-
- Index: patchlevel.h
- Prereq: 2
- 4c4
- < #define PATCHLEVEL 2
- ---
- > #define PATCHLEVEL 3
-
- Index: pat/patmake.SH
- Prereq: 3.0.1.1
- *** pat/patmake.SH.old Tue Aug 24 14:25:43 1993
- --- pat/patmake.SH Tue Aug 24 14:25:44 1993
- ***************
- *** 20,26 ****
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patmake.SH,v 3.0.1.1 1993/08/19 06:42:38 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- --- 20,26 ----
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patmake.SH,v 3.0.1.2 1993/08/24 12:18:59 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- ***************
- *** 34,39 ****
- --- 34,44 ----
- # Contribution by: Graham Stoney <greyham@research.canon.oz.au>
- #
- # $Log: patmake.SH,v $
- + # Revision 3.0.1.2 1993/08/24 12:18:59 ram
- + # patch3: now asks for patch mailing/posting after all patches edited
- + # patch3: patch release notification is done via new patnotify
- + # patch3: random cleanup, removed old RCS logs
- + #
- # Revision 3.0.1.1 1993/08/19 06:42:38 ram
- # patch1: leading config.sh searching was not aborting properly
- #
- ***************
- *** 40,59 ****
- # Revision 3.0 1993/08/18 12:10:45 ram
- # Baseline for dist 3.0 netwide release.
- #
- - #
- - # Revision 2.8.1.3 91/10/11 09:58:51 ram
- - # patch5: allows dot in makefile rules
- - #
- - # Revision 2.8.1.2 91/07/14 14:00:42 ram
- - # patch1: urgent fix due to a disk crash (file was not synced, grrr...)
- - #
- - # Revision 2.8.1.1 91/07/14 13:31:01 ram
- - # patch1: added usage message which also briefly describes options
- - # patch1: now uses the perl library getopts.pl for option parsing
- - #
- - # Revision 2.8 91/07/08 13:26:52 ram
- - # 3.0 alpha baseline.
- - #
-
- \$defeditor='$defeditor';
- \$version = '$VERSION';
- --- 45,50 ----
- ***************
- *** 75,81 ****
- &readpackage;
- &readusers;
-
- - $RCSEXT = ',v' unless $RCSEXT;
- $FILEOVERHEAD = 40; # Name of files, Index, Prereq
- $MAXPATSIZE = 50000; # Maximum allowed size for a patch
- $PATOVERHEAD = 2500; # Litterature
- --- 66,71 ----
- ***************
- *** 304,310 ****
- > #define PATCHLEVEL $bnum
- ";
- }
- ! $last = $bnum; # Update last patch
-
- @ARGV = split(' ', $list[$i]);
- while (<>) { print PATCH; }
- --- 294,301 ----
- > #define PATCHLEVEL $bnum
- ";
- }
- ! $last = $bnum; # Update last patch
- ! push(@patset, $bnum); # Record set of generated patch(es)
-
- @ARGV = split(' ', $list[$i]);
- while (<>) { print PATCH; }
- ***************
- *** 336,367 ****
- close PL;
- `mv -f patchlevel.h+ patchlevel.h`;
- die "Malformed patchlevel.h file.\n" if $bnum eq '';
- -
- - if ($newsgroups) {
- - print "\nDo you wish to post patch #$bnum to $newsgroups? [y] ";
- - $ans = <stdin>;
- - system 'patpost', $bnum unless $ans =~ /^n/i;
- - }
- - if ($recipients) {
- - print "\n";
- - if (0 == ($recipients =~ tr/ //)) {
- - print "Do you wish to send patch #$bnum to $recipients? [y] ";
- - } else {
- - print "The following people are on the recipient list:\n\n";
- - foreach $addr (split(' ', $recipients)) {
- - print "\t$addr\n";
- - }
- - print "\nDo you wish to send patch #$bnum to them? [y] ";
- - }
- - $ans = <stdin>;
- - system 'patsend', $bnum, $recipients unless $ans =~ /^n/i;
- - }
- - if ($ftpdir) {
- - print "\nDo you wish to copy patch #$bnum to $ftpdir? [y] ";
- - $ans = <stdin>;
- - system 'patftp', $bnum unless $ans =~ /^n/i;
- - }
- - utime time, time, 'patchlevel.h';
- } else {
- unlink "patch$bnum";
- die "Aborted.\n";
- --- 327,332 ----
- ***************
- *** 380,386 ****
- $bnum++; # For next patch in loop
- }
-
- ! # notify people about it.
- if ($notify) {
- print "\n";
- if (0 == ($notify =~ tr/ //)) {
- --- 345,393 ----
- $bnum++; # For next patch in loop
- }
-
- ! utime time, time, 'patchlevel.h'; # Reset timestamp on patchlevel
- !
- ! if (@patset == 1) {
- ! $bnum = pop(@patset);
- ! $patch = "patch #$bnum";
- ! } else {
- ! $bmin = shift(@patset);
- ! $bmax = pop(@patset);
- ! $bnum = "$bmin-$bmax";
- ! $patch = "patches #$bmin thru #$bmax";
- ! }
- !
- ! # Post generated patches
- ! if ($newsgroups) {
- ! print "\nDo you wish to post $patch to $newsgroups? [y] ";
- ! $ans = <stdin>;
- ! system 'patpost', $bnum unless $ans =~ /^n/i;
- ! }
- !
- ! # Mail generated patches
- ! if ($recipients) {
- ! print "\n";
- ! if (0 == ($recipients =~ tr/ //)) {
- ! print "Do you wish to send $patch to $recipients? [y] ";
- ! } else {
- ! print "The following people are on the recipient list:\n\n";
- ! foreach $addr (split(' ', $recipients)) {
- ! print "\t$addr\n";
- ! }
- ! print "\nDo you wish to send $patch to them? [y] ";
- ! }
- ! $ans = <stdin>;
- ! system 'patsend', $bnum, $recipients unless $ans =~ /^n/i;
- ! }
- !
- ! # Copy patches to FTP directory
- ! if ($ftpdir) {
- ! print "\nDo you wish to copy $patch to $ftpdir? [y] ";
- ! $ans = <stdin>;
- ! system 'patftp', $bnum unless $ans =~ /^n/i;
- ! }
- !
- ! # Notify people about it.
- if ($notify) {
- print "\n";
- if (0 == ($notify =~ tr/ //)) {
- ***************
- *** 393,435 ****
- print "\nDo you wish to notify them? [y] ";
- }
- $ans = <STDIN>;
- ! if ($ans !~ /^n/i) {
- ! if ($numpat == 1) {
- ! $descr = "Patch $patbase";
- ! $has = "has"; $this = "this patch";
- ! $patlist = $patbase;
- ! } else {
- ! $descr = "Patches $patbase thru " . ($patbase+$numpat-1);
- ! $has = "have"; $this = "these patches";
- ! $patlist = $patbase . "-" . ($patbase+$numpat-1);
- ! }
- ! $opt = ($mailer =~ /sendmail/) ? '-odq' : '';
- ! open(MAILER, "|$mailer $opt $notify $cf'user");
- ! print MAILER
- ! "To: $notify
- ! Subject: $descr for $package version $baserev $has been released.
- ! X-Mailer: dist [version $version PL$patchlevel]
- !
- ! This is just a quick note to let you know that $descr for $package
- ! version $baserev $has just been released. If you are actively using $package,
- ! I strongly suggest you upgrade by applying $this.
- !
- ! You can fetch $this automatically by sending me the following mail:
- !
- ! Subject: Command
- ! @SH mailpatch - $package $baserev $patlist
- ! ^ note the c
- !
- ! If you are not interested in receiving information about future patches,
- ! please send me the following mail:
- !
- ! Subject: Command
- ! @SH package - $package $baserev
- !
- ! -- patmake speaking for $maintname.
- ! ";
- ! close MAILER;
- ! }
- }
-
- sub usage {
- --- 400,406 ----
- print "\nDo you wish to notify them? [y] ";
- }
- $ans = <STDIN>;
- ! system 'patnotify', $notify unless $ans =~ /^n/i;
- }
-
- sub usage {
-
- Index: pat/pat.man
- Prereq: 3.0
- *** pat/pat.man.old Tue Aug 24 14:25:39 1993
- --- pat/pat.man Tue Aug 24 14:25:40 1993
- ***************
- *** 1,5 ****
- .rn '' }`
- ! ''' $Id: pat.man,v 3.0 1993/08/18 12:10:37 ram Exp $
- '''
- ''' Copyright (c) 1991-1993, Raphael Manfredi
- '''
- --- 1,5 ----
- .rn '' }`
- ! ''' $Id: pat.man,v 3.0.1.1 1993/08/24 12:15:42 ram Exp $
- '''
- ''' Copyright (c) 1991-1993, Raphael Manfredi
- '''
- ***************
- *** 10,15 ****
- --- 10,20 ----
- ''' of the source tree for dist 3.0.
- '''
- ''' $Log: pat.man,v $
- + ''' Revision 3.0.1.1 1993/08/24 12:15:42 ram
- + ''' patch3: added patnotify and patsnap
- + ''' patch3: patcol has a new -S option
- + ''' patch3: the users file built by mailagent is now listed under FILES
- + '''
- ''' Revision 3.0 1993/08/18 12:10:37 ram
- ''' Baseline for dist 3.0 netwide release.
- '''
- ***************
- *** 85,91 ****
- .br
- .B patsend
- [
- ! .B \-hV
- ] [
- .I patchlist
- ] [
- --- 90,96 ----
- .br
- .B patsend
- [
- ! .B \-huV
- ] [
- .I patchlist
- ] [
- ***************
- *** 92,97 ****
- --- 97,109 ----
- .I recipients
- ]
- .br
- + .B patnotify
- + [
- + .B \-huV
- + ] [
- + .I recipients
- + ]
- + .br
- .B patpost
- [
- .B \-hrV
- ***************
- *** 116,121 ****
- --- 128,143 ----
- .I filelist
- ]
- .br
- + .B patsnap
- + [
- + .B \-ahV
- + ] [
- + .B \-o
- + .I snapshot
- + ] [
- + .I filelist
- + ]
- + .br
- .B patcol
- [
- .B \-achnmsCV
- ***************
- *** 123,128 ****
- --- 145,156 ----
- .B \-d
- .I directory
- ] [
- + .B \-f
- + .I mani
- + ] [
- + .B \-S
- + .I snap
- + ] [
- .I filelist
- ]
- .br
- ***************
- *** 263,279 ****
- .PP
- Patsend, patpost and patftp are used to distribute your patches to the world.
- .I Patsend
- ! mails a set of patches to a set of recipients.
- .I Patpost
- posts a set of patches to a set of newsgroups.
- .I Patftp
- merely copies the patch into your public ftp directory.
- .PP
- .I Patname
- can be used to tag a set of files with a symbolic name (specified with
- \fB\-v\fR). This will set the name for the most recent revision of each
- file.
- .PP
- .I Patcol
- will check out a locked version of a file, eventually in an alternate
- directory (specified with \fB\-d\fR, thus mirroring the distribution tree).
- --- 291,321 ----
- .PP
- Patsend, patpost and patftp are used to distribute your patches to the world.
- .I Patsend
- ! mails a set of patches to a set of recipients. The \fB\-u\fR switch adds all
- ! the currently registered users who have asked for patches to be mailed to
- ! them, as well as the recipients specified while running \fIpackinit\fR.
- .I Patpost
- posts a set of patches to a set of newsgroups.
- .I Patftp
- merely copies the patch into your public ftp directory.
- .PP
- + .I Patnotify simply notifies users that a new patch has been released so that
- + they can retrieve it by themselves from an archive site or via e-mail if they
- + are interested. The \fB\-u\fR switch can be used to include all the currently
- + registered users who have asked for such a notification.
- + .PP
- .I Patname
- can be used to tag a set of files with a symbolic name (specified with
- \fB\-v\fR). This will set the name for the most recent revision of each
- file.
- .PP
- + .I Patsnap
- + will get a snapshot of your release by creating a SNAPSHOT file (name can be
- + changed via \fB\-o\fR) listing the file names and the latest RCS revision
- + number for that file. Such snapshots can be used to identify the release
- + at some random patchlevel and then later be able to retrieve it by feeding
- + the snapshot file to \fIpatcol\fR.
- + .PP
- .I Patcol
- will check out a locked version of a file, eventually in an alternate
- directory (specified with \fB\-d\fR, thus mirroring the distribution tree).
- ***************
- *** 285,290 ****
- --- 327,340 ----
- into a directory by using the \fB\-c\fR switch in conjunction with \fB\-d\fR
- (or that former switch is simply ignored).
- .PP
- + .I Patcol
- + can also take its file list from a SNAPSHOT file via the \fB\-S\fR switch, in
- + which case it will check out the files using the RCS version specified by the
- + snapshot file, such as one created by \fIpatsnap\fR. You may instead specify
- + \fB-a\fR, \fB\-m\fR or \fB\-n\fR to respectively use all the files in
- + MANIFEST.new, all the modified files (the one which have been \fIpatcil\fRed),
- + or all the files newer than \fIpatchlevel.h\fR.
- + .PP
- .I Patclean
- will remove the working files after having checked in all the
- changes. You may restores your working files by using patcol.
- ***************
- *** 337,342 ****
- --- 387,397 ----
- .TP
- bugs/.mods[0-9]+
- Files modified in that patch (checked in with \fIpatcil\fR)
- + .TP
- + users
- + File filled in by \fImailagent\fR's "@SH package" command, normally
- + issued by Configure, recording some of the users who kindly registered
- + themselves.
- .PD
- .SH ENVIRONMENT
- .PD 0
-
- Index: pat/patsend.SH
- Prereq: 3.0.1.1
- *** pat/patsend.SH.old Tue Aug 24 14:25:47 1993
- --- pat/patsend.SH Tue Aug 24 14:25:47 1993
- ***************
- *** 20,26 ****
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patsend.SH,v 3.0.1.1 1993/08/19 06:42:42 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- --- 20,26 ----
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patsend.SH,v 3.0.1.3 1993/08/24 12:21:59 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- ***************
- *** 33,38 ****
- --- 33,46 ----
- # Original Author: Larry Wall <lwall@netlabs.com>
- #
- # $Log: patsend.SH,v $
- + # Revision 3.0.1.3 1993/08/24 12:21:59 ram
- + # patch3: new -u option
- + # patch3: added Precedence and X-Mailer headers in mail message
- + # patch3: added ~name expansion for orgname
- + #
- + # Revision 3.0.1.2 1993/08/19 07:10:19 ram
- + # patch3: was not correctly writing the To: header field
- + #
- # Revision 3.0.1.1 1993/08/19 06:42:42 ram
- # patch1: leading config.sh searching was not aborting properly
- #
- ***************
- *** 48,54 ****
- cat >>patsend <<'!NO!SUBS!'
-
- require 'getopts.pl';
- ! &usage unless &Getopts("hV");
-
- if ($opt_V) {
- print STDERR "patsend $version PL$patchlevel\n";
- --- 56,62 ----
- cat >>patsend <<'!NO!SUBS!'
-
- require 'getopts.pl';
- ! &usage unless &Getopts("huV");
-
- if ($opt_V) {
- print STDERR "patsend $version PL$patchlevel\n";
- ***************
- *** 57,67 ****
- &usage;
- }
-
- - $RCSEXT = ',v' unless $RCSEXT;
- chdir '..' if -d '../bugs';
-
- &readpackage;
-
- chop($orgname = `cat $orgname`) if $orgname =~ m|^/|;
-
- while ($_ = shift) {
- --- 65,76 ----
- &usage;
- }
-
- chdir '..' if -d '../bugs';
-
- &readpackage;
- + &readusers if $opt_u;
-
- + $orgname = &tilda_expand($orgname);
- chop($orgname = `cat $orgname`) if $orgname =~ m|^/|;
-
- while ($_ = shift) {
- ***************
- *** 73,78 ****
- --- 82,89 ----
- }
- }
- $dest = join(' ',@dest);
- + $dest .= " $recipients" if $opt_u;
- + $to = join(', ', split(' ', $dest));
- &usage unless $dest;
-
- @ARGV = @argv;
- ***************
- *** 85,97 ****
- die "Malformed patchlevel.h file.\n" if $maxnum eq '';
-
- if ($#ARGV < 0) {
- ! $argv = $maxnum;
- ! @ARGV = $argv;
- } else {
- $argv = &rangeargs(@ARGV);
- - @ARGV = split(' ',$argv);
- }
-
- $argv =~ s/ $//;
-
- if ($#ARGV < 0) {
- --- 96,109 ----
- die "Malformed patchlevel.h file.\n" if $maxnum eq '';
-
- if ($#ARGV < 0) {
- ! @patseq = &patseq($maxnum);
- ! $lastpat = pop(@patseq);
- ! $argv = &rangeargs("$lastpat-$maxnum");
- } else {
- $argv = &rangeargs(@ARGV);
- }
-
- + @ARGV = split(' ',$argv);
- $argv =~ s/ $//;
-
- if ($#ARGV < 0) {
- ***************
- *** 103,112 ****
- print "Sending $package $baserev patch $argv to $dest...\n";
- }
-
- fork && exit;
-
- - chdir 'bugs' || die "patsend: can't cd to bugs\n";
- -
- $opt = '-odq' if $mailer =~ /sendmail/;
-
- until ($#ARGV < 0) {
- --- 115,124 ----
- print "Sending $package $baserev patch $argv to $dest...\n";
- }
-
- + chdir 'bugs' || die "patsend: can't cd to bugs: $!\n";
- +
- fork && exit;
-
- $opt = '-odq' if $mailer =~ /sendmail/;
-
- until ($#ARGV < 0) {
- ***************
- *** 113,120 ****
- $patnum = shift;
- open(XHEAD,">.xhead$$") || die "patsend: can't create temp file: $!\n";
- print XHEAD
- ! "To: $dest
- Subject: $package $baserev patch #$patnum
- Organization: $orgname
-
-
- --- 125,134 ----
- $patnum = shift;
- open(XHEAD,">.xhead$$") || die "patsend: can't create temp file: $!\n";
- print XHEAD
- ! "To: $to
- Subject: $package $baserev patch #$patnum
- + Precedence: bulk
- + X-Mailer: dist [version $version PL$patchlevel]
- Organization: $orgname
-
-
- ***************
- *** 131,138 ****
- unlink ".xhead$$";
-
- sub usage {
- ! print STDERR "Usage: patsend [-hV] [patchlist] [recipients]\n";
- print STDERR " -h : print this message and exit\n";
- print STDERR " -V : print version number and exit\n";
- exit 1;
- }
- --- 145,153 ----
- unlink ".xhead$$";
-
- sub usage {
- ! print STDERR "Usage: patsend [-huV] [patchlist] [recipients]\n";
- print STDERR " -h : print this message and exit\n";
- + print STDERR " -u : add all to-be-mailed users\n";
- print STDERR " -V : print version number and exit\n";
- exit 1;
- }
- ***************
- *** 140,144 ****
- --- 155,162 ----
- !NO!SUBS!
- $grep -v '^;#' ../pl/package.pl >>patsend
- $grep -v '^;#' ../pl/rangeargs.pl >>patsend
- + $grep -v '^;#' ../pl/users.pl >>patsend
- + $grep -v '^;#' ../pl/patseq.pl >>patsend
- + $grep -v '^;#' ../pl/tilde.pl >>patsend
- chmod +x patsend
- $eunicefix patsend
-
- Index: pat/patnotify.SH
- *** pat/patnotify.SH.old Tue Aug 24 14:25:45 1993
- --- pat/patnotify.SH Tue Aug 24 14:25:45 1993
- ***************
- *** 0 ****
- --- 1,144 ----
- + case $CONFIG in
- + '')
- + if test -f config.sh; then TOP=.;
- + elif test -f ../config.sh; then TOP=..;
- + elif test -f ../../config.sh; then TOP=../..;
- + elif test -f ../../../config.sh; then TOP=../../..;
- + elif test -f ../../../../config.sh; then TOP=../../../..;
- + else
- + echo "Can't find config.sh."; exit 1
- + fi
- + . $TOP/config.sh
- + ;;
- + esac
- + case "$0" in
- + */*) cd `expr X$0 : 'X\(.*\)/'` ;;
- + esac
- + echo "Extracting pat/patnotify (with variable substitutions)"
- + cat >patnotify <<!GROK!THIS!
- + $startperl
- + eval "exec perl -S \$0 \$*"
- + if \$running_under_some_shell;
- +
- + # $Id: patnotify.SH,v 3.0.1.1 1993/08/24 12:19:11 ram Exp $
- + #
- + # Copyright (c) 1991-1993, Raphael Manfredi
- + #
- + # You may redistribute only under the terms of the Artistic Licence,
- + # as specified in the README file that comes with the distribution.
- + # You may reuse parts of this distribution only within the terms of
- + # that same Artistic Licence; a copy of which may be found at the root
- + # of the source tree for dist 3.0.
- + #
- + # $Log: patnotify.SH,v $
- + # Revision 3.0.1.1 1993/08/24 12:19:11 ram
- + # patch3: created
- + #
- +
- + \$defeditor='$defeditor';
- + \$version = '$VERSION';
- + \$patchlevel = '$PATCHLEVEL';
- + \$mailer = '$mailer';
- + !GROK!THIS!
- + cat >>patnotify <<'!NO!SUBS!'
- +
- + require 'getopts.pl';
- + &usage unless &Getopts("huV");
- +
- + if ($opt_V) {
- + print STDERR "patnotify $version PL$patchlevel\n";
- + exit 0;
- + } elsif ($opt_h) {
- + &usage;
- + }
- +
- + chdir '..' if -d '../bugs';
- +
- + &readpackage;
- + &readusers if $opt_u;
- +
- + $dest = join(' ', @ARGV);
- + $dest .= " $notify" if $opt_u;
- +
- + &usage unless $dest;
- +
- + if (-f 'patchlevel.h') {
- + open(PL,"patchlevel.h") || die "Can't open patchlevel.h\n";
- + while (<PL>) {
- + if (/^#define\s+PATCHLEVEL\s+(\d+)/) {
- + $last = $1;
- + }
- + }
- + die "Malformed patchlevel.h file.\n" if $last eq '';
- + } else {
- + die "No patchlevel.h.\n";
- + }
- +
- + @patches = &patseq($last); # Compute patches sequence
- + $lastpat = pop(@patches);
- +
- + warn "patnotify: missing last .logs and .mods files\n" if $lastpat eq '';
- +
- + $missing = $last - $lastpat + 1;
- + $these = $missing == 1 ? 'this' : 'these';
- + $patches = $missing == 1 ? 'patch' : 'patches';
- + $through = $missing == 1 ? $lastpat : "$lastpat thru " . ($lastpat+$missing-1);
- + $have = $missing == 1 ? 'has' : 'have';
- + $patlist = "$lastpat-"; # They'll get everything up to the end
- +
- + ($Patches = $patches) =~ s/^p/P/;
- +
- + $opt = ($mailer =~ /sendmail/) ? '-odq' : '';
- + $to = join(', ', split(' ', $dest)); # Sensible To: for sendmail
- +
- + print "Sending notification of $missing new $patches to $dest...\n";
- +
- + fork && exit;
- +
- + chdir 'bugs' || die "patnotify: can't cd to bugs: $!\n";
- +
- + open(MAILER, "|$mailer $opt $dest");
- + print MAILER
- + "To: $to
- + Subject: $Patches $through for $package version $baserev $have been released.
- + Precedence: bulk
- + X-Mailer: dist [version $version PL$patchlevel]
- +
- + This is just a quick note to let you know that $package version $baserev
- + has been recently upgraded and that $patches $through $have been released.
- +
- + If you are actively using $package, I strongly suggest you upgrade by
- + applying $these $patches.
- +
- + You can fetch $these $patches automatically by sending me the following mail:
- +
- + Subject: Command
- + @SH mailpatch - $package $baserev $patlist
- + ^ note the c
- +
- + If you are not interested in receiving information about future patches,
- + please send me the following mail:
- +
- + Subject: Command
- + @SH package - $package $baserev
- +
- + -- patnotify speaking for $maintname.
- + ";
- + close MAILER;
- +
- + sub usage {
- + print STDERR <<EOH;
- + Usage: patnotify [-huV] [recipients]
- + -h : print this message and exit
- + -u : add all to-be-notified users
- + -V : print version number and exit
- + EOM
- + exit 1;
- + }
- +
- + !NO!SUBS!
- + $grep -v '^;#' ../pl/package.pl >>patnotify
- + $grep -v '^;#' ../pl/users.pl >>patnotify
- + $grep -v '^;#' ../pl/patseq.pl >>patnotify
- + chmod +x patnotify
- + $eunicefix patnotify
-
- Index: pat/patcol.SH
- Prereq: 3.0.1.1
- *** pat/patcol.SH.old Tue Aug 24 14:25:41 1993
- --- pat/patcol.SH Tue Aug 24 14:25:42 1993
- ***************
- *** 20,26 ****
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patcol.SH,v 3.0.1.1 1993/08/19 06:42:34 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- --- 20,26 ----
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patcol.SH,v 3.0.1.2 1993/08/24 12:16:30 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- ***************
- *** 31,36 ****
- --- 31,39 ----
- # of the source tree for dist 3.0.
- #
- # $Log: patcol.SH,v $
- + # Revision 3.0.1.2 1993/08/24 12:16:30 ram
- + # patch3: new -S option for snapshot check-outs
- + #
- # Revision 3.0.1.1 1993/08/19 06:42:34 ram
- # patch1: leading config.sh searching was not aborting properly
- #
- ***************
- *** 48,54 ****
-
- require 'getopts.pl';
- &usage unless $#ARGV >= 0;
- ! &usage unless &Getopts("acd:f:hnmsCRV");
-
- if ($opt_V) {
- print STDERR "$progname $version PL$patchlevel\n";
- --- 51,57 ----
-
- require 'getopts.pl';
- &usage unless $#ARGV >= 0;
- ! &usage unless &Getopts("acd:f:hnmsCRS:V");
-
- if ($opt_V) {
- print STDERR "$progname $version PL$patchlevel\n";
- ***************
- *** 109,114 ****
- --- 112,122 ----
- push(@ARGV,$_);
- }
- close MODS;
- + } elsif ($opt_S) {
- + &readsnapshot($opt_S);
- + foreach $file (sort keys %Snap) {
- + push(@ARGV, $file);
- + }
- }
-
- # Now loop over each file specified, doing a 'co -l'
- ***************
- *** 117,126 ****
- ©_file($file, $opt_d);
- next;
- }
- if (! -f $file || $opt_d) {
- - # Continue only if file does not exist or option -d was used.
- $files = &rcsargs($file);
- @files = split(' ', $files);
- $rlog = `rlog -rlastpat- $files 2>&1`;
- ($revs) = ($rlog =~ /selected revisions: (\d+)/);
- if (!$revs) {
- --- 125,138 ----
- ©_file($file, $opt_d);
- next;
- }
- + # Continue only if file does not exist or option -d was used.
- if (! -f $file || $opt_d) {
- $files = &rcsargs($file);
- @files = split(' ', $files);
- + if ($opt_S && ($rev = $Snap{$file}) ne '') { # Use snapshot file
- + &col($rev);
- + next;
- + }
- $rlog = `rlog -rlastpat- $files 2>&1`;
- ($revs) = ($rlog =~ /selected revisions: (\d+)/);
- if (!$revs) {
- ***************
- *** 191,197 ****
-
- sub usage {
- print STDERR <<'EOM';
- ! Usage: patcol [-achnmsCRV] [-d directory] [-f mani] [filelist]
- -a : all the files in MANIFEST.new (see also -f)
- -c : copy files if checked-out copy exists (only when -d)
- -d : check out (or copy) in the specified directory
- --- 203,209 ----
-
- sub usage {
- print STDERR <<'EOM';
- ! Usage: patcol [-achnmsCRV] [-d directory] [-f mani] [-S snap] [filelist]
- -a : all the files in MANIFEST.new (see also -f)
- -c : copy files if checked-out copy exists (only when -d)
- -d : check out (or copy) in the specified directory
- ***************
- *** 202,207 ****
- --- 214,220 ----
- -s : silent mode
- -C : perform copyright expansion on checked out (or copied) file
- -R : strip out RCS $Locker marker from checked-out file (only when -d)
- + -S : use snapshot file to determine file list and RCS revisions
- -V : print version number and exit
- EOM
- exit 1;
- ***************
- *** 213,217 ****
- --- 226,231 ----
- $grep -v '^;#' ../pl/rcsargs.pl >>patcol
- $grep -v '^;#' ../pl/copyright.pl >>patcol
- $grep -v '^;#' ../pl/makedir.pl >>patcol
- + $grep -v '^;#' ../pl/snapshot.pl >>patcol
- chmod +x patcol
- $eunicefix patcol
-
- Index: pat/patsnap.SH
- *** pat/patsnap.SH.old Tue Aug 24 14:25:48 1993
- --- pat/patsnap.SH Tue Aug 24 14:25:48 1993
- ***************
- *** 0 ****
- --- 1,119 ----
- + case $CONFIG in
- + '')
- + if test -f config.sh; then TOP=.;
- + elif test -f ../config.sh; then TOP=..;
- + elif test -f ../../config.sh; then TOP=../..;
- + elif test -f ../../../config.sh; then TOP=../../..;
- + elif test -f ../../../../config.sh; then TOP=../../../..;
- + else
- + echo "Can't find config.sh."; exit 1
- + fi
- + . $TOP/config.sh
- + ;;
- + esac
- + case "$0" in
- + */*) cd `expr X$0 : 'X\(.*\)/'` ;;
- + esac
- + echo "Extracting pat/patsnap (with variable substitutions)"
- + cat >patsnap <<!GROK!THIS!
- + $startperl
- + eval "exec perl -S \$0 \$*"
- + if \$running_under_some_shell;
- +
- + # $Id: patsnap.SH,v 3.0.1.1 1993/08/24 12:22:08 ram Exp $
- + #
- + # Copyright (c) 1991-1993, Raphael Manfredi
- + #
- + # You may redistribute only under the terms of the Artistic Licence,
- + # as specified in the README file that comes with the distribution.
- + # You may reuse parts of this distribution only within the terms of
- + # that same Artistic Licence; a copy of which may be found at the root
- + # of the source tree for dist 3.0.
- + #
- + # $Log: patsnap.SH,v $
- + # Revision 3.0.1.1 1993/08/24 12:22:08 ram
- + # patch3: created
- + #
- +
- + \$version = '$VERSION';
- + \$patchlevel = '$PATCHLEVEL';
- + !GROK!THIS!
- + cat >>patsnap <<'!NO!SUBS!'
- +
- + $progname = 'patsnap'; # My name
- +
- + require 'getopts.pl';
- + &usage unless $#ARGV >= 0;
- + &usage unless &Getopts("aho:V");
- +
- + $SNAPSHOT = 'SNAPSHOT'; # Default snapshot file name
- +
- + if ($opt_V) {
- + print STDERR "$progname $version PL$patchlevel\n";
- + exit 0;
- + } elsif ($opt_h) {
- + &usage;
- + }
- +
- + &readpackage;
- +
- + $RCSEXT = ',v' unless $RCSEXT;
- + $TOPDIR = ''; # We are at the top-level directory
- + $SNAPSHOT = $opt_o if $opt_o;
- +
- + if ($opt_a) {
- + open(MANI,"MANIFEST.new") || die "No MANIFEST.new found.\n";
- + @ARGV = ();
- + while (<MANI>) {
- + chop;
- + s|^\./||;
- + next if m|^patchlevel.h|; # Special file
- + ($_) = split(' ');
- + next if -d;
- + push(@ARGV,$_);
- + }
- + close MANI;
- + }
- +
- + open(SNAPSHOT, ">$SNAPSHOT") || die "$progname: can't create $SNAPSHOT: $!\n";
- +
- + foreach $file (@ARGV) {
- + $files = &rcsargs($file);
- + @files = split(' ',$files);
- + $revs=0;
- + $rlog = `rlog -r$baserev -r$revbranch $files 2>&1`;
- + ($revs) = ($rlog =~ /selected revisions: (\d+)/);
- + if (!$revs) {
- + print "$progname: $file has never been checked in--skipping\n";
- + next;
- + }
- + elsif ($revs == 1) {
- + print "Last revision for $file is $baserev.\n";
- + print SNAPSHOT "$file\t$baserev\n";
- + }
- + else {
- + ($lastrev) = ($rlog =~ /revision $revbranch\.(\d+)/);
- + print "Last revision for $file is $revbranch.$lastrev.\n";
- + print SNAPSHOT "$file\t$revbranch.$lastrev\n";
- + }
- + }
- +
- + close SNAPSHOT;
- +
- + sub usage {
- + print STDERR <<EOM;
- + Usage: $progname [-ahV] [-o snapshot] [filelist]
- + -a : all the files in MANIFEST.new
- + -h : print this message and exit
- + -o : specify snapshot file output (default $SNAPSHOT)
- + -V : print version number and exit
- + EOM
- + exit 1;
- + }
- +
- + !NO!SUBS!
- + $grep -v '^;#' ../pl/package.pl >>patsnap
- + $grep -v '^;#' ../pl/rcsargs.pl >>patsnap
- + $grep -v '^;#' ../pl/comment.pl >>patsnap
- + chmod +x patsnap
- + $eunicefix patsnap
-
- Index: pat/patpost.SH
- Prereq: 3.0.1.1
- *** pat/patpost.SH.old Tue Aug 24 14:25:46 1993
- --- pat/patpost.SH Tue Aug 24 14:25:46 1993
- ***************
- *** 20,26 ****
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patpost.SH,v 3.0.1.1 1993/08/19 06:42:41 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- --- 20,26 ----
- eval "exec perl -S \$0 \$*"
- if \$running_under_some_shell;
-
- ! # $Id: patpost.SH,v 3.0.1.2 1993/08/24 12:19:48 ram Exp $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- ***************
- *** 33,38 ****
- --- 33,42 ----
- # Original Author: Larry Wall <lwall@netlabs.com>
- #
- # $Log: patpost.SH,v $
- + # Revision 3.0.1.2 1993/08/24 12:19:48 ram
- + # patch3: added ~name expansion for orgname
- + # patch3: random cleanup
- + #
- # Revision 3.0.1.1 1993/08/19 06:42:41 ram
- # patch1: leading config.sh searching was not aborting properly
- #
- ***************
- *** 64,73 ****
- $inews = '/usr/lib/news/inews' if -f '/usr/lib/news/inews';
- }
-
- ! chdir '..' if -f '../.package';
-
- &readpackage;
-
- chop($orgname = `cat $orgname`) if $orgname =~ m|^/|;
-
- if ($opt_r) {
- --- 68,78 ----
- $inews = '/usr/lib/news/inews' if -f '/usr/lib/news/inews';
- }
-
- ! chdir '..' if -d '../bugs';
-
- &readpackage;
-
- + $orgname = &tilda_expand($orgname);
- chop($orgname = `cat $orgname`) if $orgname =~ m|^/|;
-
- if ($opt_r) {
- ***************
- *** 94,107 ****
- die "Malformed patchlevel.h file.\n" if $maxnum eq '';
-
- if ($#ARGV < 0) {
- ! $argv = $maxnum;
- ! @ARGV = $argv;
- }
- else {
- $argv = &rangeargs(@ARGV);
- - @ARGV = split(' ',$argv);
- }
-
- $argv =~ s/ $//;
-
- if ($#ARGV < 0) {
- --- 99,113 ----
- die "Malformed patchlevel.h file.\n" if $maxnum eq '';
-
- if ($#ARGV < 0) {
- ! @patseq = &patseq($maxnum);
- ! $lastpat = pop(@patseq);
- ! $argv = &rangeargs("$lastpat-$maxnum");
- }
- else {
- $argv = &rangeargs(@ARGV);
- }
-
- + @ARGV = split(' ',$argv);
- $argv =~ s/ $//;
-
- if ($#ARGV < 0) {
- ***************
- *** 113,119 ****
- print "Posting $package $baserev patch $argv to $newsgroups...\n";
- }
-
- ! chdir 'bugs' || die "Can't cd to bugs\n";
-
- fork && exit;
-
- --- 119,125 ----
- print "Posting $package $baserev patch $argv to $newsgroups...\n";
- }
-
- ! chdir 'bugs' || die "patpost: can't cd to bugs: $!\n";
-
- fork && exit;
-
- ***************
- *** 150,156 ****
- }
-
- !NO!SUBS!
- ! cat ../pl/package.pl >>patpost
- ! cat ../pl/rangeargs.pl >>patpost
- chmod +x patpost
- $eunicefix patpost
- --- 156,164 ----
- }
-
- !NO!SUBS!
- ! $grep -v '^;#' ../pl/package.pl >>patpost
- ! $grep -v '^;#' ../pl/rangeargs.pl >>patpost
- ! $grep -v '^;#' ../pl/patseq.pl >>patpost
- ! $grep -v '^;#' ../pl/tilde.pl >>patpost
- chmod +x patpost
- $eunicefix patpost
-
- Index: pl/users.pl
- Prereq: 3.0
- *** pl/users.pl.old Tue Aug 24 14:25:50 1993
- --- pl/users.pl Tue Aug 24 14:25:51 1993
- ***************
- *** 1,4 ****
- ! ;# $Id: users.pl,v 3.0 1993/08/18 12:11:02 ram Exp $
- ;#
- ;# Copyright (c) 1991-1993, Raphael Manfredi
- ;#
- --- 1,4 ----
- ! ;# $Id: users.pl,v 3.0.1.1 1993/08/24 12:23:19 ram Exp $
- ;#
- ;# Copyright (c) 1991-1993, Raphael Manfredi
- ;#
- ***************
- *** 11,33 ****
- ;# Original Author: Graham Stoney <greyham@research.canon.oz.au>
- ;#
- ;# $Log: users.pl,v $
- ;# Revision 3.0 1993/08/18 12:11:02 ram
- ;# Baseline for dist 3.0 netwide release.
- ;#
- ;#
- sub readusers {
- ! if (open(USERS,'users')) {
- ! while (<USERS>) {
- ! next if /^#/;
- ! chop if /\n$/; # Emacs may leave final line without \n
- ! ($status,$name) = split;
- ! if ($status eq 'M') {
- ! $recipients = $recipients ? "$recipients $name" : $name;
- ! } elsif ($status eq 'N') {
- ! $notify = $notify ? "$notify $name" : $name;
- ! }
- }
- - close USERS;
- }
- }
-
- --- 11,43 ----
- ;# Original Author: Graham Stoney <greyham@research.canon.oz.au>
- ;#
- ;# $Log: users.pl,v $
- + ;# Revision 3.0.1.1 1993/08/24 12:23:19 ram
- + ;# patch3: added some comments about the users file format
- + ;# patch3: random cleanup
- + ;#
- ;# Revision 3.0 1993/08/18 12:11:02 ram
- ;# Baseline for dist 3.0 netwide release.
- ;#
- + ;# The users file, as built by mailagent upon reception of an '@SH package'
- + ;# command contains a list of e-mail addresses, prefixed by a single letter.
- + ;# Users tagged with 'U' or 'L' are plain users, those with 'M' wish to
- + ;# receive issued patches by e-mail while 'N' users simply want to be notified
- + ;# when a new patch is released;
- ;#
- sub readusers {
- ! return unless open(USERS, 'users');
- ! local($_);
- ! local($status, $name);
- ! while (<USERS>) {
- ! next if /^#/;
- ! chop if /\n$/; # Emacs may leave final line without \n
- ! ($status, $name) = split;
- ! if ($status eq 'M') {
- ! $recipients = $recipients ? "$recipients $name" : $name;
- ! } elsif ($status eq 'N') {
- ! $notify = $notify ? "$notify $name" : $name;
- }
- }
- + close USERS;
- }
-
-
- Index: pat/Makefile.SH
- *** pat/Makefile.SH.old Tue Aug 24 14:25:37 1993
- --- pat/Makefile.SH Tue Aug 24 14:25:37 1993
- ***************
- *** 1,4 ****
- ! : Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL0]
- : $X-Id: Jmake.tmpl,v 3.0 1993/08/18 12:04:16 ram Exp ram $
-
- case $CONFIG in
- --- 1,4 ----
- ! : Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL2]
- : $X-Id: Jmake.tmpl,v 3.0 1993/08/18 12:04:16 ram Exp ram $
-
- case $CONFIG in
- ***************
- *** 52,58 ****
- ########################################################################
- # Start of Jmakefile
-
- ! # $X-Id: Jmakefile,v 3.0 1993/08/18 12:10:32 ram Exp ram $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- --- 52,58 ----
- ########################################################################
- # Start of Jmakefile
-
- ! # $X-Id: Jmakefile,v 3.0.1.1 1993/08/24 12:09:05 ram Exp ram $
- #
- # Copyright (c) 1991-1993, Raphael Manfredi
- #
- ***************
- *** 63,73 ****
- # of the source tree for dist 3.0.
- #
- # $X-Log: Jmakefile,v $
- # Revision 3.0 1993/08/18 12:10:32 ram
- # Baseline for dist 3.0 netwide release.
- #
-
- ! BASE = // cil base diff make clean col name ftp send index post
-
- PAT = \
- pat \
- --- 63,76 ----
- # of the source tree for dist 3.0.
- #
- # $X-Log: Jmakefile,v $
- + # Revision 3.0.1.1 1993/08/24 12:09:05 ram
- + # patch3: added patnotify and patsnap
- + #
- # Revision 3.0 1993/08/18 12:10:32 ram
- # Baseline for dist 3.0 netwide release.
- #
-
- ! BASE = // cil base diff make clean col name ftp send index post notify snap
-
- PAT = \
- pat \
- ***************
- *** 81,87 ****
- patftp \
- patsend \
- patindex \
- ! patpost
-
- all:: $(PAT)
-
- --- 84,92 ----
- patftp \
- patsend \
- patindex \
- ! patpost \
- ! patnotify \
- ! patsnap
-
- all:: $(PAT)
-
- ***************
- *** 123,128 ****
- --- 128,139 ----
-
- patpost: patpost.SH
- /bin/sh patpost.SH
- +
- + patnotify: patnotify.SH
- + /bin/sh patnotify.SH
- +
- + patsnap: patsnap.SH
- + /bin/sh patsnap.SH
-
-
- install:: $(PAT)
-
- Index: dist.man
- Prereq: 3.0
- *** dist.man.old Tue Aug 24 14:25:30 1993
- --- dist.man Tue Aug 24 14:25:30 1993
- ***************
- *** 1,4 ****
- ! ''' $Id: dist.man,v 3.0 1993/08/18 12:04:07 ram Exp $
- '''
- ''' Copyright (c) 1991-1993, Raphael Manfredi
- '''
- --- 1,4 ----
- ! ''' $Id: dist.man,v 3.0.1.1 1993/08/24 12:12:00 ram Exp $
- '''
- ''' Copyright (c) 1991-1993, Raphael Manfredi
- '''
- ***************
- *** 9,14 ****
- --- 9,17 ----
- ''' of the source tree for dist 3.0.
- '''
- ''' $Log: dist.man,v $
- + ''' Revision 3.0.1.1 1993/08/24 12:12:00 ram
- + ''' patch3: added entries for patnotify and patsnap
- + '''
- ''' Revision 3.0 1993/08/18 12:04:07 ram
- ''' Baseline for dist 3.0 netwide release.
- '''
- ***************
- *** 22,28 ****
- and it is also meant to be used with two external products, which are
- publicly available: \fImailagent\fR and \fIpatch\fR.
- .PP
- ! The fist component is the \fIConfigure\fR script generator, which is a
- portability tool. It is automatically build up by \fImetaconfig\fR from your
- sources and a set of units. Ideally, the end-user receiving your source code
- will simply have to read your README file, run the \fIConfigure\fR script
- --- 25,31 ----
- and it is also meant to be used with two external products, which are
- publicly available: \fImailagent\fR and \fIpatch\fR.
- .PP
- ! The first component is the \fIConfigure\fR script generator, which is a
- portability tool. It is automatically build up by \fImetaconfig\fR from your
- sources and a set of units. Ideally, the end-user receiving your source code
- will simply have to read your README file, run the \fIConfigure\fR script
- ***************
- *** 127,137 ****
- --- 130,146 ----
- patmake
- puts diffs together into a patch.
- .TP
- + patnotify
- + notifies users that new patches have been released.
- + .TP
- patpost
- posts patch to some newsgroup.
- .TP
- patsend
- mails patch to some people.
- + .TP
- + patsnap
- + builds a release snapshot with files and RCS revisions.
- .PD
- .SH FILES
- .PD 0
-
- Index: MANIFEST
- *** MANIFEST.old Tue Aug 24 14:25:52 1993
- --- MANIFEST Tue Aug 24 14:25:52 1993
- ***************
- *** 97,102 ****
- --- 97,103 ----
- mcon/U/Whoa.U Warning function
- mcon/U/abortsig.U Which signal is sent by abort()?
- mcon/U/active.U Find the news active file
- + mcon/U/afs.U Look whether AFS is running or not
- mcon/U/alignbytes.U Check for alignment constraints
- mcon/U/baserev.U Base revision of package
- mcon/U/basicshell.U Which basic shell is available
- ***************
- *** 433,440 ****
- --- 434,443 ----
- pat/patindex.SH Create an index of patches sent out
- pat/patmake.SH Put together a patch file
- pat/patname.SH Assign symbolic name to a revision
- + pat/patnotify.SH Notifies that new patches have been released
- pat/patpost.SH Send patches via news
- pat/patsend.SH Sends patches via mail
- + pat/patsnap.SH Builds RCS snapshot file
- patchlevel.h The current patchlevel for dist
- pl/ Directory for public perl libraries
- pl/comment.pl Perl library to find comment in front of $Log
- ***************
- *** 445,451 ****
- --- 448,456 ----
- pl/manifake.pl Perl library to build a MANIFEST.new if none found
- pl/newer.pl Perl library to Find files newer than patchlevel.h
- pl/package.pl Perl library to read .package
- + pl/patseq.pl Perl library to compute issued patch sequence
- pl/rangeargs.pl Perl library to expand number lists
- pl/rcsargs.pl Perl library to expand rcs filename lists
- + pl/snapshot.pl Perl library to parse RCS snapshot file
- pl/tilde.pl Perl library to perform ~name expansion
- pl/users.pl Perl library to parse users file
-
- Index: jmake/files/Jmake.tmpl
- Prereq: 3.0
- *** jmake/files/Jmake.tmpl.old Tue Aug 24 14:25:31 1993
- --- jmake/files/Jmake.tmpl Tue Aug 24 14:25:31 1993
- ***************
- *** 1,7 ****
- /*
- * Generic jmake template
- *
- ! * $Id: Jmake.tmpl,v 3.0 1993/08/18 12:04:16 ram Exp $
- *
- * Copyright (c) 1991-1993, Raphael Manfredi
- *
- --- 1,7 ----
- /*
- * Generic jmake template
- *
- ! * $Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp $
- *
- * Copyright (c) 1991-1993, Raphael Manfredi
- *
- ***************
- *** 12,17 ****
- --- 12,20 ----
- * of the source tree for dist 3.0.
- *
- * $Log: Jmake.tmpl,v $
- + * Revision 3.0.1.1 1993/08/20 07:36:36 ram
- + * patch3: config.sh searching was not aborting properly
- + *
- * Revision 3.0 1993/08/18 12:04:16 ram
- * Baseline for dist 3.0 netwide release.
- *
- ***************
- *** 18,24 ****
- */
-
- : Makefile.SH generated from Jmake.tmpl and Jmakefile <TAG>
- ! : $Id: Jmake.tmpl,v 3.0 1993/08/18 12:04:16 ram Exp $
-
- /*************************************************************************
- * *
- --- 21,27 ----
- */
-
- : Makefile.SH generated from Jmake.tmpl and Jmakefile <TAG>
- ! : $Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp $
-
- /*************************************************************************
- * *
- ***************
- *** 34,40 ****
- elif test -f ../../../config.sh; then TOP=../../..;
- elif test -f ../../../../config.sh; then TOP=../../../..;
- else
- ! (echo "Can't find config.sh."; exit 1)
- fi
- . $TOP/config.sh
- ;;
- --- 37,43 ----
- elif test -f ../../../config.sh; then TOP=../../..;
- elif test -f ../../../../config.sh; then TOP=../../../..;
- else
- ! echo "Can't find config.sh."; exit 1
- fi
- . $TOP/config.sh
- ;;
-
- Index: pat/Jmakefile
- Prereq: 3.0
- *** pat/Jmakefile.old Tue Aug 24 14:25:36 1993
- --- pat/Jmakefile Tue Aug 24 14:25:36 1993
- ***************
- *** 2,8 ****
- * Jmakefile for patching tools.
- */
-
- ! ;# $Id: Jmakefile,v 3.0 1993/08/18 12:10:32 ram Exp $
- ;#
- ;# Copyright (c) 1991-1993, Raphael Manfredi
- ;#
- --- 2,8 ----
- * Jmakefile for patching tools.
- */
-
- ! ;# $Id: Jmakefile,v 3.0.1.1 1993/08/24 12:09:05 ram Exp $
- ;#
- ;# Copyright (c) 1991-1993, Raphael Manfredi
- ;#
- ***************
- *** 13,18 ****
- --- 13,21 ----
- ;# of the source tree for dist 3.0.
- ;#
- ;# $Log: Jmakefile,v $
- + ;# Revision 3.0.1.1 1993/08/24 12:09:05 ram
- + ;# patch3: added patnotify and patsnap
- + ;#
- ;# Revision 3.0 1993/08/18 12:10:32 ram
- ;# Baseline for dist 3.0 netwide release.
- ;#
- ***************
- *** 21,27 ****
- * used to specify a null expansion pattern, but some of those new smart cpp
- * now think it's a up-to-end-of-line comment--why do they do that to us?
- */
- ! BASE = /^^/ cil base diff make clean col name ftp send index post
-
- /* PAT is derived from BASE and is the list of all the files to produce */
- PAT = \
- --- 24,30 ----
- * used to specify a null expansion pattern, but some of those new smart cpp
- * now think it's a up-to-end-of-line comment--why do they do that to us?
- */
- ! BASE = /^^/ cil base diff make clean col name ftp send index post notify snap
-
- /* PAT is derived from BASE and is the list of all the files to produce */
- PAT = \
-
- *** End of Patch 3 ***
-
- exit 0 # Just in case...
-