summaryrefslogtreecommitdiff
path: root/Makefile.SH
diff options
context:
space:
mode:
authorIlya Zakharevich <ilya@math.ohio-state.edu>1996-10-09 22:32:22 -0400
committerAndy Dougherty <doughera@lafcol.lafayette.edu>1996-10-09 22:32:22 -0400
commit599a829fa080628ac198b8a5fd5e065cf32c097b (patch)
treedabd68bb36f61790a85186bc166dc45d24715bf1 /Makefile.SH
parent87839c5a26a0a5e913dfc765b8c655fd87c999eb (diff)
downloadperl-599a829fa080628ac198b8a5fd5e065cf32c097b.tar.gz
perl 5.003_07: Makefile.SH
Date: Wed, 9 Oct 1996 22:32:22 -0400 (EDT) From: Ilya Zakharevich <ilya@math.ohio-state.edu> All the executable targets are moved into the same chunk with shared library target, which is delegated to $osname/Makefile.SHs if found. config.h should depend on config_h.SH. Remove mkmanifest target, since it will generate incorrectly sorted MANIFEST file, I would imagine (I haven't checked).
Diffstat (limited to 'Makefile.SH')
-rwxr-xr-xMakefile.SH69
1 files changed, 37 insertions, 32 deletions
diff --git a/Makefile.SH b/Makefile.SH
index 81d6df4edf..e3ee81493d 100755
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -1,3 +1,4 @@
+#! /bin/sh
case $CONFIG in
'')
if test -f config.sh; then TOP=.;
@@ -209,18 +210,6 @@ utilities: miniperl lib/Config.pm FORCE
FORCE:
@sh -c true
-# The $& notation tells Sequent machines that it can do a parallel make,
-# and is harmless otherwise.
-# The miniperl -w -MExporter line is a basic cheap test to catch errors
-# before make goes on to run preplibrary and then MakeMaker on extensions.
-# This is very handy because later errors are often caused by miniperl
-# build problems but that's not obvious to the novice.
-# The Module used here must not depend on Config or any extensions.
-
-miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL)
- $(CC) $(LARGE) $(CLDFLAGS) -o miniperl miniperlmain$(OBJ_EXT) $(LIBPERL) $(libs)
- @./miniperl -w -Ilib -MExporter -e 0 || $(MAKE) minitest
-
miniperlmain$(OBJ_EXT): miniperlmain.c
$(CCCMD) $(PLDLFLAGS) $*.c
@@ -237,18 +226,10 @@ perlmain$(OBJ_EXT): perlmain.c
ext.libs: $(static_ext)
-@test -f ext.libs || touch ext.libs
-perl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
- $(SHRPENV) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o perl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
-
-pureperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
- purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
-
-quantperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
- quantify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o quantperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
-
!NO!SUBS!
+
# How to build libperl. This is still rather convoluted.
-# Load up custom Makefile.SH fragments?
+# Load up custom Makefile.SH fragment for shared loading and executables:
if test -r $osname/Makefile.SHs ; then
. $osname/Makefile.SHs
$spitshell >>Makefile <<!GROK!THIS!
@@ -273,9 +254,30 @@ $(LIBPERL): $& perl$(OBJ_EXT) $(obj)
!NO!SUBS!
;;
esac
-fi
-
-$spitshell >>Makefile <<'!NO!SUBS!'
+ $spitshell >>Makefile <<'!NO!SUBS!'
+
+# How to build executables.
+
+# The $& notation tells Sequent machines that it can do a parallel make,
+# and is harmless otherwise.
+# The miniperl -w -MExporter line is a basic cheap test to catch errors
+# before make goes on to run preplibrary and then MakeMaker on extensions.
+# This is very handy because later errors are often caused by miniperl
+# build problems but that's not obvious to the novice.
+# The Module used here must not depend on Config or any extensions.
+
+miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL)
+ $(CC) $(LARGE) $(CLDFLAGS) -o miniperl miniperlmain$(OBJ_EXT) $(LIBPERL) $(libs)
+ @./miniperl -w -Ilib -MExporter -e 0 || $(MAKE) minitest
+
+perl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
+ $(SHRPENV) $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o perl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
+
+pureperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
+ purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
+
+quantperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
+ quantify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o quantperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
# This version, if specified in Configure, does ONLY those scripts which need
# set-id emulation. Suidperl must be setuid root. It contains the "taint"
@@ -285,6 +287,12 @@ $spitshell >>Makefile <<'!NO!SUBS!'
suidperl: $& sperl$(OBJ_EXT) perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
$(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o suidperl perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) `cat ext.libs` $(libs)
+!NO!SUBS!
+
+fi
+
+$spitshell >>Makefile <<'!NO!SUBS!'
+
sperl$(OBJ_EXT): perl.c perly.h patchlevel.h $(h)
$(RMS) sperl.c
$(LNS) perl.c sperl.c
@@ -430,7 +438,7 @@ MAKEDEPEND = makedepend
$(FIRSTMAKEFILE): Makefile $(MAKEDEPEND)
$(MAKE) depend MAKEDEPEND=
-config.h: config.sh
+config.h: config_h.SH config.sh
$(SHELL) config_h.SH
perl.exp: perl_exp.SH config.sh
@@ -451,7 +459,7 @@ check test: miniperl perl preplibrary $(dynamic_ext)
# Can't depend on lib/Config.pm because that might be where miniperl
# is crashing.
-minitest: miniperl
+minitest: miniperl
@echo "You may see some irrelevant test failures if you have been unable"
@echo "to build lib/Config.pm."
- cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \
@@ -469,15 +477,12 @@ shlist: $(sh)
pllist: $(pl)
echo $(pl) | tr ' ' '\012' >.pllist
-Makefile: Makefile.SH ./config.sh
+Makefile: Makefile.SH ./config.sh
$(SHELL) Makefile.SH
-distcheck : FORCE
+distcheck: FORCE
perl '-MExtUtils::Manifest=&fullcheck' -e 'fullcheck()'
-manifest :
- perl '-MExtUtils::Manifest=&mkmanifest' -e 'mkmanifest()'
-
# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
# If this runs make out of memory, delete /usr/include lines.
!NO!SUBS!