diff options
author | asau <asau> | 2009-09-22 14:48:47 +0000 |
---|---|---|
committer | asau <asau> | 2009-09-22 14:48:47 +0000 |
commit | c0d38d40992149c2409b248da5ada77f3452aee1 (patch) | |
tree | 00b1141674749a8e32c9c9ab7f7d19134a313fdd /lang/smlnj | |
parent | b69f52ca959a6a68ed60ac394903831e26362f40 (diff) | |
download | pkgsrc-c0d38d40992149c2409b248da5ada77f3452aee1.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
Diffstat (limited to 'lang/smlnj')
-rw-r--r-- | lang/smlnj/Makefile | 35 | ||||
-rw-r--r-- | lang/smlnj/distinfo | 120 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-aa | 44 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-ac | 23 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-af | 59 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-ah | 10 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-ai | 10 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-aj | 8 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-ak | 12 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-al | 15 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-ar | 20 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-as | 15 | ||||
-rw-r--r-- | lang/smlnj/patches/patch-at | 17 |
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 |