summaryrefslogtreecommitdiff
path: root/hints
diff options
context:
space:
mode:
authorIlya Zakharevich <ilya@math.ohio-state.edu>1996-10-09 22:29:44 -0400
committerAndy Dougherty <doughera@lafcol.lafayette.edu>1996-10-09 22:29:44 -0400
commit26a1e0bdf5d7ed2c16d5f326bea481c59cb70cb6 (patch)
tree4434b8ad82b090cad98baf857b93afac989f0289 /hints
parent2dd2a3055bc26058439f6508a61a49f8f586a176 (diff)
downloadperl-26a1e0bdf5d7ed2c16d5f326bea481c59cb70cb6.tar.gz
perl 5.003_07: hints/os2.sh
Date: Wed, 9 Oct 1996 22:29:44 -0400 (EDT) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Some optimization (speedup in loading GNU utilities with some memory present - 32M should be quite enough). Test for revision of EMX, and setting fork()ing appropriately. libc was in .../st/... instead of mt. README.os2 is installed as pod/perlos2.pod.
Diffstat (limited to 'hints')
-rw-r--r--hints/os2.sh46
1 files changed, 38 insertions, 8 deletions
diff --git a/hints/os2.sh b/hints/os2.sh
index f8df9d25eb..9d81b24a5d 100644
--- a/hints/os2.sh
+++ b/hints/os2.sh
@@ -14,6 +14,11 @@
# Note that during the .obj compile you need to move the perl.dll file
# to LIBPATH :-(
+# Optimization (GNU make 3.74 cannot be loaded :-():
+emxload -m 30 sh.exe ls.exe tr.exe id.exe sed.exe # make.exe
+emxload -m 30 grep.exe egrep.exe fgrep.exe cat.exe rm.exe mv.exe cp.exe
+emxload -m 30 uniq.exe basename.exe sort.exe awk.exe echo.exe
+
path_sep=\;
if test -f $sh.exe; then sh=$sh.exe; fi
@@ -27,7 +32,10 @@ libemx="`../UU/loc . X c:/emx/lib d:/emx/lib e:/emx/lib f:/emx/lib g:/emx/lib h:
if test "$libemx" = "X"; then echo "Cannot find C library!"; fi
-libpth="$libemx/st $libemx"
+libpth="$libemx/mt $libemx"
+
+set `emxrev -f emxlibcm`
+emxcrtrev=$5
so='dll'
@@ -45,11 +53,19 @@ aout_obj_ext='.o'
aout_lib_ext='.a'
aout_ar='ar'
aout_plibext='.a'
-aout_d_fork='define'
aout_lddlflags='-Zdll'
-aout_ldflags='-Zexe'
+if [ $emxcrtrev -ge 50 ]; then
+ aout_ldflags='-Zexe -Zsmall-conv'
+else
+ aout_ldflags='-Zexe'
+fi
+
+# To get into config.sh:
+aout_ldflags="$aout_ldflags"
+
+aout_d_fork='define'
aout_ccflags='-DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS'
-aout_cppflags='-DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC =DDEBUGGING_MSTATS'
+aout_cppflags='-DDOSISH -DPERL_IS_AOUT -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS'
aout_use_clib='c'
aout_usedl='undef'
aout_archobjs="os2.o dl_os2.o"
@@ -64,7 +80,9 @@ if [ "$emxaout" != "" ]; then
lib_ext="$aout_lib_ext"
ar="$aout_ar"
plibext="$aout_plibext"
- d_fork="$aout_d_fork"
+ if [ $emxcrtrev -lt 50 ]; then
+ d_fork="$aout_d_fork"
+ fi
lddlflags="$aout_lddlflags"
ldflags="$aout_ldflags"
ccflags="$aout_ccflags"
@@ -78,11 +96,19 @@ else
lib_ext='.lib'
ar='emxomfar'
plibext='.lib'
- d_fork='undef'
+ if [ $emxcrtrev -ge 50 ]; then
+ d_fork='define'
+ else
+ d_fork='undef'
+ fi
lddlflags='-Zdll -Zomf -Zmt -Zcrtdll'
# Recursive regmatch may eat 2.5M of stack alone.
ldflags='-Zexe -Zomf -Zmt -Zcrtdll -Zstack 32000'
- ccflags='-Zomf -Zmt -DDOSISH -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS'
+ if [ $emxcrtrev -ge 50 ]; then
+ ccflags='-Zomf -Zmt -DDOSISH -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS'
+ else
+ ccflags='-Zomf -Zmt -DDOSISH -DOS2=2 -DEMBED -I. -DPACK_MALLOC -DDEBUGGING_MSTATS -DEMX_BAD_SBRK'
+ fi
use_clib='c_import'
usedl='define'
fi
@@ -94,7 +120,7 @@ plibext="$plibext"
libperl="libperl${plibext}"
#libc="/emx/lib/st/c_import$lib_ext"
-libc="$libemx/st/$use_clib$lib_ext"
+libc="$libemx/mt/$use_clib$lib_ext"
if test -r "$libemx/c_alias$lib_ext"; then
libnames="$libemx/c_alias$lib_ext"
@@ -168,6 +194,10 @@ d_setprior='define'
# Commented:
#startsh='extproc ksh\\n#! sh'
+# Copy pod:
+
+cp ../README.os2 ../pod/perlos2.pod
+
# Now install the external modules. We are in the ./hints directory.
cd ../os2/OS2