summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorasau <asau@pkgsrc.org>2009-09-22 14:48:47 +0000
committerasau <asau@pkgsrc.org>2009-09-22 14:48:47 +0000
commit2dbe767acfbe6c3b02aaa3b25473618aafebb0d3 (patch)
tree00b1141674749a8e32c9c9ab7f7d19134a313fdd
parent037f267e1046219a1421d7265e9558d37d93f3f4 (diff)
downloadpkgsrc-2dbe767acfbe6c3b02aaa3b25473618aafebb0d3.tar.gz
Update to SML/NJ 110.71.
Numerous changes since version 110.42 include AMD64 support and loads of bug fixes, detailed list of changes is at http://www.smlnj.org/dist/working/110.71/NOTES/HISTORY
-rw-r--r--lang/smlnj/Makefile35
-rw-r--r--lang/smlnj/distinfo120
-rw-r--r--lang/smlnj/patches/patch-aa44
-rw-r--r--lang/smlnj/patches/patch-ac23
-rw-r--r--lang/smlnj/patches/patch-af59
-rw-r--r--lang/smlnj/patches/patch-ah10
-rw-r--r--lang/smlnj/patches/patch-ai10
-rw-r--r--lang/smlnj/patches/patch-aj8
-rw-r--r--lang/smlnj/patches/patch-ak12
-rw-r--r--lang/smlnj/patches/patch-al15
-rw-r--r--lang/smlnj/patches/patch-ar20
-rw-r--r--lang/smlnj/patches/patch-as15
-rw-r--r--lang/smlnj/patches/patch-at17
13 files changed, 171 insertions, 217 deletions
diff --git a/lang/smlnj/Makefile b/lang/smlnj/Makefile
index 7698d04fff5..160033c8447 100644
--- a/lang/smlnj/Makefile
+++ b/lang/smlnj/Makefile
@@ -1,13 +1,10 @@
-# $NetBSD: Makefile,v 1.19 2008/05/26 02:13:21 joerg Exp $
+# $NetBSD: Makefile,v 1.20 2009/09/22 14:48:47 asau Exp $
#
DISTNAME= boot.${BOX}-unix
PKGNAME= smlnj-${SML_VERSION}
-PKGREVISION= 3
CATEGORIES= lang
-MASTER_SITES= ftp://flint.cs.yale.edu/pub/smlnj/working/${SML_VERSION}/ \
- http://smlnj.cs.uchicago.edu/dist/working/${SML_VERSION}/ \
- ftp://flint.cs.yale.edu/pub/smlnj/working/${SML_VERSION}/
+MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${SML_VERSION}/
DISTFILES= MLRISC.tgz \
boot.${BOX}-unix.tgz \
ckit.tgz \
@@ -18,8 +15,7 @@ DISTFILES= MLRISC.tgz \
eXene.tgz \
ml-burg.tgz \
ml-lex.tgz \
- ml-nlffi-lib.tgz \
- ml-nlffigen.tgz \
+ nlffi.tgz \
ml-yacc.tgz \
runtime.tgz \
smlnj-lib.tgz \
@@ -29,14 +25,12 @@ MAINTAINER= richards+netbsd@CS.Princeton.EDU
HOMEPAGE= http://www.smlnj.org/index.html
COMMENT= Popular functional language from Bell Labs
-SML_VERSION= 110.42
+SML_VERSION= 110.71
PKG_DESTDIR_SUPPORT= user-destdir
# Other mirror sites that generally carry only released versions of SML
# ftp://rodin.stanford.edu/pub/smlnj/release/
-# ftp://ftp.cl.cam.ac.uk/MIRRORED/smlnj/release/
-# ftp://ftp.ntua.gr/pub/lang/smlnj/release/
WRKSRC= ${WRKDIR}
DIST_SUBDIR= smlnj-${SML_VERSION}
@@ -52,20 +46,18 @@ SML_SCRIPTS= _link-sml _run-sml _ml-build _ml-makedepend
.include "../../lang/smlnj/Makefile.common"
-INSTALLATION_DIRS+= bin
-
# create parent directory for the runtime system
pre-extract:
${MKDIR} ${WRKDIR}/src || ${TRUE}
# make it easier to patch the runtime system
do-extract:
- ${_PKG_SILENT}${_PKG_DEBUG} \
- extract_file="${_DISTDIR}/config.tgz"; export extract_file; \
+ ${RUN} extract_file="${_DISTDIR}/config.tgz"; export extract_file; \
cd ${WRKDIR}; ${EXTRACT_CMD}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- extract_file="${_DISTDIR}/runtime.tgz"; export extract_file; \
+ ${RUN} extract_file="${_DISTDIR}/runtime.tgz"; export extract_file; \
cd ${WRKDIR}/src; ${EXTRACT_CMD}
+ ${RUN} extract_file="${_DISTDIR}/runtime.tgz"; export extract_file; \
+ mkdir ${WRKDIR}/base; cd ${WRKDIR}/base; ${EXTRACT_CMD}
# make symlinks to the dist files
post-extract:
@@ -73,7 +65,12 @@ post-extract:
# resolve definition of SML_BASE, CFLAGS in patched files
do-configure:
- ${CPP} ${FILESDIR}/targets > ${WRKSRC}/config/targets.customized
+ if [ ${MACHINE_ARCH} = "powerpc" ]; then \
+ ${AWK} '(! /^request nlffi$$/) { print }' \
+ < ${WRKDIR}/config/targets \
+ > ${WRKDIR}/temp; \
+ ${MV} ${WRKDIR}/temp ${WRKDIR}/config/targets; \
+ fi
cd ${WRKDIR}/config; \
for f in ${SML_SCRIPTS}; do \
${CP} "$${f}" "$${f}.tmp"; \
@@ -93,14 +90,12 @@ do-build:
FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="${PATCH_ARGS}" \
SMLNJ_HOME="${WRKDIR}" ./config/install.sh
-post-build:
- chmod -R go-w ${WRKSRC}
-
# install target
# (see ftp://ftp.research.bell-labs.com/dist/smlnj/working/110.38/INSTALL)
# 1. create installation directories
# 2. copy the ./bin and ./lib directories across
# 3. install links to executables in $PREFIX/bin
+INSTALLATION_DIRS= bin
do-install:
${INSTALL_DATA_DIR} ${DESTDIR}${SML_BASE}
cd ${WRKDIR} && pax -rw -pam bin lib ${DESTDIR}${SML_BASE}
diff --git a/lang/smlnj/distinfo b/lang/smlnj/distinfo
index 73661f75557..0b071fcf3df 100644
--- a/lang/smlnj/distinfo
+++ b/lang/smlnj/distinfo
@@ -1,74 +1,66 @@
-$NetBSD: distinfo,v 1.11 2007/01/19 13:09:25 dmcmahill Exp $
+$NetBSD: distinfo,v 1.12 2009/09/22 14:48:47 asau Exp $
-SHA1 (smlnj-110.42/MLRISC.tgz) = 55055ed06f7dd2ef178ef365c018f0f38f740528
-RMD160 (smlnj-110.42/MLRISC.tgz) = 40aebe1cbf975e098bdf5115fd13b428e845195a
-Size (smlnj-110.42/MLRISC.tgz) = 1173187 bytes
-SHA1 (smlnj-110.42/boot.ppc-unix.tgz) = 50c12d123cbb953283cc01308bda94ba6a004f10
-RMD160 (smlnj-110.42/boot.ppc-unix.tgz) = b4c2b8683024f2e377dc131eb377190c49808122
-Size (smlnj-110.42/boot.ppc-unix.tgz) = 5063945 bytes
-SHA1 (smlnj-110.42/boot.sparc-unix.tgz) = d90361e8de683bde9f2ce76d5a3fdc0b9bcf7b1f
-RMD160 (smlnj-110.42/boot.sparc-unix.tgz) = 9b2c44e69ee46e24b51358939a3e8b494e6bce53
-Size (smlnj-110.42/boot.sparc-unix.tgz) = 5216813 bytes
-SHA1 (smlnj-110.42/boot.x86-unix.tgz) = 7e85b25459886179be0bcb949cd489f62c0a5424
-RMD160 (smlnj-110.42/boot.x86-unix.tgz) = 2af62e8196de6e7da03cfda10d4799bf7a56188e
-Size (smlnj-110.42/boot.x86-unix.tgz) = 5147025 bytes
-SHA1 (smlnj-110.42/ckit.tgz) = f47599df014c9c6dcd02c0bfcc0fad5d1409451b
-RMD160 (smlnj-110.42/ckit.tgz) = 87c737cf032f18c4381297ee895f07c81f4bd5d3
-Size (smlnj-110.42/ckit.tgz) = 168000 bytes
-SHA1 (smlnj-110.42/cm.tgz) = c102131e974e91426bab1cc30005f8e02f7622b6
-RMD160 (smlnj-110.42/cm.tgz) = e80f68805c33ff98d2139cdef04df179670114c0
-Size (smlnj-110.42/cm.tgz) = 202633 bytes
-SHA1 (smlnj-110.42/cml.tgz) = 61f20116032d284a0d2eecd5f14de5378ff4ea6d
-RMD160 (smlnj-110.42/cml.tgz) = f372145c1444814de2185d52cf422a5dc7d9ce70
-Size (smlnj-110.42/cml.tgz) = 128485 bytes
-SHA1 (smlnj-110.42/compiler.tgz) = fbde2959e05c04333131450d152a6ac5890b2867
-RMD160 (smlnj-110.42/compiler.tgz) = 00af4ad5382c93e59a1a66d3c9cce5d13a8c102c
-Size (smlnj-110.42/compiler.tgz) = 704669 bytes
-SHA1 (smlnj-110.42/config.tgz) = f7c1b75019c274872d599b9f5a42ce0ee1926c24
-RMD160 (smlnj-110.42/config.tgz) = 0ccd824debb96db27f419820f98135242401f6af
-Size (smlnj-110.42/config.tgz) = 13660 bytes
-SHA1 (smlnj-110.42/eXene.tgz) = e213539308047636da34a82fbcc7d59a8f03ea7a
-RMD160 (smlnj-110.42/eXene.tgz) = 5eb1a2527126587f4c894ae7e9c23d8c4209539c
-Size (smlnj-110.42/eXene.tgz) = 695431 bytes
-SHA1 (smlnj-110.42/ml-burg.tgz) = 8c69fd51f7eb86b941883fa7c309b7e54baf28ea
-RMD160 (smlnj-110.42/ml-burg.tgz) = d05eee14de5443d9a3b434ea0e35d91c61aea740
-Size (smlnj-110.42/ml-burg.tgz) = 31696 bytes
-SHA1 (smlnj-110.42/ml-lex.tgz) = 524714f95cd014e55624e9d1b270a77100f28cd1
-RMD160 (smlnj-110.42/ml-lex.tgz) = 6e830a1b50503ebfe8f7429cb6e6674fe3a17805
-Size (smlnj-110.42/ml-lex.tgz) = 32108 bytes
-SHA1 (smlnj-110.42/ml-nlffi-lib.tgz) = 5222ccdc1d9737360a0ce60b05137b476282e9f3
-RMD160 (smlnj-110.42/ml-nlffi-lib.tgz) = 821c4416429a71337c7676093bf3625e26db1761
-Size (smlnj-110.42/ml-nlffi-lib.tgz) = 33645 bytes
-SHA1 (smlnj-110.42/ml-nlffigen.tgz) = d3e0e064dfd0fd3c12bda72e098224ebea180a6a
-RMD160 (smlnj-110.42/ml-nlffigen.tgz) = e5e7a3fbe03aae141765de9b8e4495e796e32ec7
-Size (smlnj-110.42/ml-nlffigen.tgz) = 28836 bytes
-SHA1 (smlnj-110.42/ml-yacc.tgz) = ff4a077099a6f8d2bb8b32a64c9ef45e89358346
-RMD160 (smlnj-110.42/ml-yacc.tgz) = 5d9767e53f62a2fbcb27296979034f585274a430
-Size (smlnj-110.42/ml-yacc.tgz) = 95608 bytes
-SHA1 (smlnj-110.42/runtime.tgz) = 913b2c4ca3edea2fd7fcc09c482665fb92e5f540
-RMD160 (smlnj-110.42/runtime.tgz) = 8ce0479245b17678971e6af1a5798e358559d17c
-Size (smlnj-110.42/runtime.tgz) = 313057 bytes
-SHA1 (smlnj-110.42/smlnj-lib.tgz) = c48a8e19d4a14799d7596ce896f4a2040fe1c2bf
-RMD160 (smlnj-110.42/smlnj-lib.tgz) = c403e9206eb939e04e88e9a37ca797bbd341ef27
-Size (smlnj-110.42/smlnj-lib.tgz) = 251230 bytes
-SHA1 (smlnj-110.42/system.tgz) = 0b9f61052a6413ac1d391a6b7ddf903875d192ff
-RMD160 (smlnj-110.42/system.tgz) = 5f9cbdd50e47160f3190d08189f7b1f35bf646c9
-Size (smlnj-110.42/system.tgz) = 177548 bytes
-SHA1 (patch-aa) = 370fc94462f60fcf1b28ddad2266311b19d92eca
+SHA1 (smlnj-110.71/MLRISC.tgz) = 068b8404f33863ce8bbff5787cd2d1372b4481f8
+RMD160 (smlnj-110.71/MLRISC.tgz) = e85e48e74f7e4ffd46270e0bfcd9782a3f8b3728
+Size (smlnj-110.71/MLRISC.tgz) = 1435231 bytes
+SHA1 (smlnj-110.71/boot.x86-unix.tgz) = e07769b6d475fb052929ed5ed62aad3f069360c0
+RMD160 (smlnj-110.71/boot.x86-unix.tgz) = 0478c36823fbb8a5cf962a31723652c2aa3a10be
+Size (smlnj-110.71/boot.x86-unix.tgz) = 5849700 bytes
+SHA1 (smlnj-110.71/ckit.tgz) = bf169fde23c56a8df117a17ccb82b7ac2b5df7c4
+RMD160 (smlnj-110.71/ckit.tgz) = 635bfcc6333b42da29a9e4c40e52c742f6a47b5e
+Size (smlnj-110.71/ckit.tgz) = 199404 bytes
+SHA1 (smlnj-110.71/cm.tgz) = f0f1f8895f73387f795bcd41d66a345908a87e03
+RMD160 (smlnj-110.71/cm.tgz) = 0e69d96be376c468ca2f9992190149cd091227a8
+Size (smlnj-110.71/cm.tgz) = 202311 bytes
+SHA1 (smlnj-110.71/cml.tgz) = 2e97ea0802a533c26f5b5becc1fd0e459520e764
+RMD160 (smlnj-110.71/cml.tgz) = f0bcfd6b602d8cb54f9221433e4190bfeae39707
+Size (smlnj-110.71/cml.tgz) = 104707 bytes
+SHA1 (smlnj-110.71/compiler.tgz) = 11247fdf658297e9868b49746419d22ecd115cb6
+RMD160 (smlnj-110.71/compiler.tgz) = f03657f90b4aba8556dd562e0fe11692b8c0cb67
+Size (smlnj-110.71/compiler.tgz) = 825457 bytes
+SHA1 (smlnj-110.71/config.tgz) = 98c84eaf9ffe56c7ab30e770de8b23e3340deed7
+RMD160 (smlnj-110.71/config.tgz) = cf899afb658707a81397a114e23c1544c5007b91
+Size (smlnj-110.71/config.tgz) = 512911 bytes
+SHA1 (smlnj-110.71/eXene.tgz) = e67a80c395a2ecdb6b69bf488370e085b9b9f80e
+RMD160 (smlnj-110.71/eXene.tgz) = d0306c2fd44c5ba8bbb3b3f4f624fbb36da1c144
+Size (smlnj-110.71/eXene.tgz) = 714564 bytes
+SHA1 (smlnj-110.71/ml-burg.tgz) = 647c9c76acaf5c6a3406207004d8a35244bb2277
+RMD160 (smlnj-110.71/ml-burg.tgz) = 4e3f1bd5ac955a5b52cbcc2fc169881d014e45f1
+Size (smlnj-110.71/ml-burg.tgz) = 36670 bytes
+SHA1 (smlnj-110.71/ml-lex.tgz) = ca61052f052124e198bd9c779c8dd28086413d9a
+RMD160 (smlnj-110.71/ml-lex.tgz) = 880ae8cb9033af8fd0f8cefe266ed1038284c49d
+Size (smlnj-110.71/ml-lex.tgz) = 33060 bytes
+SHA1 (smlnj-110.71/ml-yacc.tgz) = 296a2b90c15a50058aa081097b4d487dbd86c62c
+RMD160 (smlnj-110.71/ml-yacc.tgz) = 8e32c485a5cdca861f2b896cf58e5dc3e0b911a1
+Size (smlnj-110.71/ml-yacc.tgz) = 102023 bytes
+SHA1 (smlnj-110.71/nlffi.tgz) = 71b67a3160997c88c3cc8fd8bb72f0e79262a378
+RMD160 (smlnj-110.71/nlffi.tgz) = fa3c9bad6c5f4d3ca1d03f0b8703e0cb524ef211
+Size (smlnj-110.71/nlffi.tgz) = 75182 bytes
+SHA1 (smlnj-110.71/runtime.tgz) = b1c8943d4298d96ef0764454ba79d4eebd1f5907
+RMD160 (smlnj-110.71/runtime.tgz) = 46c431745b3e197c829f50c359d6277f8c59d125
+Size (smlnj-110.71/runtime.tgz) = 334109 bytes
+SHA1 (smlnj-110.71/smlnj-lib.tgz) = 0ffcf5df4ea451ffba7e72cbcc210f3b60c989e5
+RMD160 (smlnj-110.71/smlnj-lib.tgz) = c837ee9a449e0d39732b9f536610795c69506203
+Size (smlnj-110.71/smlnj-lib.tgz) = 259309 bytes
+SHA1 (smlnj-110.71/system.tgz) = f0b761816489317ad64354cd0fe98e30b4bff83f
+RMD160 (smlnj-110.71/system.tgz) = cb7bd680883628e3b2c1e8af0375fcce9284ad6c
+Size (smlnj-110.71/system.tgz) = 239973 bytes
+SHA1 (patch-aa) = 0d475b9273d9322bde205005b06d213a17032dc3
SHA1 (patch-ab) = 3d5946b2d72dee255159afe6fb25240f8fa7e306
-SHA1 (patch-ac) = 7b3ea837db260542d1477ccbe0dba24c6afbc1e2
+SHA1 (patch-ac) = f6c30285f55a9537a785d363837ecc83cfd384b7
SHA1 (patch-ad) = a406bde2f6f7e2d93d652135b94aefd4b7aca494
SHA1 (patch-ae) = 5796401418fd91a795fdfe75060cf654dd315ac1
-SHA1 (patch-af) = a2b75a7309398b6869995cb46aeedc1416700da4
+SHA1 (patch-af) = fae22c6f367b3007bbd9b46b7a7a218710723ca4
SHA1 (patch-ag) = dae9c89ccc7ada96bd3ac4b2bae1da6427902fb4
-SHA1 (patch-ah) = 4d1f861cf18424db18fbcd19fd2e123b9a0a5247
-SHA1 (patch-ai) = dfb45b2c7d59bcd9230edb30d5dfffd4dab5782e
-SHA1 (patch-aj) = 24bbb65b02e97bec7673dccbf07fce9853c94984
-SHA1 (patch-ak) = 55738c10e5adc6b99d909a784f256b24e250990e
-SHA1 (patch-al) = 82842e8662670336e134f12e0851d5f61413211d
+SHA1 (patch-ah) = 93d7453dc82d91d29662cc02dd8ab9e8b8987393
+SHA1 (patch-ai) = 6a15a5415bd73e6618bc45b9a7eb021543e9cecd
+SHA1 (patch-aj) = 6318548da4c943c60fe63d41529803ea3fa2c96e
+SHA1 (patch-ak) = 6fb3d4444c75123dc8c5fa7bb6cea835c78ef6e3
SHA1 (patch-am) = 06d8cb145217c46ada440e0d3e7420ea99651064
SHA1 (patch-an) = d6e1a75d5fb68423ce3181622de919c2337db2e7
SHA1 (patch-ao) = 1c66024c5949269291cbf6f815baf6162db47d31
SHA1 (patch-ap) = 8e9e28548b4e58de68a11982a355a010ea96aa29
SHA1 (patch-aq) = 7d0734b76d778d7f584d2e70d325fd72e6554b01
-SHA1 (patch-ar) = 7e0bcad61ecdc39bb0fc038ea02921d683ba8648
+SHA1 (patch-ar) = 727afe6de54eb244c48e99c661f6b8ae3f780de0
+SHA1 (patch-as) = a2e5d474876baa1dc2484dda81708ea6ac92eb0b
+SHA1 (patch-at) = 9fd22dab9def459d3305695a38d14d25c645ff30
diff --git a/lang/smlnj/patches/patch-aa b/lang/smlnj/patches/patch-aa
index cde8be31d44..855a15a1581 100644
--- a/lang/smlnj/patches/patch-aa
+++ b/lang/smlnj/patches/patch-aa
@@ -1,8 +1,8 @@
-$NetBSD: patch-aa,v 1.4 2004/06/06 04:38:29 snj Exp $
+$NetBSD: patch-aa,v 1.5 2009/09/22 14:48:47 asau Exp $
---- config/targets.orig Thu Oct 10 12:02:10 2002
-+++ config/targets
-@@ -41,7 +41,7 @@ request ml-lex
+--- config/targets.orig 2007-07-23 23:48:33.000000000 +0400
++++ config/targets 2009-03-18 12:36:35.000000000 +0300
+@@ -91,7 +91,7 @@
# build ML-Burg
#
@@ -11,42 +11,36 @@ $NetBSD: patch-aa,v 1.4 2004/06/06 04:38:29 snj Exp $
# pre-compile and install the remaining components of the SML/NJ library
# (everything except smlnj-lib.cm, aka Util, itself)
-@@ -50,7 +50,7 @@ request smlnj-lib
+@@ -100,7 +100,7 @@
# pre-compile and install CM "portable graph" utility library
#
-#request pgraph-util
+request pgraph-util
- # pre-compile and install Concurrent ML, which is a library for message-passing
- # concurrency.
-@@ -65,12 +65,12 @@ request cml-lib
+ # pre-compile and install "Trace-Debug-Profile" utility library
+ # (provides simple back-trace- and coverage facilities)
+@@ -120,7 +120,7 @@
# pre-compile and install eXene, which is a library for X-Windows programming.
# EXene requires CML.
#
-#request eXene
+request eXene
- # pre-compile and install the C-Kit, which is a library for parsing and
- # type-checking C programs
- #
--#request ckit
-+request ckit
-
- # pre-compile and install the ML-NLFFI Library, which is the core of
- # a new foreign function interface (where "foreign" functions are
-@@ -79,7 +79,7 @@ request cml-lib
- # the new FFI.
- # This preview release currently works only under X86/Linux.
+ # pre-compile (certain) parts of MLRISC that are not already part of the SML/NJ
+ # compiler itself
+@@ -140,7 +140,7 @@
+ # This preview release currently works under X86/Linux, Sparc/Solaris,
+ # PPC/MacOSX, and X86/Win32.
#
-#request ml-nlffi-lib
+request 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
-@@ -87,13 +87,13 @@ request cml-lib
- # (Requires ckit!)
- # This preview release currently works only under X86/Linux.
+@@ -149,13 +149,13 @@
+ # This preview release currently works under X86/Linux, Sparc/Solaris,
+ # PPC/MacOSX, and X86/Win32.
#
-#request ml-nlffigen
+request ml-nlffigen
@@ -60,12 +54,12 @@ $NetBSD: patch-aa,v 1.4 2004/06/06 04:38:29 snj Exp $
# Build and install the 'nowhere' program translator.
# This tool translates programs with conditional patterns (where clauses)
-@@ -101,7 +101,7 @@ request cml-lib
+@@ -163,7 +163,7 @@
# (bad) documentation.
# (Requires the mlrisc-tools library!)
#
-#request nowhere
+request nowhere
- # Note: autoloading is always enabled.
- # In order to customize what is being pre-registered for autoloading
+ # Build and install 'heap2asm' - an experimental component of
+ # a new facility for producing true stand-alone executables.
diff --git a/lang/smlnj/patches/patch-ac b/lang/smlnj/patches/patch-ac
index 810b8399fa4..6a1c20aef56 100644
--- a/lang/smlnj/patches/patch-ac
+++ b/lang/smlnj/patches/patch-ac
@@ -1,17 +1,22 @@
-$NetBSD: patch-ac,v 1.3 2003/07/01 23:19:14 jtb Exp $
+$NetBSD: patch-ac,v 1.4 2009/09/22 14:48:47 asau Exp $
---- config/_arch-n-opsys.orig
-+++ config/_arch-n-opsys
-@@ -106,11 +106,13 @@
+--- config/_arch-n-opsys.orig 2008-08-13 22:37:59.000000000 +0400
++++ config/_arch-n-opsys 2009-01-27 17:24:34.000000000 +0300
+@@ -118,13 +118,15 @@
+ ;;
NetBSD)
- OPSYS=netbsd
+ case `uname -r` in
+- 2*) OPSYS=netbsd2;;
+- 3*) OPSYS=netbsd;;
+- *) exit 1;;
++ 1.*) exit 1;;
++ 2.*) OPSYS=netbsd2;;
++ *) OPSYS=netbsd;;
+ esac
HEAP_OPSYS=bsd
- case `uname -m` in
+ case `uname -p` in
- i386) ARCH=x86;;
- i486) ARCH=x86;;
- i586) ARCH=x86;;
- i686) ARCH=x86;;
+ *86) ARCH=x86;;
+ powerpc) ARCH=ppc;;
+ sparc) ARCH=sparc;;
*) exit 1;;
diff --git a/lang/smlnj/patches/patch-af b/lang/smlnj/patches/patch-af
index c79a187c2e2..359d77624a3 100644
--- a/lang/smlnj/patches/patch-af
+++ b/lang/smlnj/patches/patch-af
@@ -1,8 +1,8 @@
-$NetBSD: patch-af,v 1.4 2006/03/28 21:35:27 gavan Exp $
+$NetBSD: patch-af,v 1.5 2009/09/22 14:48:47 asau Exp $
---- src/runtime/mach-dep/signal-sysdep.h.orig 2002-10-10 19:20:04.000000000 +0100
-+++ src/runtime/mach-dep/signal-sysdep.h
-@@ -147,7 +147,7 @@ extern void SetFSR(int);
+--- src/runtime/mach-dep/signal-sysdep.h.orig 2006-02-27 17:47:32.000000000 +0000
++++ src/runtime/mach-dep/signal-sysdep.h 2006-03-09 19:15:48.000000000 +0000
+@@ -171,7 +171,7 @@
/* disable all FP exceptions */
# define SIG_InitFPE() SetFSR(0)
@@ -11,9 +11,9 @@ $NetBSD: patch-af,v 1.4 2006/03/28 21:35:27 gavan Exp $
/** SPARC, SUNOS **/
# define USE_ZERO_LIMIT_PTR_FN
# define SIG_FAULT1 SIGFPE
-@@ -318,6 +318,19 @@ extern void SetFSR();
-
- # define SIG_Flags 0
+@@ -340,6 +340,19 @@
+ # define SIG_ResetFPE(scp) { (scp)->regs->gpr[PT_FPSCR] = 0x0; }
+ typedef void SigReturn_t;
+# elif (defined(TARGET_PPC) && defined(OPSYS_NETBSD))
+ /* PPC, NetBSD */
@@ -28,49 +28,6 @@ $NetBSD: patch-af,v 1.4 2006/03/28 21:35:27 gavan Exp $
+# define SIG_GetCode(info,scp) (info)
+ typedef void SigReturn_t;
+
-
# endif /* HOST_RS6000/HOST_PPC */
-@@ -463,35 +476,15 @@ extern Addr_t *ML_X86Frame; /* used to
-
- # elif defined(OPSYS_NETBSD)
- /** x86, NetBSD **/
--/* NetBSD (including versions 1.0 and 1.1) generates SIGBUS rather
-- than SIGFPE for overflows. The real fix is a trivial change to
-- kernel sources, which has already been reported (NetBSD internal
-- problem identification "port-i386/1833").
--
-- If you want to fix this on your NetBSD system. Edit machdep.c in
-- directory /sys/arch/i386/i386, and find the line
--
-- setgate(&idt[ 4], &IDTVEC(ofl), 0, SDT_SYS386TGT, SEL_KPL);
--
-- Change SEL_KPL to SEL_UPL. With SEL_KPL, the int overflow trap is
-- not accessible at user level, and a protection fault occurs instead
-- (thus the seg fault). SEL_UPL will allow user processes to generate
-- this trap.
--
-- For the change to take effect, recompile your kernel, install it
-- and reboot. */
--# define SIG_FAULT1 SIGFPE
--# define SIG_FAULT2 SIGBUS
--# define INT_DIVZERO(s, c) 0
--# define INT_OVFLW(s, c) (((s) == SIGFPE) || ((s) == SIGBUS))
--
--# define SIG_GetCode(info, scp) (info)
--# define SIG_GetPC(scp) ((scp)->sc_pc)
--# define SIG_SetPC(scp, addr) { (scp)->sc_pc = (long)(addr); }
-+# define SIG_FAULT1 SIGFPE
-+# define INT_DIVZERO(s, c) ((s) == SIGFPE)
-+# define INT_OVFLW(s, c) ((s) == SIGFPE)
-+
-+# define SIG_GetCode(info, scp) (0)
-+# define SIG_GetPC(scp) ((scp)->uc_mcontext.__gregs[_REG_EIP])
-+# define SIG_SetPC(scp, addr) {(scp)->uc_mcontext.__gregs[_REG_EIP] = (long)(addr); }
- # define SIG_ZeroLimitPtr(scp) { ML_X86Frame[LIMITPTR_X86OFFSET] = 0; }
-
-- typedef void SigReturn_t;
--
- # elif defined(OPSYS_SOLARIS)
- /** x86, Solaris */
-
+ #elif defined(HOST_HPPA)
diff --git a/lang/smlnj/patches/patch-ah b/lang/smlnj/patches/patch-ah
index 1b02b90a330..ceab16ebea4 100644
--- a/lang/smlnj/patches/patch-ah
+++ b/lang/smlnj/patches/patch-ah
@@ -1,12 +1,12 @@
-$NetBSD: patch-ah,v 1.1 2003/03/21 22:54:40 wiz Exp $
+$NetBSD: patch-ah,v 1.2 2009/09/22 14:48:47 asau Exp $
---- config/_link-sml.orig Thu Oct 17 02:44:32 2002
-+++ config/_link-sml
-@@ -17,6 +17,7 @@ unset ENV
+--- config/_link-sml.orig 2005-01-03 21:13:16.000000000 +0000
++++ config/_link-sml 2005-12-24 22:04:13.000000000 +0000
+@@ -17,6 +17,7 @@
#
# SITE SPECIFIC CONFIGURATION INFO
#
+SMLNJ_HOME="${SMLNJ_HOME:-@SML_BASE@}"
# the path of the directory in which executables (like this file) are kept.
- if [ x${SMLNJ_HOME} = x ] ; then
+ if [ x"$SMLNJ_HOME" = x ] ; then
diff --git a/lang/smlnj/patches/patch-ai b/lang/smlnj/patches/patch-ai
index 8cc829b6443..6fd8d93e519 100644
--- a/lang/smlnj/patches/patch-ai
+++ b/lang/smlnj/patches/patch-ai
@@ -1,12 +1,12 @@
-$NetBSD: patch-ai,v 1.1 2003/03/21 22:54:40 wiz Exp $
+$NetBSD: patch-ai,v 1.2 2009/09/22 14:48:47 asau Exp $
---- config/_ml-build.orig Thu Oct 17 02:44:32 2002
-+++ config/_ml-build
+--- config/_ml-build.orig 2007-02-13 00:05:27.000000000 +0300
++++ config/_ml-build 2009-03-18 12:37:58.000000000 +0300
@@ -1,5 +1,7 @@
#!@SHELL@
+SMLNJ_HOME="${SMLNJ_HOME:-@SML_BASE@}"
+
if [ x${SMLNJ_HOME} = x ] ; then
- BIN_DIR=@BINDIR@
- else
+ BIN_DIR="@BINDIR@"
+ LIB_DIR="@LIBDIR@"
diff --git a/lang/smlnj/patches/patch-aj b/lang/smlnj/patches/patch-aj
index a7a17d7a436..212a0d59464 100644
--- a/lang/smlnj/patches/patch-aj
+++ b/lang/smlnj/patches/patch-aj
@@ -1,12 +1,12 @@
-$NetBSD: patch-aj,v 1.1 2003/03/21 22:54:41 wiz Exp $
+$NetBSD: patch-aj,v 1.2 2009/09/22 14:48:47 asau Exp $
---- config/_ml-makedepend.orig Thu Oct 17 02:44:32 2002
-+++ config/_ml-makedepend
+--- config/_ml-makedepend.orig 2004-12-14 23:23:38.000000000 +0000
++++ config/_ml-makedepend 2005-12-24 22:48:05.000000000 +0000
@@ -1,5 +1,7 @@
#!@SHELL@
+SMLNJ_HOME="${SMLNJ_HOME:-@SML_BASE@}"
+
if [ x${SMLNJ_HOME} = x ] ; then
- BIN_DIR=@BINDIR@
+ BIN_DIR="@BINDIR@"
else
diff --git a/lang/smlnj/patches/patch-ak b/lang/smlnj/patches/patch-ak
index 9ee9184fc87..15866b9ec80 100644
--- a/lang/smlnj/patches/patch-ak
+++ b/lang/smlnj/patches/patch-ak
@@ -1,12 +1,12 @@
-$NetBSD: patch-ak,v 1.1 2003/03/21 22:54:41 wiz Exp $
+$NetBSD: patch-ak,v 1.2 2009/09/22 14:48:47 asau Exp $
---- config/_run-sml.orig Thu Oct 17 02:44:32 2002
-+++ config/_run-sml
-@@ -19,6 +19,7 @@ unset ENV
+--- config/_run-sml.orig 2004-12-17 21:12:23.000000000 +0000
++++ config/_run-sml 2005-12-24 22:50:18.000000000 +0000
+@@ -19,6 +19,7 @@
#
# SITE SPECIFIC CONFIGURATION INFO
#
+SMLNJ_HOME="${SMLNJ_HOME:-@SML_BASE@}"
- # the path of the directory in which executables (like this file) are kept.
- if [ x${SMLNJ_HOME} = x ] ; then
+ # On cygwin, make sure SMLNJ_HOME is given a POSIX-style pathname.
+ if [ x"$SMLNJ_HOME" != x ] ; then
diff --git a/lang/smlnj/patches/patch-al b/lang/smlnj/patches/patch-al
deleted file mode 100644
index 4e9dcebe7ed..00000000000
--- a/lang/smlnj/patches/patch-al
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-al,v 1.3 2004/06/06 04:38:29 snj Exp $
-
---- src/runtime/objs/mk.x86-netbsd.orig 2000-11-06 13:41:04.000000000 -0800
-+++ src/runtime/objs/mk.x86-netbsd 2004-06-05 21:16:03.000000000 -0700
-@@ -9,8 +9,8 @@ MAKE = gmake
-
- ARFLAGS = Trcv
- CC = gcc -ansi
--CFLAGS = -O2
--CPP = gcc -x c -E -P -ansi
-+CFLAGS = @CFLAGS@
-+CPP = gcc -x assembler-with-cpp -E -P
- #CPP = /usr/bin/cpp -P
-
- XOBJS =
diff --git a/lang/smlnj/patches/patch-ar b/lang/smlnj/patches/patch-ar
index e535a48e51a..8d0b2212d2a 100644
--- a/lang/smlnj/patches/patch-ar
+++ b/lang/smlnj/patches/patch-ar
@@ -1,9 +1,11 @@
-$NetBSD: patch-ar,v 1.1 2006/03/28 21:35:27 gavan Exp $
+$NetBSD: patch-ar,v 1.2 2009/09/22 14:48:47 asau Exp $
---- src/runtime/include/ml-unixdep.h.orig 2002-10-12 02:03:50.000000000 +0100
-+++ src/runtime/include/ml-unixdep.h
-@@ -309,14 +309,14 @@ extern char *sys_errlist[];
- #elif defined(OPSYS_NETBSD)
+NetBSD has POSIX signals since 2.0 at least.
+
+--- src/runtime/include/ml-unixdep.h.orig 2008-12-05 20:57:39.000000000 +0300
++++ src/runtime/include/ml-unixdep.h 2009-03-19 00:14:35.000000000 +0300
+@@ -323,7 +323,7 @@
+ #elif defined(OPSYS_NETBSD) /* version 3.x */
# define OS_NAME "BSD"
# define HAS_POSIX_LIBRARIES
-# define HAS_BSD_SIGS
@@ -11,11 +13,3 @@ $NetBSD: patch-ar,v 1.1 2006/03/28 21:35:27 gavan Exp $
# define HAS_GETRUSAGE
# define HAS_SETITIMER
# define HAS_MMAP
- # define HAS_SELECT
- # define HAS_SCALBN
- # define HAS_ILOGB
--# define HAS_SIGCONTEXT
-+# define HAS_UCONTEXT
- # define HAS_STRERROR
-
- #endif
diff --git a/lang/smlnj/patches/patch-as b/lang/smlnj/patches/patch-as
new file mode 100644
index 00000000000..c25cd6b814b
--- /dev/null
+++ b/lang/smlnj/patches/patch-as
@@ -0,0 +1,15 @@
+$NetBSD: patch-as,v 1.1 2009/09/22 14:48:47 asau Exp $
+
+NetBSD has POSIX signals since 2.0 at least.
+
+--- base/runtime/include/ml-unixdep.h.orig 2008-12-05 20:57:39.000000000 +0300
++++ base/runtime/include/ml-unixdep.h 2009-03-19 00:16:29.000000000 +0300
+@@ -323,7 +323,7 @@
+ #elif defined(OPSYS_NETBSD) /* version 3.x */
+ # define OS_NAME "BSD"
+ # define HAS_POSIX_LIBRARIES
+-# define HAS_BSD_SIGS
++# define HAS_POSIX_SIGS
+ # define HAS_GETRUSAGE
+ # define HAS_SETITIMER
+ # define HAS_MMAP
diff --git a/lang/smlnj/patches/patch-at b/lang/smlnj/patches/patch-at
new file mode 100644
index 00000000000..7ad49df90f6
--- /dev/null
+++ b/lang/smlnj/patches/patch-at
@@ -0,0 +1,17 @@
+$NetBSD: patch-at,v 1.1 2009/09/22 14:48:47 asau Exp $
+
+NetBSD has POSIX signals since 2.0 at least.
+Don't unpack archive, since it is hard to fix,
+unpack before patch phase instead.
+
+--- config/install.sh.orig 2007-06-12 20:43:58.000000000 +0400
++++ config/install.sh 2009-03-19 00:47:06.000000000 +0300
+@@ -316,7 +316,7 @@
+ if [ -x "$RUNDIR"/run.$ARCH-$OPSYS ]; then
+ vsay $this: Run-time system already exists.
+ else
+- "$CONFIGDIR"/unpack "$ROOT" runtime
++# "$CONFIGDIR"/unpack "$ROOT" runtime
+ cd "$BASEDIR"/runtime/objs
+ echo $this: Compiling the run-time system.
+ $MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS