summaryrefslogtreecommitdiff
path: root/lang/sml-nj-devel
diff options
context:
space:
mode:
authorJoseph Koshy <jkoshy@FreeBSD.org>2007-08-27 15:41:19 +0000
committerJoseph Koshy <jkoshy@FreeBSD.org>2007-08-27 15:41:19 +0000
commita6186fde898a91d0d5cd0d521fd8894c0b8d5a74 (patch)
tree212be3cc9e3ae35030d29db42833d12dc7f81f16 /lang/sml-nj-devel
parent- Remove CONFLICTS (with smlnj-devel). Use a helper script (installed (diff)
Update to v110.65. Upstream changes from the previous version of the
port include: - many bug fixes, a revised regression test suite. - a new MLRISC code generator for the amd64. - "lexgen" has been replaced by "ml-ulex". - "ml-ulex", "ml-antlr" and "trace-debug-profile" are now part of the default install. Remove CONFLICTS with sml-nj. The sml-nj* ports now use a helper script (installed as ${PREFIX}/bin/multiexec-wrapper) to resolve conflicting executable names (such as sml, ml-lex, etc.). Submitted by: Johannes 5 Joemann [MAINTAINER]
Notes
Notes: svn path=/head/; revision=198389
Diffstat (limited to 'lang/sml-nj-devel')
-rw-r--r--lang/sml-nj-devel/Makefile59
-rw-r--r--lang/sml-nj-devel/distinfo123
-rw-r--r--lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcgetattr.c11
-rw-r--r--lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcsetattr.c11
-rw-r--r--lang/sml-nj-devel/files/patch-config_allsources10
-rw-r--r--lang/sml-nj-devel/files/pkg-install.in577
-rw-r--r--lang/sml-nj-devel/files/plist-everything33
-rw-r--r--lang/sml-nj-devel/pkg-plist50
8 files changed, 732 insertions, 142 deletions
diff --git a/lang/sml-nj-devel/Makefile b/lang/sml-nj-devel/Makefile
index 44e8085295ed..b9bf167a9293 100644
--- a/lang/sml-nj-devel/Makefile
+++ b/lang/sml-nj-devel/Makefile
@@ -6,7 +6,8 @@
#
PORTNAME= smlnj
-PORTVERSION= 110.60
+PORTVERSION= 110.65
+PKGNAMESUFFIX= -devel
CATEGORIES= lang
MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/ \
ftp://mirror.free.de/http/smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/
@@ -20,14 +21,14 @@ DIST_SUBDIR= sml-nj/${PORTVERSION}
NO_WRKSUBDIR= yes
USE_GMAKE= yes
-NO_LATEST_LINK= yes
-CONFLICTS= smlnj-110.0.*
-
ONLY_FOR_ARCHS= i386
OPTIONS= EVERYTHING "install everything from the SML/NJ distribution" off \
RECOMPILE "recompile the SML compiler - implies EVERYTHING" off
+PKGINSTALL= ${WRKDIR}/.pkg-install
+PKGDEINSTALL= ${PKGINSTALL}
+
.include <bsd.port.pre.mk>
.if (${ARCH} == "i386")
@@ -37,8 +38,8 @@ DISTFILES+= boot.x86-unix.tgz
#MLARCH= alpha32
#DISTFILES+= boot.alpha32-unix.tgz
.endif
-DISTFILES+= MLRISC.tgz ckit.tgz cml.tgz heap2asm.tgz lexgen.tgz \
- ml-lex.tgz ml-yacc.tgz smlnj-lib.tgz
+DISTFILES+= MLRISC.tgz ckit.tgz cml.tgz heap2asm.tgz ml-lpt.tgz \
+ ml-lex.tgz ml-yacc.tgz smlnj-lib.tgz trace-debug-profile.tgz
PLIST_SUB= MLARCH=${MLARCH}
@@ -47,27 +48,28 @@ WITH_EVERYTHING?= ${WITH_RECOMPILE}
.endif
.if defined(WITH_EVERYTHING)
-DISTFILES+= cm.tgz compiler.tgz eXene.tgz ml-burg.tgz ml-lpt.tgz \
- nlffi.tgz pgraph.tgz smlnj-c.tgz system.tgz \
- trace-debug-profile.tgz
+DISTFILES+= cm.tgz compiler.tgz eXene.tgz ml-burg.tgz \
+ nlffi.tgz pgraph.tgz smlnj-c.tgz system.tgz
.endif
MLROOTRELATIVE= smlnj
MLROOT= ${PREFIX}/${MLROOTRELATIVE}
+MLBINRELATIVE= ${MLROOTRELATIVE}/bin
MLBIN= ${MLROOT}/bin
MLLIB= ${MLROOT}/lib
-MLSRCDIRS= base ckit cml eXene heap2asm lexgen ml-burg ml-lex ml-lpt \
+MLSRCDIRS= base ckit cml eXene heap2asm ml-burg ml-lex ml-lpt \
ml-yacc nlffi pgraph smlnj-c smlnj-lib
MLSRCS=
.for srcdir in ${MLSRCDIRS}
MLSRCS+= ${MLROOT}/${srcdir}
.endfor
MLTARGETS= heap2asm
-MLEXE= heap2exec lexgen ml-build ml-lex ml-makedepend ml-yacc sml
+MLEXE= heap2exec ml-antlr ml-build ml-lex ml-makedepend \
+ ml-ulex ml-yacc sml
.if defined(WITH_EVERYTHING)
-MLTARGETS+= eXene ml-antlr ml-burg ml-nlffi-lib ml-nlffigen ml-ulex \
- mlrisc-tools nowhere pgraph-util tdp-util src-smlnj
-MLEXE+= ml-antlr ml-burg ml-nlffigen ml-ulex nowhere
+MLTARGETS+= eXene ml-burg ml-nlffi-lib ml-nlffigen \
+ mlrisc-tools nowhere pgraph-util src-smlnj
+MLEXE+= ml-burg ml-nlffigen nowhere
PLIST= ${WRKDIR}/.PLIST
MLRUNTIMEPLIST= ${WRKDIR}/.PLIST-runtime
MLSRCPLIST= ${WRKDIR}/.PLIST-src
@@ -117,9 +119,15 @@ do-configure:
.if defined(WITH_RECOMPILE)
( ${ECHO_CMD} "request ml-yacc" && \
${ECHO_CMD} "request ml-lex" && \
+ ${ECHO_CMD} "request ml-lex-mllex-tool" && \
${ECHO_CMD} "request src-smlnj" ) \
> "${WRKDIR}/config/targets.customized"
.endif
+# The text of the pkg-install script depends on the programs which will
+# be installed, see "post-install" below.
+ ${SED} -e 's?%%EXENAMES%%?${MLEXE}?g' \
+ -e 's?%%EXEBINDIR%%?${MLBINRELATIVE}?g' \
+ ${FILESDIR}/pkg-install.in > ${PKGINSTALL}
# The build target patches, builds, and installs the system within WRKDIR.
# base/runtime is not cleaned afterwards to avoid its recompilation during
@@ -271,9 +279,24 @@ do-install:
.endif
post-install:
- ${MKDIR} ${PREFIX}/bin
-.for f in ${MLEXE}
- ${LN} -s ${MLBIN}/$f ${PREFIX}/bin/$f
-.endfor
+ PKG_PREFIX=${PREFIX} MULTIEXEC_WRAPPER_VERBOSE=yes \
+ ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
+
+.ifndef MULTIEXEC_WRAPPER_VERBOSE
+deinstall:
+ export MULTIEXEC_WRAPPER_VERBOSE=yes && \
+ cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} deinstall
+.endif
+
+# This target may be used by dependent ports to set SMLNJ_DEVEL_VERSION
+# either to the currently installed sml-nj-devel package's version
+# or else to this port's version. SMLNJ_DEVEL_VERSION is an environment
+# variable used by multiexec-wrapper to select the executable
+# from that smlnj-* package matching SMLNJ_DEVEL_VERSION.
+smlnj-devel-version:
+# XXX PKG_INFO not in bsd.commands.mk (20070818)
+ @${EXPR} `pkg_info -q -O lang/sml-nj-devel` : '.*-\(.*\)' \
+ 2>/dev/null || \
+ ${ECHO_CMD} ${PKGVERSION}
.include <bsd.port.post.mk>
diff --git a/lang/sml-nj-devel/distinfo b/lang/sml-nj-devel/distinfo
index 43d4fc615ba7..058c47cb6375 100644
--- a/lang/sml-nj-devel/distinfo
+++ b/lang/sml-nj-devel/distinfo
@@ -1,63 +1,60 @@
-MD5 (sml-nj/110.60/MLRISC.tgz) = 9be399972ee2355580290fb88365397d
-SHA256 (sml-nj/110.60/MLRISC.tgz) = 48d5d29bb734d08bc7f0aa64ba90462a6fb1d4a62ab83ea2dfb9ec697f03a739
-SIZE (sml-nj/110.60/MLRISC.tgz) = 1335303
-MD5 (sml-nj/110.60/boot.x86-unix.tgz) = d40ac430520232b8fff3aae443b67c57
-SHA256 (sml-nj/110.60/boot.x86-unix.tgz) = f054e6d895133be784d1f10fc4b807ac5b04e19f3d469ce0ed544a9970126ee7
-SIZE (sml-nj/110.60/boot.x86-unix.tgz) = 5801916
-MD5 (sml-nj/110.60/ckit.tgz) = 783ededc63d468ebbe4897c2b4428821
-SHA256 (sml-nj/110.60/ckit.tgz) = ad0d96e29361cc8723bcd58ed631d940185a37bab76e402ed2b383d1cd126946
-SIZE (sml-nj/110.60/ckit.tgz) = 168140
-MD5 (sml-nj/110.60/cm.tgz) = 902c99ecaf339fd8e3225beb24e2cc39
-SHA256 (sml-nj/110.60/cm.tgz) = 2c4bc31203666df07d6093426a61d52907753f3d94a1522e57990df8f051db4c
-SIZE (sml-nj/110.60/cm.tgz) = 201282
-MD5 (sml-nj/110.60/cml.tgz) = f5f64c1abb02dd25805ca45d6ff85cf2
-SHA256 (sml-nj/110.60/cml.tgz) = d47374990b0dba142be57b9f38b015391e880e3f44e434b66205b75d1a553615
-SIZE (sml-nj/110.60/cml.tgz) = 104352
-MD5 (sml-nj/110.60/compiler.tgz) = 9f737cf77edcf1b23016fe09f39905c6
-SHA256 (sml-nj/110.60/compiler.tgz) = 9a915208eb2bc45fba79633d0d7f2a2918230389bb2d0b84e5684e0c3cd62d83
-SIZE (sml-nj/110.60/compiler.tgz) = 743513
-MD5 (sml-nj/110.60/config.tgz) = 5b8dba5a75076255e23b2d83bd10dc3d
-SHA256 (sml-nj/110.60/config.tgz) = 3efd70427ee489c1cec6b27fa69b2f577e0fdc4a50ee708b809b04dcd071d998
-SIZE (sml-nj/110.60/config.tgz) = 16334
-MD5 (sml-nj/110.60/eXene.tgz) = 2b4663c601b9e5bfe519fc2ec422cb92
-SHA256 (sml-nj/110.60/eXene.tgz) = a87afc7dab44abb1a2dfb7ca08c800c2c3b64693f9bc3059e9133159dd9e74d9
-SIZE (sml-nj/110.60/eXene.tgz) = 708164
-MD5 (sml-nj/110.60/heap2asm.tgz) = 4bc249955bf820a7109ed6da055f2538
-SHA256 (sml-nj/110.60/heap2asm.tgz) = a8f93c8d8451e437c5f4e103d1f680f1dc340e363b074518abca1496875f7f91
-SIZE (sml-nj/110.60/heap2asm.tgz) = 1317
-MD5 (sml-nj/110.60/lexgen.tgz) = 8bb74c47482f6be0490f23ad1d7791fa
-SHA256 (sml-nj/110.60/lexgen.tgz) = 065f3d0e77b509dc61ab45260d0f2a6689d303d41860317ac0200b5c2ab42dae
-SIZE (sml-nj/110.60/lexgen.tgz) = 57579
-MD5 (sml-nj/110.60/ml-burg.tgz) = 00b8d4a0f3c4270458294310783af948
-SHA256 (sml-nj/110.60/ml-burg.tgz) = e2af909146e5d338943e3e03dae26b9d41b17b52043213823a9d845dbf7cc01b
-SIZE (sml-nj/110.60/ml-burg.tgz) = 31529
-MD5 (sml-nj/110.60/ml-lex.tgz) = c0e376b8ed208250d91980168bc7eb75
-SHA256 (sml-nj/110.60/ml-lex.tgz) = dca7276007d4b040a285f8fe8453963d705f4fd0ad73d722240caed2ea187cc4
-SIZE (sml-nj/110.60/ml-lex.tgz) = 32412
-MD5 (sml-nj/110.60/ml-lpt.tgz) = 9ef96b6b4fe6236d36f5660d5e79fc55
-SHA256 (sml-nj/110.60/ml-lpt.tgz) = 649dce6595ce7fa2bd1446b36e5de93a069539c191e76950b105009ef04eb07f
-SIZE (sml-nj/110.60/ml-lpt.tgz) = 202405
-MD5 (sml-nj/110.60/ml-yacc.tgz) = 0e00059ff3d320043cceabeec50757c6
-SHA256 (sml-nj/110.60/ml-yacc.tgz) = f662a478d943bb25d0bf5aeb5bf687996395a1dba51d1d56aeef5632e79553b1
-SIZE (sml-nj/110.60/ml-yacc.tgz) = 95225
-MD5 (sml-nj/110.60/nlffi.tgz) = 371ca5e7ac35011cf22c04496b0f7c11
-SHA256 (sml-nj/110.60/nlffi.tgz) = 812a70c6fd2f9a4913d422ed2e7023399b0c6a74dc8a295d0cb931cc80b44ff8
-SIZE (sml-nj/110.60/nlffi.tgz) = 73026
-MD5 (sml-nj/110.60/pgraph.tgz) = 34200a84f4bfb6bae937f966cf6ffc36
-SHA256 (sml-nj/110.60/pgraph.tgz) = 5128faa6d4f109e3e10472ae0ae73df7f6e85cbab5d40400682582eb7a5f9773
-SIZE (sml-nj/110.60/pgraph.tgz) = 5446
-MD5 (sml-nj/110.60/runtime.tgz) = d9f25556b925b3c9552daa184bfab0ba
-SHA256 (sml-nj/110.60/runtime.tgz) = 0578012df9aedca2ded986fb90c42c8099f3ce716e3bff0b8c140799ebef9f87
-SIZE (sml-nj/110.60/runtime.tgz) = 315388
-MD5 (sml-nj/110.60/smlnj-c.tgz) = 9bee206ea3c0ffc1424fb31146a23e67
-SHA256 (sml-nj/110.60/smlnj-c.tgz) = 75e45f784740aa8136724a8ee5b93eb80b9b741fbe9367922183715317494cdc
-SIZE (sml-nj/110.60/smlnj-c.tgz) = 10539
-MD5 (sml-nj/110.60/smlnj-lib.tgz) = 9626d5b10dfef0528b70aba98d4b811d
-SHA256 (sml-nj/110.60/smlnj-lib.tgz) = 91836a40575d2b5d686ad6ef680ce481887cdeddacb4d368f2f5d57ab2996113
-SIZE (sml-nj/110.60/smlnj-lib.tgz) = 227091
-MD5 (sml-nj/110.60/system.tgz) = 4a23c7fa4993e52d0dc977cca1efa140
-SHA256 (sml-nj/110.60/system.tgz) = b6a02291e6fa3cc7ce79463f0de98d93fe5ff4edd210189c051afe9755c59424
-SIZE (sml-nj/110.60/system.tgz) = 220881
-MD5 (sml-nj/110.60/trace-debug-profile.tgz) = 3ce0f63ad88e2e8ceddb035675960e2f
-SHA256 (sml-nj/110.60/trace-debug-profile.tgz) = 31dd3b5ea0b99ad61af38f4f60cb488a5f9d059dd2c8dece28cc1445b94ba31b
-SIZE (sml-nj/110.60/trace-debug-profile.tgz) = 3904
+MD5 (sml-nj/110.65/MLRISC.tgz) = 6dee2df1bb58a90d86dc545261375edf
+SHA256 (sml-nj/110.65/MLRISC.tgz) = 24c036655e35f8a527b32d874231631ba84070d33fd1432de70fb38e0e5dedf4
+SIZE (sml-nj/110.65/MLRISC.tgz) = 1367586
+MD5 (sml-nj/110.65/boot.x86-unix.tgz) = df97db3fedf27627b134da88bc240d46
+SHA256 (sml-nj/110.65/boot.x86-unix.tgz) = 7d27f46bea0f53a87b40dbe63b3f1b4b9c7a9a851de47d718a678ff7da7f88c1
+SIZE (sml-nj/110.65/boot.x86-unix.tgz) = 5856903
+MD5 (sml-nj/110.65/ckit.tgz) = 1afdc1549105e4a40259ac595b5e75ac
+SHA256 (sml-nj/110.65/ckit.tgz) = 356db254e4490fb59fc25af9fd21fd5ce4014b48801a1de6c70bcdd785243f21
+SIZE (sml-nj/110.65/ckit.tgz) = 195616
+MD5 (sml-nj/110.65/cm.tgz) = 936537d0f28bc05f2b2e228cb67a30e4
+SHA256 (sml-nj/110.65/cm.tgz) = 25e4dffe764bc7f03784d6c06b5c8dc939458f800f127ffa3ce9c20db6f66537
+SIZE (sml-nj/110.65/cm.tgz) = 200916
+MD5 (sml-nj/110.65/cml.tgz) = 7cdff48d92dc2d76dce22d1da0987884
+SHA256 (sml-nj/110.65/cml.tgz) = 767664558904ac7599a30c22263ea9938a69e6be6a2e03e23a23bf8bcb8f9d0d
+SIZE (sml-nj/110.65/cml.tgz) = 104410
+MD5 (sml-nj/110.65/compiler.tgz) = 8b3cb4bdea7b89754e943432c51e6efa
+SHA256 (sml-nj/110.65/compiler.tgz) = 46fc836648215aadff547133d5d3f3039bf2a9adfd02b6434670c781ee0d8deb
+SIZE (sml-nj/110.65/compiler.tgz) = 812703
+MD5 (sml-nj/110.65/config.tgz) = 833741f2d668e8de3529a6a4b2f7dccd
+SHA256 (sml-nj/110.65/config.tgz) = aadcb4fb1afe76528e307e0374859d8b9f872b50df427c934491a1b2f7e6f3f1
+SIZE (sml-nj/110.65/config.tgz) = 17405
+MD5 (sml-nj/110.65/eXene.tgz) = a17eb858237d8adb3732d08613501887
+SHA256 (sml-nj/110.65/eXene.tgz) = 4dca2956f2991c82d6e86fbfc9ead0b98c3e2770da9d55c2d3fed2735e2ce392
+SIZE (sml-nj/110.65/eXene.tgz) = 708192
+MD5 (sml-nj/110.65/heap2asm.tgz) = fe37e8a575d73a9163046cf77472aebf
+SHA256 (sml-nj/110.65/heap2asm.tgz) = 68a82aaaf6fa8c52fdbb9edd7a242eb9ea33eaf5cd5bff55f0cb5264bf164f64
+SIZE (sml-nj/110.65/heap2asm.tgz) = 1320
+MD5 (sml-nj/110.65/ml-burg.tgz) = 0604d5430ab3ceff4825e67d24eda908
+SHA256 (sml-nj/110.65/ml-burg.tgz) = 535c92690b230a84e13868c5c3961ff7caacc063a03c573c7d74f68ff9fd1886
+SIZE (sml-nj/110.65/ml-burg.tgz) = 35989
+MD5 (sml-nj/110.65/ml-lex.tgz) = a0add456d9cc4bcf2fd43c3078322ec7
+SHA256 (sml-nj/110.65/ml-lex.tgz) = 58cb45190a410d2d24186a2ad5982f49f1e19c2f6697faa69aa3be053d9fa750
+SIZE (sml-nj/110.65/ml-lex.tgz) = 33050
+MD5 (sml-nj/110.65/ml-lpt.tgz) = 51d9cf0badcf3bfa5b2552edd9c9b378
+SHA256 (sml-nj/110.65/ml-lpt.tgz) = b432e08a840fde1608023558eeffcaf6f5b1e33b0f5f3bdd8fae326a0bea8bff
+SIZE (sml-nj/110.65/ml-lpt.tgz) = 250096
+MD5 (sml-nj/110.65/ml-yacc.tgz) = cc9a3fc240b0b56f4b32d5bbd06b6441
+SHA256 (sml-nj/110.65/ml-yacc.tgz) = 303d5afd820b916deb967bb70e04883a5bd2b6063a724cda00d1745f3991a67c
+SIZE (sml-nj/110.65/ml-yacc.tgz) = 98502
+MD5 (sml-nj/110.65/nlffi.tgz) = d877cf85fdd5a1d952ba9e856cfdddfc
+SHA256 (sml-nj/110.65/nlffi.tgz) = fdbae1fbc661de417dcde7e8f56d74f262ffb70a62b341b787e84558b3a2a035
+SIZE (sml-nj/110.65/nlffi.tgz) = 73030
+MD5 (sml-nj/110.65/pgraph.tgz) = d8160b52274f113373293ebf8fa158d1
+SHA256 (sml-nj/110.65/pgraph.tgz) = 3983bd803d939f6b4cb0f96d82c046a71f864c39ccbe73a9a9eefd5054cdda81
+SIZE (sml-nj/110.65/pgraph.tgz) = 5446
+MD5 (sml-nj/110.65/runtime.tgz) = e637fe9584529a2179c54b0f325b2da1
+SHA256 (sml-nj/110.65/runtime.tgz) = e1f83be6dd11bbd6082d9d1846d9cb012c2ab7314c79bf16b86a309458b5be8c
+SIZE (sml-nj/110.65/runtime.tgz) = 315775
+MD5 (sml-nj/110.65/smlnj-c.tgz) = 84528473fb02c8575197a25198407df0
+SHA256 (sml-nj/110.65/smlnj-c.tgz) = 87e83d2425f8dbd27a2c7c863b5025e94bae6e57058f096236e6987aa1c2580a
+SIZE (sml-nj/110.65/smlnj-c.tgz) = 10540
+MD5 (sml-nj/110.65/smlnj-lib.tgz) = b43f56983759d38a4110acb863dee00e
+SHA256 (sml-nj/110.65/smlnj-lib.tgz) = 5d094350160cdee7773d1ac502e57bd3be782f35022354d1b940d8f16a7d6a1a
+SIZE (sml-nj/110.65/smlnj-lib.tgz) = 230758
+MD5 (sml-nj/110.65/system.tgz) = 2875b7e8d3349ff03e7dc682bd42e9cd
+SHA256 (sml-nj/110.65/system.tgz) = 95608f9718821af84b68ae210d33b7a76465a9182d4463c193abcc2a66dad8f6
+SIZE (sml-nj/110.65/system.tgz) = 223918
+MD5 (sml-nj/110.65/trace-debug-profile.tgz) = db14311ae135692024bbc30ef55d222f
+SHA256 (sml-nj/110.65/trace-debug-profile.tgz) = e347119d27d6fecad72e0cd1b355db79305a40b36edac66573b794f71a9944fa
+SIZE (sml-nj/110.65/trace-debug-profile.tgz) = 3904
diff --git a/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcgetattr.c b/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcgetattr.c
deleted file mode 100644
index 3caf75f458a4..000000000000
--- a/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcgetattr.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- base/runtime/c-libs/posix-tty/tcgetattr.c.orig Thu Jun 1 20:34:03 2000
-+++ base/runtime/c-libs/posix-tty/tcgetattr.c Sun Nov 19 13:36:18 2006
-@@ -40,7 +40,7 @@
-
- /* allocate the vector; note that this might cause a GC */
- cc = ML_AllocString (msp, NCCS);
-- memcpy (PTR_MLtoC(void, cc), data.c_cc, NCCS);
-+ memcpy (GET_SEQ_DATAPTR(void, cc), data.c_cc, NCCS);
-
- ML_AllocWrite (msp, 0, MAKE_DESC(DTAG_record, 7));
- ML_AllocWrite (msp, 1, iflag);
diff --git a/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcsetattr.c b/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcsetattr.c
deleted file mode 100644
index 3ae6f8faef8d..000000000000
--- a/lang/sml-nj-devel/files/do-patch-base_runtime_c-libs_posix-tty_tcsetattr.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- base/runtime/c-libs/posix-tty/tcsetattr.c.orig Thu Jun 1 20:34:03 2000
-+++ base/runtime/c-libs/posix-tty/tcsetattr.c Sun Nov 19 13:36:18 2006
-@@ -30,7 +30,7 @@
- data.c_oflag = REC_SELWORD(termio_rep, 1);
- data.c_cflag = REC_SELWORD(termio_rep, 2);
- data.c_lflag = REC_SELWORD(termio_rep, 3);
-- memcpy (data.c_cc, REC_SELPTR(void, termio_rep, 4), NCCS);
-+ memcpy (data.c_cc, GET_SEQ_DATAPTR(void, REC_SEL(termio_rep, 4)), NCCS);
- sts = cfsetispeed (&data, REC_SELWORD(termio_rep, 5));
- if (sts < 0)
- return RAISE_SYSERR(msp, sts);
diff --git a/lang/sml-nj-devel/files/patch-config_allsources b/lang/sml-nj-devel/files/patch-config_allsources
new file mode 100644
index 000000000000..ab7b09bbdb3a
--- /dev/null
+++ b/lang/sml-nj-devel/files/patch-config_allsources
@@ -0,0 +1,10 @@
+--- config/allsources.orig Fri Nov 10 21:26:00 2006
++++ config/allsources Sun Jun 17 01:22:22 2007
+@@ -10,7 +10,6 @@
+ system
+ ml-yacc
+ ml-lex
+-lexgen
+ ml-burg
+ ml-nlffigen
+ ml-nlffi-lib
diff --git a/lang/sml-nj-devel/files/pkg-install.in b/lang/sml-nj-devel/files/pkg-install.in
new file mode 100644
index 000000000000..4750e0388775
--- /dev/null
+++ b/lang/sml-nj-devel/files/pkg-install.in
@@ -0,0 +1,577 @@
+#!/bin/sh
+# This file was automatically created - don't modify it!
+#%%SOURCEINFO-START%%
+# source version: $Id: pkg-install.in,v 1.15 2007/08/19 17:04:15 joemann Exp $
+# installed by port/package: %%SOURCEINFO-PACKAGE%%
+# installed from file: %%SOURCEINFO-FILE%%
+#%%SOURCEINFO-END%%
+if [ -n "$MULTIEXEC_WRAPPER_VERBOSE" ]
+then
+ QUIET=0
+else
+ QUIET=1
+fi
+#%%PKG-INSTALL-START%%
+# ===== IMPORTANT =====
+# If you modify any byte of this script outside of the
+# %%SOURCEINFO-*%% and #%%PKG-INSTALL-*%% sections, then
+# don't forget to bump the MINOR version variable below!
+#
+case "$2" in
+ # no-op cases if called as port/package de/installation script
+ PRE-INSTALL|POST-DEINSTALL)
+ exit 0
+ ;;
+esac
+#%%PKG-INSTALL-END%%
+
+ME=multiexec-wrapper
+CALLED_NAME="`basename $0`"
+PREFIX=%%PREFIX%%
+CONFIG="$PREFIX/etc/$ME.conf"
+
+lookup_executable() {
+ local calledname pkgname name executable rest \
+ portname version envvarname envvarversion result
+ # use global variable for the result to avoid subshell
+ lookup_executable_result=
+ [ -r "$CONFIG" ] || return 1
+ calledname="$1"
+ result=
+ while read pkgname name executable rest
+ do
+ if [ "$name" = "$calledname" -a -n "$executable" ]
+ then
+ result="$executable"
+ portname=`expr "$pkgname" : "\(.*\)-"`
+ envvarname="`echo -n "$portname" | \
+ tr "[:lower:]" "[:upper:]" | \
+ tr -cs "[:alnum:]" "_"`"
+ # <PORTNAME> variable selects package if name matches
+ eval envvarvalue='$'"$envvarname"
+ if [ -n "$envvarvalue" ]
+ then
+ break
+ fi
+ # <PORTNAME>_VERSION variable selects package version
+ version=`expr "$pkgname" : ".*-\([^-_,]*\)"`
+ eval envvarversion='$'"$envvarname"_VERSION
+ if [ "$envvarversion" = "$version" ]
+ then
+ break
+ fi
+ fi
+ done < "$CONFIG"
+ lookup_executable_result="$result"
+}
+
+warn () {
+ echo "${ME}: $1" 1>&2
+}
+
+die () {
+ warn "$1"
+ exit 1
+}
+
+# Normal usage: if called through a symlink,
+# lookup and exec a registered executable.
+
+if [ -L "$0" -a "$CALLED_NAME" != "$ME" ]
+then
+ lookup_executable "$CALLED_NAME"
+ executable="$lookup_executable_result"
+ if [ -x "$executable" ]
+ then
+ exec "$executable" "$@"
+ elif [ -z "$executable" ]
+ then
+ die "no executable registered for '$CALLED_NAME'."
+ elif [ ! -e "$executable" ]
+ then
+ die "$executable does not exist."
+ else
+ die "$executable is not executable."
+ fi
+fi
+
+EPOCH=1
+CONFIG_FORMAT=1
+MAJOR=1
+MINOR=0
+VERSION=$EPOCH.$CONFIG_FORMAT.$MAJOR.$MINOR
+
+usage() {
+ echo "usage: $ME <cmd> <arg> ..."
+ echo " with one of the following <cmd>s:"
+#%%PKG-INSTALL-START%%
+ echo " install-self-to <prefix> <pkgname>"
+ echo " deinstall-self-from <prefix>"
+#%%PKG-INSTALL-END%%
+ echo " deinstall-pkg <pkgname>"
+ echo " register <pkgname> <name> <executable>"
+ echo " unregister <pkgname> <name> <executable>"
+ echo " version"
+ echo " which <name>"
+ echo " list-all-packages"
+ echo " list-packages-for-name <name>"
+ exit 1
+}
+
+say () {
+ [ $QUIET -gt 0 ] || echo "${ME}: $1"
+}
+
+version() {
+ echo "$VERSION"
+ exit 0
+}
+
+which() {
+ local name executable
+ name="$1"
+ lookup_executable "$CALLED_NAME"
+ executable="$lookup_executable_result"
+ [ -z "$executable" ] && return 1
+ echo "$executable"
+}
+
+#%%PKG-INSTALL-START%%
+install_self_to() {
+ local pkgname myself target oldversion
+ PREFIX="$1"
+ pkgname="$2"
+ myself=`realpath "$0"`
+ target="$PREFIX/bin/$ME"
+ MYSELF_INSTALLED="$target"
+ if [ -e "$target" ]
+ then
+ if [ ! -x "$target" ]
+ then
+ die "$target already exists but is not executable."
+ else
+ oldversion=`$target version 2>/dev/null`
+ if [ $? -ne 0 ]
+ then
+ die "bogus $target already exists."
+ elif [ "$oldversion" = "$VERSION" ]
+ then
+ oldmd5=`sed -e '/^#%%PKG-INSTALL-START%%$/,/^#%%PKG-INSTALL-END%%$/d' \
+ -e '/^#%%SOURCEINFO-START%%$/,/^#%%SOURCEINFO-END%%$/d' \
+ -e 's?%%PREFIX%%?'"$PREFIX"'?g' "$target" | \
+ md5 -q`
+ newmd5=`sed -e '/^#%%PKG-INSTALL-START%%$/,/^#%%PKG-INSTALL-END%%$/d' \
+ -e '/^#%%SOURCEINFO-START%%$/,/^#%%SOURCEINFO-END%%$/d' \
+ -e 's?%%PREFIX%%?'"$PREFIX"'?g' "$myself" | \
+ md5 -q`
+ if [ "$newmd5" = "$oldmd5" ]
+ then
+ say "$myself (version $VERSION) already installed as $target."
+ return
+ else
+ die "$myself and $target have same version ($VERSION) but differ."
+ fi
+ elif [ `pkg_version -t "$oldversion" "$VERSION"` != "<" ]
+ then
+ say "$myself (version $VERSION) is not newer than $target (version $oldversion)."
+ fi
+ fi
+ fi
+ if sed -e '/^#%%PKG-INSTALL-START%%$/,/^#%%PKG-INSTALL-END%%$/d' \
+ -e 's?%%SOURCEINFO-PACKAGE%%?'"$pkgname"'?g' \
+ -e 's?%%SOURCEINFO-FILE%%?'"$myself"'?g' \
+ -e 's?%%PREFIX%%?'"$PREFIX"'?g' "$0" > "$target" && \
+ chmod +x "$target"
+ then
+ say "$0 (version $VERSION) installed as $target."
+ return
+ else
+ die "failed to install $ME (version $VERSION) as $target."
+ fi
+}
+
+deinstall_self_from() {
+ local config_empty=1
+ PREFIX="$1"
+ MYSELF_INSTALLED="$PREFIX/bin/$ME"
+ CONFIG="$PREFIX/etc/$ME.conf"
+ if [ ! -e "$CONFIG" ]
+ then
+ say "$CONFIG does not exist."
+ elif grep -v -q "^/SELF/" "$CONFIG"
+ then
+ say "$CONFIG is not empty."
+ config_empty=0
+ elif rm -f "$CONFIG"
+ then
+ say "$CONFIG removed."
+ else
+ warn "failed to remove $CONFIG."
+ fi
+ if [ "$config_empty" -eq 1 ]
+ then
+ if [ ! -e "$MYSELF_INSTALLED" ]
+ then
+ warn "$MYSELF_INSTALLED does not exist."
+ elif rm -f "$MYSELF_INSTALLED"
+ then
+ say "$MYSELF_INSTALLED removed."
+ else
+ warn "failed to remove $MYSELF_INSTALLED."
+ fi
+ fi
+}
+
+#%%PKG-INSTALL-END%%
+
+config_init() {
+ local format oldformat pkgname name executable rest
+ format="$EPOCH.$CONFIG_FORMAT"
+ if [ -r "$CONFIG" -a -s "$CONFIG" ]
+ then
+ oldformat=`cat "$CONFIG" | \
+ while read pkgname name executable rest
+ do
+ if [ "$pkgname" = "/SELF/" -a "$name" = "/FORMAT/" ]
+ then
+ echo "$executable"
+ break
+ fi
+ done`
+ if [ -z "$oldformat" ]
+ then
+ say "old $CONFIG has no format information - backing up ..."
+ if mv "$CONFIG" "$CONFIG.bak"
+ then
+ say "... done"
+ else
+ die "failed to backup old $CONFIG."
+ fi
+ elif [ "$oldformat" = "$format" ]
+ then
+ say "matching format statement found in $CONFIG."
+ else
+ # XXX compare versions and try to upgrade if appropriate
+ die "differing format statement found in $CONFIG ($executable instead of $format)."
+ fi
+ elif echo "/SELF/ /FORMAT/ $format" > "$CONFIG"
+ then
+ say "$CONFIG initialized."
+ else
+ die "failed to initialize $CONFIG"
+ fi
+}
+
+lookup_matches() {
+ local pkgname name executable rest p n e r
+ pkgname="$1"
+ name="$2"
+ executable="$3"
+ [ -r "$CONFIG" ] || return 1
+ cat "$CONFIG" | \
+ while read p n e r
+ do
+ [ "$pkgname" = "" -o "$p" = "$pkgname" ] && \
+ [ "$name" = "" -o "$n" = "$name" ] && \
+ [ "$executable" = "" -o "$e" = "$executable" ] && \
+ echo "$p $n $e"
+ done
+ return 0
+}
+
+config_add() {
+ local pkgname name executable matches
+ pkgname="$1"
+ name="$2"
+ executable="$3"
+ if [ ! -e "$CONFIG" ]
+ then
+ config_init
+ fi
+ if [ ! -r "$CONFIG" ]
+ then
+ die "$CONFIG not readable."
+ else
+ matches=`lookup_matches "$pkgname" "$name" "$executable"`
+ if [ -n "$matches" ]
+ then
+ say "already registered in $CONFIG: $pkgname $name $executable"
+ return
+ elif [ ! -w "$CONFIG" ]
+ then
+ die "$CONFIG is not writeable"
+ fi
+ fi
+ if echo "$pkgname $name $executable" >> "$CONFIG"
+ then
+ say "now added to config: $pkgname $name $executable"
+ else
+ die "write failed while trying to add to $CONFIG: $pkgname $name $executable"
+ fi
+}
+
+config_delete() {
+ local pkgname name executable matches
+ pkgname="$1"
+ name="$2"
+ executable="$3"
+ if [ ! -e "$CONFIG" ]
+ then
+ die "failed to delete from config: $CONFIG does not exist."
+ elif [ ! -r "$CONFIG" ]
+ then
+ die "$CONFIG not readable."
+ else
+ matches=`lookup_matches "$pkgname" "$name" "$executable"`
+ if [ -z "$matches" ]
+ then
+ say "no entry found in config for: $pkgname $name $executable."
+ elif [ ! -w "$CONFIG" ]
+ then
+ die "$CONFIG is not writeable."
+ elif [ ! -w `dirname "$CONFIG"` ]
+ then
+ die "config directory `dirname $CONFIG` is not writeable."
+ elif awk '$1 != "'"$pkgname"'" || \
+ $2 != "'"$name"'" || \
+ $3 != "'"$executable"'"' \
+ "$CONFIG" > "$CONFIG.new"
+ then
+ if diff -q "$CONFIG" "$CONFIG.new" >/dev/null
+ then
+ say "failed to delete from config (match problem): $pkgname $name $executable."
+ rm "$CONFIG.new"
+ elif mv -f "$CONFIG.new" "$CONFIG"
+ then
+ say "deleted from config: $pkgname $name $executable."
+ else
+ die "failed to update $CONFIG."
+ fi
+ else
+ die "failed to create new config $CONFIG.new."
+ fi
+ fi
+}
+
+register() {
+ local pkgname name executable savedwd
+ pkgname="$1"
+ name="$2"
+ executable="$3"
+ savedwd=$PWD
+ if [ ! -e "$executable" ]
+ then
+ die "won't register ${name}: $executable does not exist"
+ elif [ ! -x "$executable" ]
+ then
+ die "won't register ${name}: $executable is not executable"
+ elif cd "$PREFIX/bin"
+ then
+ if [ -e "$name" ]
+ then
+ if [ -L "$name" ]
+ then
+ target=`readlink $name`
+ if [ "$target" = "$ME" ]
+ then
+ say "symlink $name -> $ME already exists."
+ else
+ die "symlink $name already exists, but does not point to $ME (instead to $target)."
+ fi
+ else
+ die "$name already exists, but is not a symlink."
+ fi
+ else
+ if ln -s "$ME" "$name"
+ then
+ say "symlink $name -> $ME created."
+ else
+ die "failed to create symlink $name -> $ME."
+ fi
+ fi
+ config_add "$pkgname" "$name" "$executable"
+ else
+ die "can't cd to $PREFIX/bin."
+ fi
+ cd "$savedwd"
+}
+
+unregister() {
+ local pkgname name executable savedwd matches count
+ pkgname="$1"
+ name="$2"
+ executable="$3"
+ savedwd=$PWD
+ if [ ! -e "$executable" ]
+ then
+ say "while unregistering ${name}: $executable does not exist"
+ elif [ ! -x "$executable" ]
+ then
+ say "while unregistering ${name}: $executable is not executable"
+ fi
+ if cd "$PREFIX/bin"
+ then
+ if [ ! -e "$name" ]
+ then
+ say "symlink $name does not exist."
+ elif [ ! -L "$name" ]
+ then
+ say "$name exists, but is not a symlink."
+ else
+ target=`readlink $name`
+ if [ "$target" != "$ME" ]
+ then
+ say "symlink $name exists, but does not point to $ME (instead to $target)."
+ else
+ matches=`lookup_matches "" "$name"`
+ count=`printf "%s" "$matches" | wc -l`
+ if [ "$count" -eq 0 -o \
+ \( "$count" -eq 1 -a \
+ `expr "$matches" : "${pkgname}-"` -gt 0 \) ]
+ then
+ if rm -f "$name"
+ then
+ say "symlink $name removed."
+ else
+ die "failed to remove symlink $name -> $ME."
+ fi
+ else
+ say "not removing symlink $name because of further config entries."
+ fi
+ fi
+ fi
+ config_delete "$pkgname" "$name" "$executable"
+ else
+ die "can't cd to $PREFIX/bin."
+ fi
+ cd "$savedwd"
+}
+
+deinstall_pkg() {
+ local pkgname matches count p n e r
+ pkgname="$1"
+ matches=`lookup_matches "$pkgname"`
+ if [ $? -ne 0 ]
+ then
+ die "reading $CONFIG failed."
+ elif [ -z "$matches" ]
+ then
+ say "no entries for package $package in $CONFIG."
+ else
+ count=`printf "%s" "$matches" | wc -l`
+ say "trying to unregister $count entries for package $pkgname."
+ cat "$CONFIG" | \
+ while read p n e r
+ do
+ if [ "$p" = "$pkgname" ]
+ then
+ if [ -z "$n" ]
+ then
+ warn "in $CONFIG: incomplete config entry (no name) found for package $pkgname."
+ elif [ -z "$e" ]
+ then
+ warn "in $CONFIG: incomplete config entry (no executable) found for package $pkgname, name $name."
+ else
+ unregister "$pkgname" "$n" "$e"
+ fi
+ fi
+ done
+ fi
+}
+
+
+#%%PKG-INSTALL-START%%
+case "$2" in
+ POST-INSTALL)
+ PKGNAME="$1"
+ install_self_to "$PKG_PREFIX" "$PKGNAME"
+ "$MYSELF_INSTALLED" config-init || die "config-init of $CONFIG failed."
+ for exename in %%EXENAMES%%
+ do
+ exepath="$PKG_PREFIX/%%EXEBINDIR%%/$exename"
+ if [ -x "$exepath" ]
+ then
+ "$MYSELF_INSTALLED" register "$PKGNAME" "$exename" "$exepath" \
+ || die "failure during registration - aborting."
+ else
+ die "not an executable: $exepath."
+ fi
+ done
+ ;;
+ DEINSTALL)
+ PKGNAME="$1"
+ PREFIX="$PKG_PREFIX"
+ CONFIG="$PREFIX/etc/$ME.conf"
+ MYSELF_INSTALLED="$PREFIX/bin/$ME"
+ doitmyself=0
+ if [ ! -e "$MYSELF_INSTALLED" ]
+ then
+ say "$ME was not (or is no longer) installed as $MYSELF_INSTALLED."
+ doitmyself=1
+ elif [ ! -x "$MYSELF_INSTALLED" ]
+ then
+ say "$MYSELF_INSTALLED is not executable."
+ doitmyself=1
+ fi
+ if [ "$doitmyself" -eq 0 ]
+ then
+ "$MYSELF_INSTALLED" deinstall-pkg "$PKGNAME"
+ else
+ deinstall_pkg "$PKGNAME"
+ fi
+ deinstall_self_from "$PKG_PREFIX"
+ ;;
+esac
+#%%PKG-INSTALL-END%%
+
+list_all_packages() {
+ grep -v "^/" "$CONFIG" | \
+ awk '{ print $1 }' | \
+ uniq
+}
+
+list_packages_for_name() {
+ local name="$1"
+ lookup_matches "" "$name" "" | \
+ awk '{ print $1 }'
+}
+
+# main
+
+case "$1" in
+""|-h|--help)
+ usage
+ ;;
+#%%PKG-INSTALL-START%%
+install-self-to)
+ install_self_to "$2" "$3"
+ ;;
+deinstall-self-from)
+ deinstall_self_from "$2"
+ ;;
+#%%PKG-INSTALL-END%%
+version)
+ version
+ ;;
+which)
+ which "$2"
+ ;;
+config-init)
+ config_init
+ ;;
+register)
+ register "$2" "$3" "$4"
+ ;;
+unregister)
+ unregister "$2" "$3" "$4"
+ ;;
+deinstall-pkg)
+ deinstall_pkg "$2"
+ ;;
+list-all-packages)
+ list_all_packages "$2"
+ ;;
+list-packages-for-name)
+ list_packages_for_name "$2"
+ ;;
+esac
diff --git a/lang/sml-nj-devel/files/plist-everything b/lang/sml-nj-devel/files/plist-everything
index 296967475f16..2cffca4b899e 100644
--- a/lang/sml-nj-devel/files/plist-everything
+++ b/lang/sml-nj-devel/files/plist-everything
@@ -1,22 +1,16 @@
-bin/ml-antlr
-bin/ml-burg
-bin/ml-nlffigen
-bin/ml-ulex
-bin/nowhere
-smlnj/bin/.heap/ml-antlr.%%MLARCH%%-bsd
smlnj/bin/.heap/ml-burg.%%MLARCH%%-bsd
smlnj/bin/.heap/ml-nlffigen.%%MLARCH%%-bsd
-smlnj/bin/.heap/ml-ulex.%%MLARCH%%-bsd
smlnj/bin/.heap/nowhere.%%MLARCH%%-bsd
-smlnj/bin/ml-antlr
smlnj/bin/ml-burg
smlnj/bin/ml-nlffigen
-smlnj/bin/ml-ulex
smlnj/bin/nowhere
+smlnj/lib/burg-ext.cm/.cm/%%MLARCH%%-unix/burg-ext.cm
smlnj/lib/c/.cm/%%MLARCH%%-unix/c.cm
smlnj/lib/c/internals/.cm/%%MLARCH%%-unix/c-int.cm
smlnj/lib/c/memory/.cm/%%MLARCH%%-unix/memory.cm
+smlnj/lib/ckit-lib.cm/.cm/%%MLARCH%%-unix/ckit-lib.cm
smlnj/lib/eXene.cm/.cm/%%MLARCH%%-unix/eXene.cm
+smlnj/lib/mlburg-tool.cm/.cm/%%MLARCH%%-unix/mlburg-tool.cm
smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/match-compiler.cm
smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/parser.cm
smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/pp.cm
@@ -24,12 +18,9 @@ smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/prec-parser.cm
smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/sml-ast.cm
smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix/source-map.cm
smlnj/lib/pgraph-util.cm/.cm/%%MLARCH%%-unix/pgraph-util.cm
-smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/back-trace.cm
-smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/coverage.cm
-smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/plugins.cm
-@dirrm smlnj/lib/eXene.cm/.cm/%%MLARCH%%-unix
-@dirrm smlnj/lib/eXene.cm/.cm
-@dirrm smlnj/lib/eXene.cm
+@dirrm smlnj/lib/burg-ext.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/burg-ext.cm/.cm
+@dirrm smlnj/lib/burg-ext.cm
@dirrm smlnj/lib/c/memory/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/c/memory/.cm
@dirrm smlnj/lib/c/memory
@@ -39,12 +30,18 @@ smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/plugins.cm
@dirrm smlnj/lib/c/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/c/.cm
@dirrm smlnj/lib/c
+@dirrm smlnj/lib/ckit-lib.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/ckit-lib.cm/.cm
+@dirrm smlnj/lib/ckit-lib.cm
+@dirrm smlnj/lib/eXene.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/eXene.cm/.cm
+@dirrm smlnj/lib/eXene.cm
+@dirrm smlnj/lib/mlburg-tool.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/mlburg-tool.cm/.cm
+@dirrm smlnj/lib/mlburg-tool.cm
@dirrm smlnj/lib/mlrisc-tools/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/mlrisc-tools/.cm
@dirrm smlnj/lib/mlrisc-tools
@dirrm smlnj/lib/pgraph-util.cm/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/pgraph-util.cm/.cm
@dirrm smlnj/lib/pgraph-util.cm
-@dirrm smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix
-@dirrm smlnj/lib/smlnj-tdp/.cm
-@dirrm smlnj/lib/smlnj-tdp
diff --git a/lang/sml-nj-devel/pkg-plist b/lang/sml-nj-devel/pkg-plist
index 1c124980095e..f8d9e9a551f9 100644
--- a/lang/sml-nj-devel/pkg-plist
+++ b/lang/sml-nj-devel/pkg-plist
@@ -1,14 +1,8 @@
-bin/heap2exec
-bin/lexgen
-bin/ml-build
-bin/ml-lex
-bin/ml-makedepend
-bin/ml-yacc
-bin/sml
smlnj/bin/.arch-n-opsys
smlnj/bin/.heap/heap2asm.%%MLARCH%%-bsd
-smlnj/bin/.heap/lexgen.%%MLARCH%%-bsd
+smlnj/bin/.heap/ml-antlr.%%MLARCH%%-bsd
smlnj/bin/.heap/ml-lex.%%MLARCH%%-bsd
+smlnj/bin/.heap/ml-ulex.%%MLARCH%%-bsd
smlnj/bin/.heap/ml-yacc.%%MLARCH%%-bsd
smlnj/bin/.heap/sml.%%MLARCH%%-bsd
smlnj/bin/.link-sml
@@ -18,10 +12,11 @@ smlnj/bin/.run/run.%%MLARCH%%-freebsd.so
smlnj/bin/.run-sml
smlnj/bin/heap2asm
smlnj/bin/heap2exec
-smlnj/bin/lexgen
+smlnj/bin/ml-antlr
smlnj/bin/ml-build
smlnj/bin/ml-lex
smlnj/bin/ml-makedepend
+smlnj/bin/ml-ulex
smlnj/bin/ml-yacc
smlnj/bin/sml
smlnj/lib/SMLNJ-BASIS/.cm/%%MLARCH%%-unix/basis.cm
@@ -31,6 +26,7 @@ smlnj/lib/SMLNJ-LIB/PP/.cm/%%MLARCH%%-unix/pp-lib.cm
smlnj/lib/SMLNJ-LIB/Util/.cm/%%MLARCH%%-unix/smlnj-lib.cm
smlnj/lib/SMLNJ-ML-YACC-LIB/.cm/%%MLARCH%%-unix/ml-yacc-lib.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/ALPHA.cm
+smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/AMD64-Peephole.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/AMD64.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/Control.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/Graphs.cm
@@ -43,10 +39,9 @@ smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/MLTREE.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/PPC.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/Peephole.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/RA.cm
+smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/SA.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/SPARC.cm
smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/Visual.cm
-smlnj/lib/burg-ext.cm/.cm/%%MLARCH%%-unix/burg-ext.cm
-smlnj/lib/ckit-lib.cm/.cm/%%MLARCH%%-unix/ckit-lib.cm
smlnj/lib/cml/.cm/%%MLARCH%%-unix/basis.cm
smlnj/lib/cml/.cm/%%MLARCH%%-unix/cml-internal.cm
smlnj/lib/cml/.cm/%%MLARCH%%-unix/cml.cm
@@ -59,7 +54,9 @@ smlnj/lib/hash-cons-lib.cm/.cm/%%MLARCH%%-unix/hash-cons-lib.cm
smlnj/lib/inet-lib.cm/.cm/%%MLARCH%%-unix/inet-lib.cm
smlnj/lib/lex-ext.cm/.cm/%%MLARCH%%-unix/lex-ext.cm
smlnj/lib/make-tool.cm/.cm/%%MLARCH%%-unix/make-tool.cm
-smlnj/lib/mlburg-tool.cm/.cm/%%MLARCH%%-unix/mlburg-tool.cm
+smlnj/lib/ml-antlr-tool.cm/.cm/%%MLARCH%%-unix/ml-antlr-tool.cm
+smlnj/lib/ml-lpt-lib.cm/.cm/%%MLARCH%%-unix/ml-lpt-lib.cm
+smlnj/lib/ml-ulex-tool.cm/.cm/%%MLARCH%%-unix/ml-ulex-tool.cm
smlnj/lib/mllex-tool.cm/.cm/%%MLARCH%%-unix/mllex-tool.cm
smlnj/lib/mlyacc-tool.cm/.cm/%%MLARCH%%-unix/mlyacc-tool.cm
smlnj/lib/noweb-tool.cm/.cm/%%MLARCH%%-unix/noweb-tool.cm
@@ -70,10 +67,14 @@ smlnj/lib/pickle-lib.cm/.cm/%%MLARCH%%-unix/pickle-lib.cm
smlnj/lib/reactive-lib.cm/.cm/%%MLARCH%%-unix/reactive-lib.cm
smlnj/lib/regexp-lib.cm/.cm/%%MLARCH%%-unix/regexp-lib.cm
smlnj/lib/shell-tool.cm/.cm/%%MLARCH%%-unix/shell-tool.cm
+smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/back-trace.cm
+smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/coverage.cm
+smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix/plugins.cm
smlnj/lib/smlnj/.cm/%%MLARCH%%-unix/cm.cm
smlnj/lib/smlnj/.cm/%%MLARCH%%-unix/cmb.cm
smlnj/lib/smlnj/.cm/%%MLARCH%%-unix/compiler.cm
smlnj/lib/smlnj/.cm/%%MLARCH%%-unix/installer.cm
+smlnj/lib/smlnj/.cm/%%MLARCH%%-unix/library-install.cm
smlnj/lib/smlnj/MLRISC/.cm/%%MLARCH%%-unix/ALPHA.cm
smlnj/lib/smlnj/MLRISC/.cm/%%MLARCH%%-unix/AMD64.cm
smlnj/lib/smlnj/MLRISC/.cm/%%MLARCH%%-unix/Control.cm
@@ -110,6 +111,7 @@ smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/ppc.cm
smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/sparc.cm
smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/x86.cm
smlnj/lib/smlnj/init/.cm/%%MLARCH%%-unix/init.cmi
+smlnj/lib/smlnj/installer/.cm/%%MLARCH%%-unix/util.cm
smlnj/lib/smlnj/internal/.cm/%%MLARCH%%-unix/cm-lib.cm
smlnj/lib/smlnj/internal/.cm/%%MLARCH%%-unix/cm-sig-lib.cm
smlnj/lib/smlnj/internal/.cm/%%MLARCH%%-unix/cm0.cm
@@ -160,12 +162,6 @@ smlnj/lib/unix-lib.cm/.cm/%%MLARCH%%-unix/unix-lib.cm
@dirrm smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/SMLNJ-MLRISC/.cm
@dirrm smlnj/lib/SMLNJ-MLRISC
-@dirrm smlnj/lib/burg-ext.cm/.cm/%%MLARCH%%-unix
-@dirrm smlnj/lib/burg-ext.cm/.cm
-@dirrm smlnj/lib/burg-ext.cm
-@dirrm smlnj/lib/ckit-lib.cm/.cm/%%MLARCH%%-unix
-@dirrm smlnj/lib/ckit-lib.cm/.cm
-@dirrm smlnj/lib/ckit-lib.cm
@dirrm smlnj/lib/cml/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/cml/.cm
@dirrm smlnj/lib/cml
@@ -190,9 +186,15 @@ smlnj/lib/unix-lib.cm/.cm/%%MLARCH%%-unix/unix-lib.cm
@dirrm smlnj/lib/make-tool.cm/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/make-tool.cm/.cm
@dirrm smlnj/lib/make-tool.cm
-@dirrm smlnj/lib/mlburg-tool.cm/.cm/%%MLARCH%%-unix
-@dirrm smlnj/lib/mlburg-tool.cm/.cm
-@dirrm smlnj/lib/mlburg-tool.cm
+@dirrm smlnj/lib/ml-antlr-tool.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/ml-antlr-tool.cm/.cm
+@dirrm smlnj/lib/ml-antlr-tool.cm
+@dirrm smlnj/lib/ml-lpt-lib.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/ml-lpt-lib.cm/.cm
+@dirrm smlnj/lib/ml-lpt-lib.cm
+@dirrm smlnj/lib/ml-ulex-tool.cm/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/ml-ulex-tool.cm/.cm
+@dirrm smlnj/lib/ml-ulex-tool.cm
@dirrm smlnj/lib/mllex-tool.cm/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/mllex-tool.cm/.cm
@dirrm smlnj/lib/mllex-tool.cm
@@ -243,6 +245,9 @@ smlnj/lib/unix-lib.cm/.cm/%%MLARCH%%-unix/unix-lib.cm
@dirrm smlnj/lib/smlnj/internal/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/smlnj/internal/.cm
@dirrm smlnj/lib/smlnj/internal
+@dirrm smlnj/lib/smlnj/installer/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/smlnj/installer/.cm
+@dirrm smlnj/lib/smlnj/installer
@dirrm smlnj/lib/smlnj/ml-yacc/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/smlnj/ml-yacc/.cm
@dirrm smlnj/lib/smlnj/ml-yacc
@@ -253,6 +258,9 @@ smlnj/lib/unix-lib.cm/.cm/%%MLARCH%%-unix/unix-lib.cm
@dirrm smlnj/lib/smlnj/viscomp/.cm
@dirrm smlnj/lib/smlnj/viscomp
@dirrm smlnj/lib/smlnj
+@dirrm smlnj/lib/smlnj-tdp/.cm/%%MLARCH%%-unix
+@dirrm smlnj/lib/smlnj-tdp/.cm
+@dirrm smlnj/lib/smlnj-tdp
@dirrm smlnj/lib/unix-lib.cm/.cm/%%MLARCH%%-unix
@dirrm smlnj/lib/unix-lib.cm/.cm
@dirrm smlnj/lib/unix-lib.cm