summaryrefslogtreecommitdiff
path: root/Makefile.SH
diff options
context:
space:
mode:
authorLarry Wall <lwall@jpl-devvax.jpl.nasa.gov>1990-03-27 20:20:03 +0000
committerLarry Wall <lwall@jpl-devvax.jpl.nasa.gov>1990-03-27 20:20:03 +0000
commit21d892ea46b4eaa5d8ae1c8cd325d9940deef5b3 (patch)
tree47c38e54be61660494150c86347a519fbdb3634d /Makefile.SH
parent63f2c1e106a2635d888c6b582f4c59b5c0ecc7ee (diff)
downloadperl-21d892ea46b4eaa5d8ae1c8cd325d9940deef5b3.tar.gz
perl 3.0 patch #16 (combined patch)
There is now support for compiling perl under the Microsoft C compiler on MSDOS. Special thanks go to Diomidis Spinellis <dds@cc.ic.ac.uk> for this. To compile under MSDOS, look at the readme file in the msdos subdirectory. As a part of this, six files will be renamed when you run Configure. These are config.h.SH, perl.man.[1-4] and t/op.subst. Suns (and perhaps other machines) can't cast negative floating point numbers to unsigned ints reasonably. Configure now detects this and takes appropriate action. Configure looked for optional libraries but then didn't ever use them, even if there was no config.sh value to override. System V Release 4 provides us with yet another nm format for Configure to parse. No doubt it's "better". Sigh. MIPS CPUs running under Ultrix were getting configured for volatile support, but they don't like volatile when applied to a type generated by a typedef. Configure now tests for this. I've added two new perl library routines: ctime.pl from Waldemar Kebsch and Marion Hakanson, and syslog.pl from Tom Christiansen and me. In subroutines, non-terminal blocks should never have arrays requested of them, even if the subroutine call's context is looking for an array. Formats didn't work inside eval. Now they do. Any $foo++ that doesn't return a value is now optimized to ++$foo since the latter doesn't require generation of a temporary to hold the old value. A self-referential printf pattern such as sprintf($s,...,$s,...) would end up with a null as the first character of the next field. On machines that don't support executing scripts in the kernel, perl has to emulate that when an exec fails. In this case, the do_exec() routine can lose arguments passed to the script. A memory leakage in pattern matching triggered by use of $`, $& or $' has been fixed. A splice that pulls up the front of an array such as splice(@array,0,$n) can cause a duplicate free error. The grep operator blew up on undefined array values. It now handles them reasonably, setting $_ to undef. The .. operator in an array context is used to generate number ranges. This has been generalized to allow any string ranges that can be generated with the magical increment code of ++. So you can say 'a' .. 'f', '000'..'999', etc. The ioctl function didn't return non-zero values correctly. Associative array slices from dbm files like @dbmvalues{'foo','bar'} could use the same cache entry for multiple values, causing loss of some of the values of the slice. Cache values are now not flushed until the end of a statement. The do FILE operator blew up when used inside an eval, due to trying to free the eval code it was still executing. If you did s/^prefix// on a string, and subsequently assigned a value that didn't contain a string value to the string, you could get a bad free error. One of the taint checks blew up on undefined array elements, which showed up only when taintperl was run. The final semicolon in program is supposed to be optional now. Unfortunately this wasn't true when -p or -n added extra code around your code. Now it's true all the time. A tail anchored pattern such as /foo$/ could cause grief if you searched a string that was shorter than that.
Diffstat (limited to 'Makefile.SH')
-rw-r--r--Makefile.SH9
1 files changed, 6 insertions, 3 deletions
diff --git a/Makefile.SH b/Makefile.SH
index b1c1eeb94b..122b6dcf4c 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -25,9 +25,12 @@ esac
echo "Extracting Makefile (with variable substitutions)"
cat >Makefile <<!GROK!THIS!
-# $Header: Makefile.SH,v 3.0.1.5 90/03/12 16:15:17 lwall Locked $
+# $Header: Makefile.SH,v 3.0.1.6 90/03/27 15:27:15 lwall Locked $
#
# $Log: Makefile.SH,v $
+# Revision 3.0.1.6 90/03/27 15:27:15 lwall
+# patch16: MSDOS support
+#
# Revision 3.0.1.5 90/03/12 16:15:17 lwall
# patch13: some dependencies missing on perly.h
# patch13: some relief for buggy parallel makes
@@ -276,10 +279,10 @@ perl.c: perl.y
perl.o: perl.c perly.h $(h)
$(CC) -c $(CFLAGS) $(LARGE) perl.c
-perl.man: perl.man.1 perl.man.2 perl.man.3 perl.man.4 patchlevel.h perl
+perl.man: perl_man.1 perl_man.2 perl_man.3 perl_man.4 patchlevel.h perl
./perl -e '($$r,$$p)=$$]=~/(\d+\.\d+).*\n\D*(\d+)/;' \
-e 'print ".ds RP Release $$r Patchlevel $$p\n";' >perl.man
- cat perl.man.[1-4] >>perl.man
+ cat perl_man.[1-4] >>perl.man
install: all
# won't work with csh