summaryrefslogtreecommitdiff
path: root/hints/freebsd.sh
diff options
context:
space:
mode:
authorAndy Dougherty <doughera@lafcol.lafayette.edu>1995-04-14 22:32:18 +0000
committerAndy Dougherty <doughera@lafcol.lafayette.edu>1995-04-14 22:32:18 +0000
commit5d94fbed3754780f11eb4db2d2379544cacb60e1 (patch)
tree9d1c81cc2141769c76b61c272f84155723edb002 /hints/freebsd.sh
parent232e078e289220085e912e3d740ae77767611478 (diff)
downloadperl-5d94fbed3754780f11eb4db2d2379544cacb60e1.tar.gz
perl5.001 patch.1d
This is my patch patch.1d for perl5.001. A complete description is given below, but here are the basic changes. 1. Linux: more tweaks so dynamic loading works under ELF or (maybe) under dld. There are so many different dld versions and so many different tool sets, it's hard to be more specific. 2. perl -e '$v=1e19+0' no longer dumps core on Intel x86 processors. 3. pod stuff: a. Wrapped pod2* translators in a 'SH' wrapper so that they have the proper path to perl at the top. b. Fixed pod/ Makefile to call the pod2html translator correctly. (Why do pod2man and pod2html work differently?) c. Include latest (Feb 2, 1995) version of pod2html, fresh from ftp.metronet.com. 4. MakeMaker 4.093. 5. GIMME and installperl patches from Tim Bunce. 6. Miscellaneous hint file updates. Configure Allow ' ' to mean 'none' in a few more places. This provides a way for hint files to set something to an empty value and to ensure that the empty value will be maintained when config.sh is reused. Fix silly ld typo that prevented hint file from actually setting $ld. MANIFEST Now has pod/pod2*.SH. Makefile.SH Remove old libperl.a instead of blindly adding to it. Failure to do this causes a problem if you originally used perl's malloc but later changed your mind. The old malloc.o would still be in libperl.a ext/DynaLoader/dl_dlopen.xs Use strerror(errno) instead of dlerror for NetBSD. handy.h Clarify & rework HAS_BOOL comments and code. No functionality is changed, but I hope this is easier to follow. hints/freebsd.sh hints/isc.sh hints/linux.sh hints/netbsd.sh hints/next_3_0.sh hints/next_3_2.sh hints/sco_3.sh Miscellaneous updates. See the individual comments in the patches. installperl Run ranlib on installed .a libraries. unlink() old versions of files before installing new ones, in case the old ones are are write-protected. lib/ExtUtils/MakeMaker.pm Updated to 4.092 by Andreas Koenig. This features better selection of shared library versions and shorter command lines for static linking of new extensions. It is also more robust against broken csh on Linux. (There's still a glob in the library selection loop, however.) I further updated it to 4.093 because I didn't like the distclean target :-). It's just a sloppy quick fix, but that's all I have time for now. I've also worked on the library version selection stuff and the $(CC) command stuff a little more. lib/TieHash.pm Overdue removal of ambiguous ${pack} construction. perl.h New U_V macro to cast to the UV type (usually unsigned long). pod/Makefile Updated. pod/pod2html.SH Updated. Converted to 'SH' wrapper so correct #!/path/to/perl gets used. pod/pod2latex.SH pod/pod2man.SH Converted to 'SH' wrapper so correct #!/path/to/perl gets used. pp_hot.c GIMME patch from Tim Bunce. pp_sys.c Allow use of F_FREESP fcntl() directive to truncate files. If HAS_MKDIR is not defined, the stat() call to check the result of the system "mkdir" call was failing because the filename pointer no longer pointed to the right location. sv.c Protect some (UV) casts by the new U_V() macro. util.c New cast_uv() function to support the U_V() macro, if needed. cast_iv() and cast_uv() no longer assume 32-bit longs. The various cast_() functions have also been simplified.
Diffstat (limited to 'hints/freebsd.sh')
-rw-r--r--hints/freebsd.sh32
1 files changed, 28 insertions, 4 deletions
diff --git a/hints/freebsd.sh b/hints/freebsd.sh
index 4efca6a043..f0c5433cca 100644
--- a/hints/freebsd.sh
+++ b/hints/freebsd.sh
@@ -1,4 +1,4 @@
-# Oringal based on info from
+# Original based on info from
# Carl M. Fongheiser <cmf@ins.infonet.net>
# Date: Thu, 28 Jul 1994 19:17:05 -0500 (CDT)
#
@@ -6,21 +6,45 @@
# Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
# Date: Wed, 28 Sep 1994 00:37:46 +0100 (MET)
#
+# Additional 2.* defines from
+# Ollivier Robert <Ollivier.Robert@keltia.frmug.fr.net>
+# Date: Sat, 8 Apr 1995 20:53:41 +0200 (MET DST)
+#
+# FreeBSD has the dynamic loading dl*() functions in /usr/lib/crt0.o,
+# so Configure doesn't find them (unless you abandon the nm scan).
+#
+# The two flags "-fpic -DPIC" are used to indicate a
+# will-be-shared object. Configure will guess the -fpic, (and the
+# -DPIC is not used by perl proper) but the full define is included to
+# be consistent with the FreeBSD general shared libs building process.
+#
+# setreuid and friends are inherently broken in all versions of FreeBSD.
+#
+
case "$osvers" in
0.*|1.0*)
usedl="$undef"
;;
-*) d_dlopen="$define"
+1.1*) d_dlopen="$define"
cccdlflags='-DPIC -fpic'
- lddlflags='-Bshareable'
+ lddlflags='-Bshareable $lddlflags'
malloctype='void *'
groupstype='int'
d_setregid='undef'
d_setreuid='undef'
d_setrgid='undef'
d_setruid='undef'
- i_unistd='undef'
+ ;;
+*)
+ d_dlopen="$define"
+ cccdlflags='-DPIC -fpic'
+ lddlflags='-Bshareable $lddlflags'
+ d_setregid='undef'
+ d_setreuid='undef'
+ d_setrgid='undef'
+ d_setruid='undef'
;;
esac
# Avoid telldir prototype conflict in pp_sys.c (FreeBSD uses const DIR *)
+# Configure should test for this. Volunteers?
pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"'