Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

perl 1.0 patch #1

25 views
Skip to first unread message

Larry Wall

unread,
Jan 22, 1988, 6:49:17 PM1/22/88
to
In article <80...@e.ms.uky.edu> da...@ms.uky.edu (David Herron -- Resident
E-mail Hack) writes:
: If I had something to apply it TO, I'd certainly apply it.
:
: (Hey Rich! wink wink, nudge nudge :-) :-) :-) :-) :-) :-) :-) :-)).

If you get impatient, and have Internet access, you can FTP it from
jpl-devvax.jpl.nasa.gov (128.149.8.43). The 128.149.8.13 given in the
first patch was incorrect. I challenge you to snarf perl and find a bug
before r$ posts the kits. (Wink, wink, nudge, nudge :-)

Some of you have expressed interest in trying out metaconfig. Well, here's
your big chance. I'm not going to post it yet, but you can get it via
FTP from the same place. It's actually part of a package called "dist".
This package is very useful in its current form, but I suspect it is going
to evolve considerably over the next year or so. So give me some feedback
on how you think it should grow.

The dist kit has three parts:

1) A kit builder. Generates MANIFEST file, packs kits semi-optimally, and
shars the kits for you.

2) A patch generator. I don't suggest you use this unless you are familiar
with RCS. You just say "pat filelist", where filelist is the list of
files you changed, and it checks them all in, creating a branch as
necessary, keeping all the locking straight. Then it does your diffs
for you, using either rcsdiff or your own diff, and then it builds and
lets you edit the new patch. It does all this even when some of the files
are in subdirectories, which RCS isn't very smart about.

3) Metaconfig. This is the hottest part of the package, and you may want
this even if you don't want the other parts. This package knows just
about everything I know about portability to Unix systems. Everything
is driven off a set of Unit files, each of which is designed to find
out one piece of information about the system on which your package will
run. The niftiest thing is that each of these units is self-contained:
Each unit knows what cpp symbols and shell variables it defines, what
other units it depends on, the definitions for the symbols and variables,
the shell code to determine the correct value for the symbols and variables,
and the code to insert into config.h so that your C programs know what's
going on. Here's what you do to use it: a) run makegloss to build a
Glossary from all the units, b) read the Glossary to see which variables
and symbols metaconfig can determine for you, c) write your programs
and scripts (including your Makefile generator) in terms of those variables
and symbols, and d) run metaconfig, which will analyze your files and
write a Configure script for them. That's pretty much all you have to do.
If you so desire you can write custom units for inclusion in Configure.

Please don't expect a polished product--if you don't read shell scripts and
README files, you don't want dist. Dist is like a good road with mud on
both sides at the moment. As long as you stay in the center of the road
you'll get where you want to go very quickly, but you'd better have a shovel
along just in case.

I'm not planning to mail this out to anyone unless you have a project you're
dying to use it on. I figure I'll get plenty of beta testers who can ftp it.

Be sure to pick up any patches for the dist kit as well. Here's the directory
structure for ~ftp.

ftp/pub/perl.1.0
ftp/pub/perl.1.0/kits
ftp/pub/perl.1.0/patches
ftp/pub/dist.1.0
ftp/pub/dist.1.0/kits
ftp/pub/dist.1.0/patches
ftp/pub/warp.7.0
ftp/pub/warp.7.0/kits
ftp/pub/warp.7.0/patches

Of course, don't let dist or warp distract you from getting perl. :-)

Larry Wall
lw...@jpl-devvax.jpl.nasa.gov

Rick Adams

unread,
Jan 23, 1988, 12:50:46 PM1/23/88
to

Impatient uunet customers can uucp it from uunet!~/pub/perl/*

---rick

0 new messages