esac
linklibperl='$(LIBPERL)'
+shrpldflags='$(LDDLFLAGS)'
case "$useshrplib" in
true)
pldlflags="$cccdlflags"
# NeXT-4 specific stuff. Can't we do this in the hint file?
case "${osname}${osvers}" in
next4*)
- ld='libtool -dynamic -undefined warning -framework System \
- -compatibility_version 1 -current_version $(PATCHLEVEL) \
- -prebind -seg1addr 0x27000000 -install_name $(SHRPDIR)/$@'
+ ld=libtool
+ lddlflags="-dynamic -undefined warning -framework System \
+ -compatibility_version 1 -current_version $patchlevel \
+ -prebind -seg1addr 0x27000000 -install_name \$(shrpdir)/\$@"
;;
- sunos*)
+ sunos*|freebsd[23]*|netbsd*)
linklibperl="-lperl"
;;
+ aix*)
+ shrpldflags="-H512 -T512 -bhalt:4 -bM:SRE -bE:perl.exp"
+ case "$osvers" in
+ 3*)
+ shrpldflags="$shrpldflags -e _nostart $ldflags $libs $cryptlib"
+ ;;
+ *)
+ shrpldflags="$shrpldflags -b noentry $ldflags $libs $cryptlib"
+ ;;
+ esac
+ aixinstdir=`pwd | sed 's/\/UU$//'`
+ linklibperl="-L $archlibexp/CORE -L $aixinstdir -lperl"
+ ;;
esac
;;
*) pldlflags=''
# The following are used to build and install shared libraries for
# dynamic loading.
LDDLFLAGS = $lddlflags
+SHRPLDFLAGS = $shrpldflags
CCDLFLAGS = $ccdlflags
DLSUFFIX = .$dlext
PLDLFLAGS = $pldlflags
case "$useshrplib" in
true)
$spitshell >>Makefile <<'!NO!SUBS!'
- $(LD) $(LDDLFLAGS) -o $@ perl$(OBJ_EXT) $(obj) $(libs)
+ $(LD) $(SHRPLDFLAGS) -o $@ perl$(OBJ_EXT) $(obj)
+!NO!SUBS!
+ case "$osname" in
+ aix)
+ $spitshell >>Makefile <<'!NO!SUBS!'
+ mv $@ libperl$(OBJ_EXT)
+ $(AR) qv $(LIBPERL) libperl$(OBJ_EXT)
!NO!SUBS!
+ ;;
+ esac
;;
*)
$spitshell >>Makefile <<'!NO!SUBS!'
pureperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
purify $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o pureperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs)
+purecovperl: $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs
+ purecov $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o purecovperl perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `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) $(LLIBPERL) `cat ext.libs` $(libs)
# has been invoked correctly.
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) $(DYNALOADER) $(static_ext) $(LIBPERL) `cat ext.libs` $(libs)
+ $(CC) $(LARGE) $(CLDFLAGS) $(CCDLFLAGS) -o suidperl perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs)
!NO!SUBS!
# normally shouldn't remake perly.[ch].
run_byacc: FORCE
- @ echo 'Expect' 130 shift/reduce and 1 reduce/reduce conflict
+ @ echo 'Expect' 113 shift/reduce and 1 reduce/reduce conflict
$(BYACC) -d perly.y
sh $(shellflags) ./perly.fixer y.tab.c perly.c
sed -e 's/fprintf *( *stderr *,/PerlIO_printf(Perl_debug_log,/g' \
s_dummy $(static_ext): miniperl preplibrary $(DYNALOADER) FORCE
@sh ext/util/make_ext static $@ LIBPERL_A=$(LIBPERL)
-clean: _tidy _mopop
+clean: _tidy _mopup
realclean: _cleaner _mopup
@echo "Note that make realclean does not delete config.sh"
@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)) \
- && ./perl TEST base/*.t comp/*.t cmd/*.t pragma/*.t io/*.t op/*.t </dev/tty
+ && ./perl TEST base/*.t comp/*.t cmd/*.t io/*.t op/*.t pragma/*.t </dev/tty
clist: $(c)
echo $(c) | tr ' ' '\012' >.clist