aboutsummaryrefslogtreecommitdiffstats
path: root/lang/sml-nj-devel/files
diff options
context:
space:
mode:
authorjkoshy <jkoshy@FreeBSD.org>2001-08-24 17:12:43 +0800
committerjkoshy <jkoshy@FreeBSD.org>2001-08-24 17:12:43 +0800
commit8d6bf5a291aea70314d7386f3d043d886ee1f84a (patch)
tree92011b2177d2ad565482658ade19e7584da74426 /lang/sml-nj-devel/files
parentccbc00943ac08cd8cf3a88eeeb3bbc855368bfbf (diff)
downloadfreebsd-ports-graphics-8d6bf5a291aea70314d7386f3d043d886ee1f84a.tar.gz
freebsd-ports-graphics-8d6bf5a291aea70314d7386f3d043d886ee1f84a.tar.zst
freebsd-ports-graphics-8d6bf5a291aea70314d7386f3d043d886ee1f84a.zip
Upgrade to SML/NJ v110.34. Add a number of nifty configurability options.
PR: ports/29656 Submitted by: Johannes 5 Joemann <joemann@beefree.free.de>
Diffstat (limited to 'lang/sml-nj-devel/files')
-rw-r--r--lang/sml-nj-devel/files/do-patch-src-installml48
-rw-r--r--lang/sml-nj-devel/files/do-patch-src-makeml31
-rw-r--r--lang/sml-nj-devel/files/extra-patch-global-names11
-rw-r--r--lang/sml-nj-devel/files/optional-patch-flint-access29
-rw-r--r--lang/sml-nj-devel/files/patch-ab30
-rw-r--r--lang/sml-nj-devel/files/plist-cml12
-rw-r--r--lang/sml-nj-devel/files/plist-eXene4
-rw-r--r--lang/sml-nj-devel/files/targets.customized98
8 files changed, 144 insertions, 119 deletions
diff --git a/lang/sml-nj-devel/files/do-patch-src-installml b/lang/sml-nj-devel/files/do-patch-src-installml
new file mode 100644
index 00000000000..542d987ece6
--- /dev/null
+++ b/lang/sml-nj-devel/files/do-patch-src-installml
@@ -0,0 +1,48 @@
+--- src/system/installml.orig Thu Jun 1 20:33:57 2000
++++ src/system/installml Wed Aug 15 18:49:56 2001
+@@ -3,7 +3,7 @@
+ # The tmpfile is for pathconfig editing (see below).
+ tmpfile=pathconfig.tmp.$$
+
+-trap 'rm -f $tmpfile; exit 1' 0 1 2 3 15
++trap 'rm -f $tmpfile; exit 1' 1 2 3 15
+
+ this=$0
+ here=`pwd`
+@@ -11,8 +11,10 @@
+ twoup=`pwd`
+ cd $here
+
+-MAIN_HEAP_DIR=$twoup/bin/.heap
+-MAIN_LIB_DIR=$twoup/lib
++INSTALLROOT=${INSTALLROOT:-$twoup}
++
++MAIN_HEAP_DIR=$INSTALLROOT/bin/.heap
++MAIN_LIB_DIR=$INSTALLROOT/lib
+
+ if [ $# -gt 0 ] ; then
+ STEM=$1
+@@ -54,7 +56,7 @@
+ fi
+ }
+
+-HEAP_FILE=$STEM.$ARCH-$OPSYS
++HEAP_FILE=$STEM.$HEAP_SUFFIX
+ LIB_DIR=$STEM.lib
+
+ if [ ! -f $HEAP_FILE ] ; then
+@@ -68,7 +70,7 @@
+ fi
+
+ # Moving the heap image to its place
+-mv $HEAP_FILE $MAIN_HEAP_DIR/sml.$ARCH-$OPSYS
++mv $HEAP_FILE $MAIN_HEAP_DIR/sml.$HEAP_SUFFIX
+
+ # Moving each individual library...
+ cd $LIB_DIR
+@@ -94,4 +96,5 @@
+ END { for (i in mapping) print i, mapping[i] }' \
+ | sort >$pcfile
+
++rm -f $tmpfile
+ rm -r $LIB_DIR
diff --git a/lang/sml-nj-devel/files/do-patch-src-makeml b/lang/sml-nj-devel/files/do-patch-src-makeml
new file mode 100644
index 00000000000..bdc33ed2951
--- /dev/null
+++ b/lang/sml-nj-devel/files/do-patch-src-makeml
@@ -0,0 +1,31 @@
+--- src/system/makeml.orig Wed Apr 18 17:43:09 2001
++++ src/system/makeml Wed Aug 15 18:36:30 2001
+@@ -6,7 +6,9 @@
+ twoup=`pwd`
+ cd $here
+
+-LINK=$twoup/bin/.link-sml
++INSTALLROOT=${INSTALLROOT:-$twoup}
++
++LINK=$INSTALLROOT/bin/.link-sml
+
+ if [ ! -x $LINK ] ; then
+ echo $this: link script $LINK is not operational.
+@@ -47,14 +49,14 @@
+ # ... unless it was already set at the time we run this script.
+ #
+
+-CM_PATHCONFIG_DEFAULT=${CM_PATHCONFIG_DEFAULT:-$twoup/lib/pathconfig}
++CM_PATHCONFIG_DEFAULT=${CM_PATHCONFIG_DEFAULT:-$INSTALLROOT/lib/pathconfig}
+ export CM_PATHCONFIG_DEFAULT
+
+ #
+ # use the arch-n-opsys script to determine the ARCH/OS if possible
+ #
+-if [ -f $twoup/bin/.arch-n-opsys ]; then
+- ARCH_N_OPSYS=`$twoup/bin/.arch-n-opsys`
++if [ -f $INSTALLROOT/bin/.arch-n-opsys ]; then
++ ARCH_N_OPSYS=`$INSTALLROOT/bin/.arch-n-opsys`
+ if [ "$?" = "0" ]; then
+ eval $ARCH_N_OPSYS
+ echo $this: architecture = $ARCH
diff --git a/lang/sml-nj-devel/files/extra-patch-global-names b/lang/sml-nj-devel/files/extra-patch-global-names
deleted file mode 100644
index 9b5ec3ce29e..00000000000
--- a/lang/sml-nj-devel/files/extra-patch-global-names
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/runtime/include/asm-base.h-- Fri Apr 20 18:56:45 2001
-+++ src/runtime/include/asm-base.h Thu Jun 14 12:49:34 2001
-@@ -16,7 +16,7 @@
- #define FALSE 0
- #define TRUE 1
-
--#if (!defined(GLOBALS_HAVE_UNDERSCORE)) && (defined(OPSYS_SUNOS) || defined(OPSYS_FREEBSD) || defined(OPSYS_NETBSD) || defined(OPSYS_NEXTSTEP) || defined(OPSYS_WIN32) || defined(OPSYS_DARWIN))
-+#if (!defined(GLOBALS_HAVE_UNDERSCORE)) && (defined(OPSYS_SUNOS) || (defined(OPSYS_FREEBSD) && !defined(__ELF__)) || defined(OPSYS_NETBSD) || defined(OPSYS_NEXTSTEP) || defined(OPSYS_WIN32) || defined(OPSYS_DARWIN))
- # define GLOBALS_HAVE_UNDERSCORE
- #endif
-
diff --git a/lang/sml-nj-devel/files/optional-patch-flint-access b/lang/sml-nj-devel/files/optional-patch-flint-access
new file mode 100644
index 00000000000..890534cfb66
--- /dev/null
+++ b/lang/sml-nj-devel/files/optional-patch-flint-access
@@ -0,0 +1,29 @@
+--- src/compiler/viscomp-core.cm.orig Tue May 8 23:25:14 2001
++++ src/compiler/viscomp-core.cm Thu Aug 9 00:06:53 2001
+@@ -69,6 +69,26 @@
+
+ functor DummyCCallsFn
+ structure ClusterAnnotation
++
++ (* export of structures required to use FLINT directly -5- *)
++ structure Types
++ structure Translate
++ (* in 110.27 already exported above: structure FLINT *)
++ structure LtyKernel
++ structure PrimTyc
++ structure LtyDef
++ structure LtyExtern
++ structure PPFlint
++ structure LContract
++ (* currently unused?: structure FContract *)
++ structure Specialize
++ structure PrimOp
++ structure LambdaVar
++ structure ChkFlint
++ (* accessible via GenericVC: structure Symbol *)
++ structure Access
++ structure DebIndex
++
+ is
+
+ TopLevel/batch/batchconfig.sml
diff --git a/lang/sml-nj-devel/files/patch-ab b/lang/sml-nj-devel/files/patch-ab
index cacfce58340..fe93cf1d434 100644
--- a/lang/sml-nj-devel/files/patch-ab
+++ b/lang/sml-nj-devel/files/patch-ab
@@ -1,5 +1,5 @@
---- config/install.sh.orig Wed May 23 03:36:12 2001
-+++ config/install.sh Mon Jun 18 14:40:02 2001
+--- config/install.sh.orig Wed Jun 20 22:39:12 2001
++++ config/install.sh Wed Aug 15 19:16:18 2001
@@ -408,6 +408,28 @@
}
@@ -29,11 +29,21 @@
# create the various sub directories
#
for dir in $BINDIR $HEAPDIR $RUNDIR $LIBDIR $SRCDIR ; do
-@@ -519,6 +541,7 @@
- # build the run-time system
- #
- unpack "run-time" $SRCDIR runtime runtime
-+do_patch extra-patch-global-names
- if [ -x $RUNDIR/run.$ARCH-$OPSYS ]; then
- echo $this: Run-time system already exists.
- else
+@@ -527,7 +549,7 @@
+ $MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS
+ if [ -x run.$ARCH-$OPSYS ]; then
+ mv run.$ARCH-$OPSYS $RUNDIR
+- $MAKE MAKE=$MAKE clean
++ [ "$MLNORUNTIMECLEAN" ] || $MAKE MAKE=$MAKE clean
+ else
+ echo "$this: !!! Run-time system build failed for some reason."
+ exit 1
+@@ -594,6 +616,8 @@
+ do
+ unpack $src $ROOT/src $src $src
+ done
++ do_patch do-patch-src-makeml
++ do_patch do-patch-src-installml
+ ;;
+ ml-yacc)
+ standalone ml-yacc ML-Yacc src
diff --git a/lang/sml-nj-devel/files/plist-cml b/lang/sml-nj-devel/files/plist-cml
new file mode 100644
index 00000000000..77c1791b46b
--- /dev/null
+++ b/lang/sml-nj-devel/files/plist-cml
@@ -0,0 +1,12 @@
+smlnj/lib/cml/CM/x86-unix/basis.cm
+smlnj/lib/cml/CM/x86-unix/cml-internal.cm
+smlnj/lib/cml/CM/x86-unix/cml.cm
+smlnj/lib/cml/CM/x86-unix/core-cml.cm
+smlnj/lib/cml-lib/CM/x86-unix/smlnj-lib.cm
+smlnj/lib/cml-lib/CM/x86-unix/trace-cml.cm
+@dirrm smlnj/lib/cml/CM/x86-unix
+@dirrm smlnj/lib/cml/CM
+@dirrm smlnj/lib/cml
+@dirrm smlnj/lib/cml-lib/CM/x86-unix
+@dirrm smlnj/lib/cml-lib/CM
+@dirrm smlnj/lib/cml-lib
diff --git a/lang/sml-nj-devel/files/plist-eXene b/lang/sml-nj-devel/files/plist-eXene
new file mode 100644
index 00000000000..a6d10eb14d7
--- /dev/null
+++ b/lang/sml-nj-devel/files/plist-eXene
@@ -0,0 +1,4 @@
+smlnj/lib/eXene.cm/CM/x86-unix/eXene.cm
+@dirrm smlnj/lib/eXene.cm/CM/x86-unix
+@dirrm smlnj/lib/eXene.cm/CM
+@dirrm smlnj/lib/eXene.cm
diff --git a/lang/sml-nj-devel/files/targets.customized b/lang/sml-nj-devel/files/targets.customized
deleted file mode 100644
index 2857f74eca8..00000000000
--- a/lang/sml-nj-devel/files/targets.customized
+++ /dev/null
@@ -1,98 +0,0 @@
-# targets
-#
-# the following is a list of the targets (in addition to sml) that
-# this shell script can install. Comment out those that you do not
-# want. Note that cml-lib requires cml.
-
-#
-# But first, decide where you want to have stable libraries stored.
-# If you set $MOVE_LIBRARIES to true, then the install script will
-# move all libraries out of the source tree and into the $LIBDIR
-# directory. Thus, you can then delete the entire source tree without
-# losing functionality. So choose one of these two:
-
-MOVE_LIBRARIES=true
-#MOVE_LIBRARIES=false
-
-# Now let's get started with the target list...
-
-TARGETS=""
-
-# (Always: build the basic sml compiler. This is not reflected in $TARGETS.)
-
-
-# unpack the source code for the SML/NJ compiler; this is not required,
-# unless you are doing compiler hacking, but it may be interesting to look at.
-#
-#TARGETS="$TARGETS src-smlnj"
-
-# build ML-Yacc
-#
-TARGETS="$TARGETS ml-yacc"
-
-# Always: install the pre-compiled ML-Yacc Library; this is necessary
-# to use parsers produced by ML-Yacc, but also to bootstrap the system
-# in the first place.
-
-
-# build ML-Lex
-#
-TARGETS="$TARGETS ml-lex"
-
-# Always: install the pre-compiled SML/NJ Library (necessary to bootstrap).
-
-
-# build ML-Burg
-#
-TARGETS="$TARGETS ml-burg"
-
-# pre-compile and install the remaining components of the SML/NJ library
-# (everything except smlnj-lib.cm, aka Util, itself)
-TARGETS="$TARGETS smlnj-lib"
-
-# pre-compile and install Concurrent ML, which is a library for message-passing
-# concurrency.
-#
-#TARGETS="$TARGETS cml"
-
-# pre-compile and install the CML Library, which provides some useful CML
-# modules.
-#
-#TARGETS="$TARGETS cml-lib"
-
-# pre-compile and install eXene, which is a library for X-Windows programming.
-# EXene requires CML.
-#
-#TARGETS="$TARGETS eXene"
-
-# pre-compile and install the C-Kit, which is a library for parsing and
-# type-checking C programs
-#
-TARGETS="$TARGETS ckit"
-
-# pre-compile and install the ML-NLFFI Library, which is the core of
-# a new foreign function interface (where "foreign" functions are
-# "no longer foreign")
-# This library is necessary to compile and/or run programs that use
-# the new FFI.
-# This preview release currently works only under X86/Linux.
-#
-TARGETS="$TARGETS ml-nlffi-lib"
-
-# build ML-NLFFI-Gen, a program generator tool used in conjunction with
-# the new "NLFFI" foreign function interface. The tool generates ML
-# glue code from C source code.
-# (Requires ckit!)
-# This preview release currently works only under X86/Linux.
-#
-TARGETS="$TARGETS ml-nlffigen"
-
-# unpack and install the documentation directory.
-#
-#TARGETS="$TARGETS doc"
-
-# Note: autoloading is always enabled.
-# In order to customize what is being pre-registered for autoloading
-# edit file "preloads". You should make sure that it contains at least
-# "$smlnj/cm.cm".
-# Also, it is a good idea to have "$/basis.cm" pre-loaded.