Date: Mon, 31 Dec 2018 18:33:00 +0000 (UTC) From: Steve Wills <swills@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r488815 - in head/lang/smlnj: . files Message-ID: <201812311833.wBVIX0U8017535@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: swills Date: Mon Dec 31 18:32:59 2018 New Revision: 488815 URL: https://svnweb.freebsd.org/changeset/ports/488815 Log: lang/smlnj: Update to 110.84, fix build on 12/amd64 PR: 234532 Submitted by: Johannes 5 <joemann@beefree.free.de> (maintainer) Added: head/lang/smlnj/files/do-patch-asdl_configure (contents, props changed) head/lang/smlnj/files/do-patch-asdl_src_asdlgen_Makefile.in (contents, props changed) head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_ml.lex (contents, props changed) head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_sml.lex (contents, props changed) head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-parser.sml (contents, props changed) head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-stream-printer.sml (contents, props changed) head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-util.sml (contents, props changed) head/lang/smlnj/files/patch-config_unpack (contents, props changed) Deleted: head/lang/smlnj/files/do-patch-base_system_smlnj_installer_generic-install.sml Modified: head/lang/smlnj/Makefile (contents, props changed) head/lang/smlnj/distinfo (contents, props changed) head/lang/smlnj/files/do-patch-base_runtime_mach-dep_signal-sysdep.h head/lang/smlnj/files/do-patch-base_runtime_objs_makefile head/lang/smlnj/files/do-patch-base_runtime_objs_mk.x86-freebsd head/lang/smlnj/files/patch-config___arch-n-opsys (contents, props changed) head/lang/smlnj/files/patch-config___heap2exec (contents, props changed) head/lang/smlnj/files/patch-config_install.sh (contents, props changed) head/lang/smlnj/pkg-plist (contents, props changed) Modified: head/lang/smlnj/Makefile ============================================================================== --- head/lang/smlnj/Makefile Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/Makefile Mon Dec 31 18:32:59 2018 (r488815) @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= smlnj -PORTVERSION= 110.77 +PORTVERSION= 110.84 CATEGORIES= lang MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/ \ ftp://mirror.free.de/http/smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/ @@ -18,7 +18,7 @@ LICENSE_TEXT= The text of the license can be obtained http://www.smlnj.org/license.html LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept -ONLY_FOR_ARCHS= i386 amd64 +ONLY_FOR_ARCHS= amd64 i386 LLD_UNSAFE= yes NO_WRKSUBDIR= yes @@ -27,54 +27,37 @@ SUB_FILES= pkg-install SUB_LIST= EXEBINDIR=${MLBINRELATIVE} EXENAMES="${MLEXE}" PKGDEINSTALL= ${PKGINSTALL} -# Calm portlint -CALM= - -OPTIONS_RADIO= RG1 -OPTIONS_RADIO_RG1= EVERYTHING RECOMPILE POSITION64 -OPTIONS_EXCLUDE_amd64= RECOMPILE POSITION64 -EVERYTHING_DESC= install${CALM} everything from the SML/NJ distribution +OPTIONS_DEFINE= EVERYTHING RECOMPILE POSITION64 +RECOMPILE_IMPLIES= EVERYTHING +POSITION64_IMPLIES= RECOMPILE +EVERYTHING_DESC= install everything from the SML/NJ distribution RECOMPILE_DESC= recompile the SML compiler - implies EVERYTHING -POSITION64_DESC= use 64bit file${CALM} positions - implies RECOMPILE +POSITION64_DESC= use 64bit file positions - implies RECOMPILE .include <bsd.port.pre.mk> -# Recompiling the compiler currently fails on amd64 -.if ${ARCH} == "i386" -ML_RECOMPILE_OPTIONS= RECOMPILE POSITION64 -.endif - .if (${ARCH} == "amd64") CFLAGS+= -m32 AS?= as -AS+= --32 +ASFLAGS+= --32 .endif .if (${ARCH} == "i386" || ${ARCH} == "amd64") MLARCH= x86 DISTFILES+= boot.x86-unix.tgz .endif -DISTFILES+= MLRISC.tgz ckit.tgz cml.tgz doc.tgz heap2asm.tgz \ - ml-burg.tgz ml-lpt.tgz ml-lex.tgz ml-yacc.tgz nlffi.tgz \ - smlnj-lib.tgz trace-debug-profile.tgz +DISTFILES+= MLRISC.tgz asdl.tgz ckit.tgz cml.tgz doc.tgz heap2asm.tgz \ + ml-burg.tgz ml-lex.tgz ml-lpt.tgz ml-yacc.tgz nlffi.tgz \ + old-basis.tgz smlnj-lib.tgz trace-debug-profile.tgz PLIST_SUB+= MLARCH=${MLARCH} -.if ${PORT_OPTIONS:MPOSITION64} || defined(ML_POSITION64) -ML_POSITION64?= ${PORT_OPTIONS:MPOSITION64} -ML_RECOMPILE?= ${ML_POSITION64} -ML_EVERYTHING?= ${ML_POSITION64} +.if ${PORT_OPTIONS:MPOSITION64} CMB_COMMAND= '(\#set o CMB.symval) "USE_64_BIT_POSITIONS" (SOME 1);' .else CMB_COMMAND= .endif -.if ${PORT_OPTIONS:MRECOMPILE} || defined(ML_RECOMPILE) -ML_RECOMPILE?= ${PORT_OPTIONS:MRECOMPILE} -ML_EVERYTHING?= ${ML_RECOMPILE} -.endif - -.if ${PORT_OPTIONS:MEVERYTHING} || defined(ML_EVERYTHING) -ML_EVERYTHING?= ${PORT_OPTIONS:MEVERYTHING} +.if ${PORT_OPTIONS:MEVERYTHING} DISTFILES+= cm.tgz compiler.tgz eXene.tgz \ pgraph.tgz smlnj-c.tgz system.tgz PLIST_SUB+= EVERYTHING="" @@ -87,7 +70,8 @@ MLROOT= ${PREFIX}/${MLROOTRELATIVE} MLBINRELATIVE= ${MLROOTRELATIVE}/bin MLBIN= ${MLROOT}/bin MLLIB= ${MLROOT}/lib -MLSTDSRCDIRS= cml doc heap2asm ml-burg ml-lex ml-lpt ml-yacc nlffi smlnj-lib +MLSTDSRCDIRS= asdl cml doc heap2asm ml-burg ml-lex ml-lpt ml-yacc \ + nlffi smlnj-lib MLSRCDIRS= base ${MLSTDSRCDIRS} \ ckit eXene pgraph smlnj-c MLSRCS= @@ -95,9 +79,9 @@ MLSRCS= MLSRCS+= ${MLROOT}/${srcdir} .endfor MLTARGETS= heap2asm -MLEXE= heap2exec ml-antlr ml-build ml-burg ml-lex ml-makedepend \ - ml-nlffigen ml-ulex ml-yacc sml -.if defined(ML_EVERYTHING) +MLEXE= asdlgen heap2exec ml-antlr ml-build ml-burg ml-lex \ + ml-makedepend ml-nlffigen ml-ulex ml-yacc sml +.if ${PORT_OPTIONS:MEVERYTHING} MLTARGETS+= eXene mlrisc-tools nowhere pgraph-util src-smlnj MLEXE+= nowhere PLIST= ${WRKDIR}/.PLIST @@ -108,19 +92,19 @@ MLPLISTFILES= ${.CURDIR}/pkg-plist ${MLRUNTIMEPLIST} $ pre-fetch: @${ECHO} -.if ! defined(ML_EVERYTHING) - @${ECHO} 'Use make ML_EVERYTHING=yes to also build/install' +.if ! ${PORT_OPTIONS:MEVERYTHING} + @${ECHO} 'Use port option EVERYTHING to also build/install' @${ECHO} ' eXene (X Windows toolkit),' @${ECHO} ' nowhere (preprocessor for conditional patterns),' @${ECHO} ' various libraries, and all the sources.' .endif -.if !empty(ML_RECOMPILE_OPTIONS:MRECOMPILE) && !defined(ML_RECOMPILE) - @${ECHO} 'Use make ML_RECOMPILE=yes to recompile the compiler.' - @${ECHO} ' This implies ML_EVERYTHING.' +.if ! ${PORT_OPTIONS:MRECOMPILE} + @${ECHO} 'Use port option RECOMPILE to recompile the compiler.' + @${ECHO} ' This implies EVERYTHING.' .endif -.if !empty(ML_RECOMPILE_OPTIONS:MPOSITION64) && !defined(ML_POSITION64) - @${ECHO} 'Use make ML_POSITION64=yes to use 64bit file positions.' - @${ECHO} ' This implies ML_RECOMPILE.' +.if ! ${PORT_OPTIONS:MPOSITION64} + @${ECHO} 'Use port option POSITION64 to use 64bit file positions.' + @${ECHO} ' This implies RECOMPILE.' .endif @${ECHO} @@ -145,7 +129,7 @@ do-configure: # Recompilation requires ml-lex and ml-yacc. All requested targets # will be built later using the recompiled core system after # removing targets.customized. See "do-build" below. -.if defined(ML_RECOMPILE) +.if ${PORT_OPTIONS:MRECOMPILE} ( ${ECHO_CMD} "request ml-yacc" && \ ${ECHO_CMD} "request ml-lex" && \ ${ECHO_CMD} "request ml-lex-mllex-tool" && \ @@ -158,7 +142,7 @@ do-configure: # a subsequent make install. # See base/system/README for information on recompiling the compiler. -.if defined(ML_RECOMPILE) +.if ${PORT_OPTIONS:MRECOMPILE} RECOMPILEDIR= base/system .else RECOMPILEDIR= @@ -174,9 +158,9 @@ MLSTANDARDPATCHES_CMD= cd ${FILESDIR} && \ MLSTANDARDPATCHDIRS_CMD= cd ${FILESDIR} && \ ( for srcdir in ${MLSTDSRCDIRS} ; \ do if ${LS} do-patch-$${srcdir}_* 1>&- 2>&- ; \ - then ${ECHO_CMD} -n $${srcdir} " " ; break ; fi ; \ + then ${ECHO_CMD} -n $${srcdir} " " ; fi ; \ done ) || ${TRUE} -.if defined(ML_EVERYTHING) +.if ${PORT_OPTIONS:MEVERYTHING} MLSOURCEPATCHES_CMD= cd ${FILESDIR} && \ ( ${LS} do-patch-* 2>&- || \ ${TRUE} ) @@ -192,9 +176,10 @@ do-build: MLSTANDARDPATCHES=`${MLSTANDARDPATCHES_CMD}` \ MLSTANDARDPATCHDIRS=`${MLSTANDARDPATCHDIRS_CMD}` \ MLSOURCEPATCHES=`${MLSOURCEPATCHES_CMD}` \ - CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' AS='${AS}' EXTRA_DEFS='${EXTRA_DEFS}' \ + CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \ + AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \ ./config/install.sh -.if defined(ML_RECOMPILE) +.if ${PORT_OPTIONS:MRECOMPILE} -${RM} ${WRKSRC}/config/targets.customized @${ECHO} '(* Recompiling the core system: *)' cd ${WRKSRC}/${RECOMPILEDIR} && ( \ @@ -215,31 +200,29 @@ do-build: ./installml @${ECHO} '(* Building requested targets: *)' cd ${WRKSRC} && unset PWD && \ - FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \ + FILESDIR="${FILESDIR}" PATCH="${PATCH}" \ + PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \ MLNORUNTIMECLEAN=yes RECOMPILEDIR="${RECOMPILEDIR}" \ - CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' AS='${AS}' EXTRA_DEFS='${EXTRA_DEFS}' \ + CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \ + AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \ ./config/install.sh .endif -# If Mac OS X resource files make it into the distribution tarballs, -# then we have to remove them at several points during the -# installation process. This is no longer necessary with FreeBSD 10 -# as it uses libarchive 3.x (via bsdtar), but earlier versions -# don't ignore such resource files and hence WRKSRC and STAGEDIR -# are full of them. Once FreeBSD 9 will be out of service, all -# lines in this Makefile can be removed which contain a pattern -# for the prefix "._" of the resource files. Background information: -# <https://github.com/libarchive/libarchive/wiki/TarExtendedAttributes#Apple_tar> - +.if ${PORT_OPTIONS:MEVERYTHING} post-build: - ${FIND} ${WRKSRC} -type f -name '\._*' -delete + ${CHMOD} a-x ${WRKSRC}/eXene/examples/basicwin/test.sh \ + ${WRKSRC}/smlnj-lib/HTML4/helper.py + @${ECHO} '(* Cleaning asdl: *)' + ${FIND} ${WRKSRC}/asdl -type f \ + -exec ${GREP} -F -l "${WRKDIR}" {} \; -delete +.endif # Nowadays PLIST has to be computed before installation. We do it in # "pre-install" because source extraction happens during "build". -.if defined(ML_EVERYTHING) +.if ${PORT_OPTIONS:MEVERYTHING} MLNOINSTALL= .cm -.if defined(ML_RECOMPILE) +.if ${PORT_OPTIONS:MRECOMPILE} MLNOINSTALL+= sml.bin.${MLARCH}-unix sml.boot.${MLARCH}-unix \ sml.lib sml.${MLARCH}-bsd .endif @@ -252,10 +235,9 @@ MLPATCHPATHREGEX= -E -e 's%(^|[^_])_([^_]|$$)%\1/\2%g' .endif pre-install: -.if defined(ML_EVERYTHING) +.if ${PORT_OPTIONS:MEVERYTHING} @${ECHO} -n '(* Computing package list ...' @${TAR} -tzf ${WRKSRC}/runtime.tgz | \ - ${GREP} -E -v '(^|/)\._.*' | \ ${SED} -E -n -e 's%^(.*[^/])$$%${MLROOTRELATIVE}/base/\1%p' \ > ${MLRUNTIMEPLIST} @${MLRUNTIMEPATCHES_CMD} | \ @@ -274,6 +256,7 @@ pre-install: ${AWK} '{ print "${MLROOTRELATIVE}/" $$0 }' ) ; \ ( ${FIND} -s -d ${MLSRCDIRS} -type d -empty | \ ${AWK} '{ print "@dir ${MLROOTRELATIVE}/" $$0 }' ) ) | \ + ${EGREP} -v "^${MLROOTRELATIVE}/base/runtime" | \ ${EGREP} -v ${MLSRCEXCLUDEREGEX} > ${MLSRCPLIST} @${SED} -e 's/^%%EVERYTHING%%//' ${MLPLISTFILES} | \ ${GREP} -h -v "^@dir" | ${SORT} -u > ${PLIST} @@ -304,7 +287,7 @@ pre-install: # When staging CM_PATHCONFIG has to point to the final # ${MLLIB}/pathconfig (in ${PREFIX}) while building the compiler. -.if defined(ML_EVERYTHING) +.if ${PORT_OPTIONS:MEVERYTHING} MLSRCEXCLUDES= .for excl in ${MLNOINSTALL} MLSRCEXCLUDES+= --exclude "${excl}" @@ -313,12 +296,13 @@ MLSRCEXCLUDES+= --exclude "${excl}" do-install: ${MKDIR} "${STAGEDIR}${MLROOT}" -.if ! defined(ML_RECOMPILE) +.if ! ${PORT_OPTIONS:MRECOMPILE} cd ${WRKSRC} && unset PWD && \ FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \ STAGEDIR="${STAGEDIR}" MLLIB="${MLLIB}" \ INSTALLDIR="${STAGEDIR}${MLROOT}" \ - CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' AS='${AS}' EXTRA_DEFS='${EXTRA_DEFS}' \ + CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \ + AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \ ./config/install.sh .else @${ECHO} '(* Rebuilding the recompiled libs: *)' @@ -330,16 +314,15 @@ do-install: @${ECHO} '(* Rebuilding the recompiled heap: *)' cd ${WRKSRC}/${RECOMPILEDIR} && \ ./makeml - @${ECHO} '(* Installing into ${MLROOT}: *)' + @${ECHO} '(* Installing into ${STAGEDIR}${MLROOT}: *)' cd ${WRKSRC} && unset PWD && \ FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \ STAGEDIR="${STAGEDIR}" MLLIB="${MLLIB}" \ INSTALLDIR="${STAGEDIR}${MLROOT}" RECOMPILEDIR="${RECOMPILEDIR}" \ - CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' AS='${AS}' EXTRA_DEFS='${EXTRA_DEFS}' \ + CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \ + AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \ ./config/install.sh .endif - [ ! -d ${STAGEDIR} ] || \ - ${FIND} ${STAGEDIR} -type f -name '\._*' -delete @${ECHO} '(* Installing man pages. *)' .for mansect in 1 2 3 4 5 6 7 8 9 @[ ! -d ${WRKSRC}/doc/man/man${mansect} ] || \ @@ -352,27 +335,23 @@ do-install: ( eval $${MLARCHOPSYS} ; \ ${STRIP_CMD} "${STAGEDIR}${MLBIN}/.run/run.$${ARCH}-$${OPSYS}" \ "${STAGEDIR}${MLBIN}/.run/run.$${ARCH}-$${OPSYS}.so" ) -.if defined(ML_EVERYTHING) +.if ${PORT_OPTIONS:MEVERYTHING} @${ECHO} '(* Cleaning base/runtime: *)' cd ${WRKSRC}/base/runtime/objs && ${MAKE_CMD} clean + @${ECHO} '(* Cleaning asdl: *)' + ${FIND} ${WRKSRC}/asdl -type f \ + -exec ${GREP} -F -l "${WRKDIR}" {} \; -delete @${ECHO} -n '(* Installing sources into ${STAGEDIR}${MLROOT} ...' @cd ${WRKSRC} && ${TAR} -cf - ${MLSRCEXCLUDES} ${MLSRCDIRS} | \ ${TAR} -xf - -C "${STAGEDIR}${MLROOT}" @${ECHO} ' done. *)' .endif - # Only execute ${PKGINSTALL} when installing to ${PREFIX}, # but not when staging. -.ifmake install${CALM} +.ifmake install${CALM_PORTLINT} PKG_PREFIX=${PREFIX} MULTIEXEC_WRAPPER_VERBOSE=yes \ ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL .endif - - ${FIND} ${STAGEDIR} -type f -name '\._*' -delete - MLARCHOPSYS=`${STAGEDIR}${MLBIN}/.arch-n-opsys` && \ - ( eval $${MLARCHOPSYS} ; \ - ${STRIP_CMD} "${STAGEDIR}${MLBIN}/.run/run.$${ARCH}-$${OPSYS}" \ - "${STAGEDIR}${MLBIN}/.run/run.$${ARCH}-$${OPSYS}.so" ) .ifndef MULTIEXEC_WRAPPER_VERBOSE deinstall: Modified: head/lang/smlnj/distinfo ============================================================================== --- head/lang/smlnj/distinfo Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/distinfo Mon Dec 31 18:32:59 2018 (r488815) @@ -1,42 +1,47 @@ -SHA256 (smlnj/110.77/MLRISC.tgz) = 4b443ee9e27bc8d2010bdce5724302c7d338e8eba0051d45cb4e384204488a76 -SIZE (smlnj/110.77/MLRISC.tgz) = 1479104 -SHA256 (smlnj/110.77/boot.x86-unix.tgz) = 9982a36d9fb3d2d15590d0d8bb15a30d3e684ad49f56d69eef8684f4eaf3bf02 -SIZE (smlnj/110.77/boot.x86-unix.tgz) = 5905482 -SHA256 (smlnj/110.77/ckit.tgz) = 29145b1739d46173cbaa87456b2bed35977c4ae7e83c48134a591459939b3966 -SIZE (smlnj/110.77/ckit.tgz) = 206672 -SHA256 (smlnj/110.77/cm.tgz) = 1c60316b3f16ae1a93cb87e281edcf2a84a554ac0415f010b8d565c2ae3a0a82 -SIZE (smlnj/110.77/cm.tgz) = 209949 -SHA256 (smlnj/110.77/cml.tgz) = bc4548eda9531c52029ed68a7988985b62ad17e95841c04dbbe32b4b30df4ef7 -SIZE (smlnj/110.77/cml.tgz) = 119083 -SHA256 (smlnj/110.77/compiler.tgz) = fcc7388167ee2d0048644bb2147bbca3e16f60be326dd724407e0f51e254e52f -SIZE (smlnj/110.77/compiler.tgz) = 841677 -SHA256 (smlnj/110.77/config.tgz) = 6bed2026e05367f247e2fcfa918edb835bdab24182f02f3253c1baf2f301b552 -SIZE (smlnj/110.77/config.tgz) = 514900 -SHA256 (smlnj/110.77/doc.tgz) = 8301bccdc1e99e8865e905070f7719d94a0ae39b44733d961a3e3002d97dd27e -SIZE (smlnj/110.77/doc.tgz) = 10240 -SHA256 (smlnj/110.77/eXene.tgz) = d4d3ccbde1bc11943054fb093a34c8531c9e8f56731293ca2470eab21602ea33 -SIZE (smlnj/110.77/eXene.tgz) = 729294 -SHA256 (smlnj/110.77/heap2asm.tgz) = f3f5c26d11dbe8019e6b3349ab07c04ffe553780a3a6ca0b000fe8084886ada5 -SIZE (smlnj/110.77/heap2asm.tgz) = 1606 -SHA256 (smlnj/110.77/ml-burg.tgz) = 9bc7bb014d34a63cb3ac8c42104bd579e8990ab2803c32a6a4410fcf8cfcbd4c -SIZE (smlnj/110.77/ml-burg.tgz) = 37604 -SHA256 (smlnj/110.77/ml-lex.tgz) = c4c0e108bf166f77e083692a27f9231d730c5b2a73a2f9f5409e55928c679553 -SIZE (smlnj/110.77/ml-lex.tgz) = 34081 -SHA256 (smlnj/110.77/ml-lpt.tgz) = eff30e6a3c4afb7f8265650e3e1cc83a8ff252ed19f22b30c2c431c9beca126e -SIZE (smlnj/110.77/ml-lpt.tgz) = 266511 -SHA256 (smlnj/110.77/ml-yacc.tgz) = 24a2b1d955e990c6f2a64d6be4df0c7d9bf430f56501587ecf95d30732cf266c -SIZE (smlnj/110.77/ml-yacc.tgz) = 103554 -SHA256 (smlnj/110.77/nlffi.tgz) = 8729d2aa203329fa76f9a7dccafe6fe88d0f397f1238727fea8fa1c67ae38cf0 -SIZE (smlnj/110.77/nlffi.tgz) = 79026 -SHA256 (smlnj/110.77/pgraph.tgz) = 5b46d4d9668f27b7538b5a8f6b62d9cd2c5797118e303aa691266df67f6e818c -SIZE (smlnj/110.77/pgraph.tgz) = 5907 -SHA256 (smlnj/110.77/runtime.tgz) = 8e40aa7d39c806d36360174d36bc376fa53662b5ac4f0a4add120c8c2fe67f2b -SIZE (smlnj/110.77/runtime.tgz) = 349470 -SHA256 (smlnj/110.77/smlnj-c.tgz) = 6de6f0d5a41e7fe097f3fae2815829c4bb14729145efa293fc74bd138180f01d -SIZE (smlnj/110.77/smlnj-c.tgz) = 11462 -SHA256 (smlnj/110.77/smlnj-lib.tgz) = 9232f7cf61a9a7a859dc9249a47a77b954a746137e8d8f6e57236f8c030677e7 -SIZE (smlnj/110.77/smlnj-lib.tgz) = 434946 -SHA256 (smlnj/110.77/system.tgz) = 367cce5e0ab848d28bc019862a30c2b5b774fd4733301bb72fec811d8e9d7f54 -SIZE (smlnj/110.77/system.tgz) = 246164 -SHA256 (smlnj/110.77/trace-debug-profile.tgz) = e6c7a4ed96de076b8d27af44eb8bfc1121e32f915d9a0b8fc356b5a27c761908 -SIZE (smlnj/110.77/trace-debug-profile.tgz) = 4329 +TIMESTAMP = 1545084427 +SHA256 (smlnj/110.84/MLRISC.tgz) = da3c5236018fa7608863c2fe1f3c57b60013df98b5a249fb3d4edc738cdfd072 +SIZE (smlnj/110.84/MLRISC.tgz) = 1458550 +SHA256 (smlnj/110.84/asdl.tgz) = 8be712200dc186b8bbe79b3ae111f2c490bf74f4709882d3459ac061f66b5b8e +SIZE (smlnj/110.84/asdl.tgz) = 193047 +SHA256 (smlnj/110.84/boot.x86-unix.tgz) = a29e3b0ca623da197e9c18ea64db4c2a08fe5e6add85c0d053c4ecfa653ace82 +SIZE (smlnj/110.84/boot.x86-unix.tgz) = 5762714 +SHA256 (smlnj/110.84/ckit.tgz) = 7e2534e393d2372cad8ff9ddd306881db91bbbcc2b0e0538e76868c86c658c36 +SIZE (smlnj/110.84/ckit.tgz) = 198419 +SHA256 (smlnj/110.84/cm.tgz) = 7055c60481a887f27a5135ac1f33233565b99a7c99c4aa73e023e28e629b0663 +SIZE (smlnj/110.84/cm.tgz) = 220278 +SHA256 (smlnj/110.84/cml.tgz) = 556110c746db863211ac8a97e1bf097b0e5d45dfea4b3e8194b6c389ac2b569a +SIZE (smlnj/110.84/cml.tgz) = 105655 +SHA256 (smlnj/110.84/compiler.tgz) = 6d23aff2e75727bf6969b05a070128f187e06f60408aabf6a71e0475326fee87 +SIZE (smlnj/110.84/compiler.tgz) = 862298 +SHA256 (smlnj/110.84/config.tgz) = 1810d3ca768222e120c7a3f2f93aafd652705371fc73929423c671dce3cef832 +SIZE (smlnj/110.84/config.tgz) = 514275 +SHA256 (smlnj/110.84/doc.tgz) = 0ed69456e4c2b851f475057a94da406c80f46cdd02a5d9077670be33122c7020 +SIZE (smlnj/110.84/doc.tgz) = 2029114 +SHA256 (smlnj/110.84/eXene.tgz) = 3fe1c6a1a334e7d7359fbcfd053066c88cb7705a90975b60fff946554aa0019c +SIZE (smlnj/110.84/eXene.tgz) = 720713 +SHA256 (smlnj/110.84/heap2asm.tgz) = 3d33c52b650536762d47534f07709e749cc821ce515aef2fb9a746db11433e95 +SIZE (smlnj/110.84/heap2asm.tgz) = 1343 +SHA256 (smlnj/110.84/ml-burg.tgz) = 62ea37b13788078e3ea77d3b870da42788153c348009f827f2c0b05cfc07d918 +SIZE (smlnj/110.84/ml-burg.tgz) = 40510 +SHA256 (smlnj/110.84/ml-lex.tgz) = cc7e045aa9667f1eed055db1defca0e830eed34c08f3dfdf37f698964fe04070 +SIZE (smlnj/110.84/ml-lex.tgz) = 27833 +SHA256 (smlnj/110.84/ml-lpt.tgz) = 2f60e1467a69fd4fb5501354244337926bc2a65225dde328f6aa3883b14fb3a5 +SIZE (smlnj/110.84/ml-lpt.tgz) = 267076 +SHA256 (smlnj/110.84/ml-yacc.tgz) = cfebaeb5f08810fcc93c49bf171834b7bf14b5f7e76d206e0afa35e18887bdb9 +SIZE (smlnj/110.84/ml-yacc.tgz) = 101692 +SHA256 (smlnj/110.84/nlffi.tgz) = 8b96a82a3d63b000b70a1b982aab9750ce9caa77f316f6a923969e86b0133f31 +SIZE (smlnj/110.84/nlffi.tgz) = 75036 +SHA256 (smlnj/110.84/old-basis.tgz) = cf15fe5c242f19f0605cd38a7bef3c1ebc89d5204c4cf68fac479198dd9fed93 +SIZE (smlnj/110.84/old-basis.tgz) = 1080 +SHA256 (smlnj/110.84/pgraph.tgz) = aa2f14de13a540dbc370b45757156c0b03516a5b8f97b5759292841d7b7ac1cb +SIZE (smlnj/110.84/pgraph.tgz) = 5432 +SHA256 (smlnj/110.84/runtime.tgz) = 5fcf4bbdeaddb247f69a333d2295f5f5c0be55b1f86ff4fbffb63f0021d84d6c +SIZE (smlnj/110.84/runtime.tgz) = 355339 +SHA256 (smlnj/110.84/smlnj-c.tgz) = 145a513becb4c98991af7eae81ae19b8fff336458f1f011eafdc283cb76deee9 +SIZE (smlnj/110.84/smlnj-c.tgz) = 10623 +SHA256 (smlnj/110.84/smlnj-lib.tgz) = 3356924655277416d8a491c1d601a0f567ab3d15cb17e243620e85cb28f0e9dd +SIZE (smlnj/110.84/smlnj-lib.tgz) = 456254 +SHA256 (smlnj/110.84/system.tgz) = f46b1de790000a98f4aa9830325d39cb1e4867338d4db6b8a102084db1512218 +SIZE (smlnj/110.84/system.tgz) = 261237 +SHA256 (smlnj/110.84/trace-debug-profile.tgz) = ecc54281b8654c75f8b9d4ebdf1ff67de71ef31297cf1b14115cd75645e46a5a +SIZE (smlnj/110.84/trace-debug-profile.tgz) = 3939 Added: head/lang/smlnj/files/do-patch-asdl_configure ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-asdl_configure Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,9 @@ ++++ asdl/configure 2018-12-17 15:01:00.142964000 +0100 +@@ -4893,6 +4893,7 @@ + sparc:solaris2*) SMLNJ_ARCH=sparc; SMLNJ_OPSYS=sunos;; + sparc:solaris3*) SMLNJ_ARCH=sparc; SMLNJ_OPSYS=solaris;; + x86_64:linux*) SMLNJ_ARCH=x86; SMLNJ_OPSYS=linux;; ++ x86_64:freebsd*) SMLNJ_ARCH=x86; SMLNJ_OPSYS=freebsd;; + x86_64:darwin*) SMLNJ_ARCH=x86; SMLNJ_OPSYS=darwin;; + *) + as_fn_error $? "unsupported configuration ${host_cpu}-${host_os}" "$LINENO" 5 ;; Added: head/lang/smlnj/files/do-patch-asdl_src_asdlgen_Makefile.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-asdl_src_asdlgen_Makefile.in Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,42 @@ +--- asdl/src/asdlgen/Makefile.in.orig 2018-08-28 17:36:58.000000000 +0200 ++++ asdl/src/asdlgen/Makefile.in 2018-12-17 21:42:50.793253000 +0100 +@@ -54,8 +54,10 @@ + + CODE_FRAG_DIRS = back-end/sml + +-CODE_FRAG_FILES = $(patsubst %,%/fragments.sml,$(CODE_FRAG_DIRS)) +-CODE_FRAG_MKFILES = $(patsubst %,%/fragments.gmk,$(CODE_FRAG_DIRS)) ++#CODE_FRAG_FILES = $(patsubst %,%/fragments.sml,$(CODE_FRAG_DIRS)) ++#CODE_FRAG_MKFILES = $(patsubst %,%/fragments.gmk,$(CODE_FRAG_DIRS)) ++CODE_FRAG_FILES = ${CODE_FRAG_DIRS:C/(.+)/\1\/fragments.sml/} ++CODE_FRAG_MKFILES = ${CODE_FRAG_DIRS:C/(.+)/\1\/fragments.gmk/} + + SRCDIR = @ASDLGEN_SRCDIR@ + +@@ -94,14 +96,18 @@ + touch .depend + $(ML_MAKEDEPEND) $(ML_MAKEDEPEND_FLAGS) -n -f .depend $(ROOT_CM) $(HEAP) || rm -f .depend + +-ifneq ($(MAKECMDGOALS),clean) +-ifneq ($(MAKECMDGOALS),devclean) +-ifneq ($(MAKECMDGOALS),distclean) +-sinclude .depend +-sinclude back-end/sml/fragments.gmk +-endif +-endif +-endif ++.ifmake ! ( clean || devclean || distclean ) ++.sinclude ".depend" ++.sinclude "back-end/sml/fragments.gmk" ++.endif ++#ifneq ($(MAKECMDGOALS),clean) ++#ifneq ($(MAKECMDGOALS),devclean) ++#ifneq ($(MAKECMDGOALS),distclean) ++#sinclude .depend ++#sinclude back-end/sml/fragments.gmk ++#endif ++#endif ++#endif + + #################### Cleanup #################### + Added: head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_ml.lex ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_ml.lex Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,10 @@ +--- base/compiler/Parse/lex/ml.lex.orig 2018-05-28 19:11:09.000000000 +0200 ++++ base/compiler/Parse/lex/ml.lex 2018-07-27 17:27:36.367358000 +0200 +@@ -66,7 +66,7 @@ + real=(~?)(({num}{frac}?{exp})|({num}{frac}{exp}?)); + xdigit=[0-9a-fA-F]; + hexnum={xdigit}+; +-bad_escape="\\"[\000-\008\011\012\014-\031 !#$%&'()*+,\-./:;<=>?@A-Z\[\]_`c-eg-mo-qsuw-z{}|~\127]; ++bad_escape=\\(]|[-\000-\008\011\012\014-\031 !#$%&'()*+,./:;<=>?@A-Z\[_`c-eg-mo-qsuw-z{}|~\127]); + + %% Added: head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_sml.lex ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-base_compiler_Parse_lex_sml.lex Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,11 @@ +--- base/compiler/Parse/lex/sml.lex.orig 2018-05-28 19:11:09.000000000 +0200 ++++ base/compiler/Parse/lex/sml.lex 2018-07-27 17:58:18.054955000 +0200 +@@ -114,7 +114,7 @@ + frac="."{num}; + exp=[eE](~?){num}; + real=(~?)(({num}{frac}?{exp})|({num}{frac}{exp}?)); +-bad_escape="\\"[\000-\008\011\012\014-\031 !#$%&'()*+,\-./:;<=>?@A-Z\[\]_`c-eg-mo-qsuw-z{}|~\127]; ++bad_escape=\\(]|[-\000-\008\011\012\014-\031 !#$%&'()*+,./:;<=>?@A-Z\[_`c-eg-mo-qsuw-z{}|~\127]); + + %% + Modified: head/lang/smlnj/files/do-patch-base_runtime_mach-dep_signal-sysdep.h ============================================================================== --- head/lang/smlnj/files/do-patch-base_runtime_mach-dep_signal-sysdep.h Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/do-patch-base_runtime_mach-dep_signal-sysdep.h Mon Dec 31 18:32:59 2018 (r488815) @@ -1,8 +1,19 @@ ---- base/runtime/mach-dep/signal-sysdep.h.orig 2018-03-16 11:21:38.240870000 -0700 -+++ base/runtime/mach-dep/signal-sysdep.h 2018-03-16 11:22:06.398280000 -0700 -@@ -447,8 +447,8 @@ extern void SetFSR(); +--- base/runtime/mach-dep/signal-sysdep.h.orig 2017-08-27 15:28:34.000000000 +0200 ++++ base/runtime/mach-dep/signal-sysdep.h 2018-03-17 18:49:11.672602000 +0100 +@@ -447,8 +447,8 @@ # elif defined(OPSYS_FREEBSD) /** x86, FreeBSD **/ + # define SIG_FAULT1 SIGFPE +-# define INT_DIVZERO(s, c) (((s) == SIGFPE) && ((c) == FPE_INTDIV_TRAP)) +-# define INT_OVFLW(s, c) (((s) == SIGFPE) && ((c) == FPE_INTOVF_TRAP)) ++# define INT_DIVZERO(s, c) (((s) == SIGFPE) && ((c) == FPE_INTDIV)) ++# define INT_OVFLW(s, c) (((s) == SIGFPE) && ((c) == FPE_INTOVF)) + + # define SIG_GetCode(info, scp) (info) + # define SIG_GetPC(scp) ((scp)->sc_pc) +@@ -568,8 +568,8 @@ + # elif defined(OPSYS_FREEBSD) + /** amd64, FreeBSD **/ # define SIG_FAULT1 SIGFPE -# define INT_DIVZERO(s, c) (((s) == SIGFPE) && ((c) == FPE_INTDIV_TRAP)) -# define INT_OVFLW(s, c) (((s) == SIGFPE) && ((c) == FPE_INTOVF_TRAP)) Modified: head/lang/smlnj/files/do-patch-base_runtime_objs_makefile ============================================================================== --- head/lang/smlnj/files/do-patch-base_runtime_objs_makefile Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/do-patch-base_runtime_objs_makefile Mon Dec 31 18:32:59 2018 (r488815) @@ -1,6 +1,6 @@ --- base/runtime/objs/makefile.orig 2012-04-18 02:28:08.000000000 +0200 -+++ base/runtime/objs/makefile 2014-06-30 20:25:38.000000000 +0200 -@@ -5,10 +5,10 @@ ++++ base/runtime/objs/makefile 2018-12-20 21:57:09.499392000 +0100 +@@ -5,10 +5,11 @@ SHELL = /bin/sh MAKE = make @@ -11,10 +11,11 @@ LD_LIBS = -AS = as +AS ?= as ++ASFLAGS ?= AR = ar ARFLAGS = rcv RANLIB = ranlib -@@ -38,7 +38,7 @@ +@@ -38,7 +39,7 @@ CLIB_DIR = $(ROOT_DIR)/c-libs CONFIG_DIR = $(ROOT_DIR)/config @@ -23,7 +24,25 @@ INCLUDES = -I$(OBJS_DIR) -I$(INC_DIR) GC_INCLUDES = $(INCLUDES) -I$(GC_DIR) -@@ -329,7 +329,7 @@ +@@ -275,7 +276,7 @@ + $(INC_DIR)/asm-base.h \ + mlstate-offsets.h + $(CPP) -D_ASM_ $(DEFS) -I$(BC_DIR) $(INCLUDES) $(MACH_DIR)/$(TARGET).prim.asm > prim.s +- $(AS) -o prim.o prim.s ++ $(AS) ${ASFLAGS} -o prim.o prim.s + + $(MACH_DIR)/BYTECODE.prim.asm: bc-instr-def.h $(BC_DIR)/bc-instrs.h $(BC_DIR)/bc.h + +@@ -317,7 +318,7 @@ + primops.o: $(BC_DIR)/primops.asm \ + $(INC_DIR)/asm-base.h + $(CPP) -D_ASM_ $(DEFS) $(INCLUDES) $(BC_DIR)/primops.asm > primops.s +- $(AS) -o primops.o primops.s ++ $(AS) $(ASFLAGS) -o primops.o primops.s + + bc-instr-def.h: gen-bc-instr-def \ + $(BC_DIR)/bc.h $(BC_DIR)/print-bc.h +@@ -329,7 +330,7 @@ # MK_ARGS = VERSION="$(VERSION)" \ MAKE="$(MAKE)" \ @@ -32,7 +51,7 @@ AR="$(AR)" ARFLAGS="$(ARFLAGS)" \ RANLIB="$(RANLIB)" \ INCLUDES="$(GC_INCLUDES) -I../bytecode" -@@ -420,7 +420,7 @@ +@@ -420,7 +421,7 @@ # LIB_MK_ARGS = VERSION="$(VERSION)" \ MAKE="$(MAKE)" \ Modified: head/lang/smlnj/files/do-patch-base_runtime_objs_mk.x86-freebsd ============================================================================== --- head/lang/smlnj/files/do-patch-base_runtime_objs_mk.x86-freebsd Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/do-patch-base_runtime_objs_mk.x86-freebsd Mon Dec 31 18:32:59 2018 (r488815) @@ -1,5 +1,5 @@ ---- base/runtime/objs/mk.x86-freebsd.orig 2006-04-20 15:28:53 UTC -+++ base/runtime/objs/mk.x86-freebsd +--- base/runtime/objs/mk.x86-freebsd.orig 2006-04-20 17:28:53.000000000 +0200 ++++ base/runtime/objs/mk.x86-freebsd 2018-12-20 21:55:00.154477000 +0100 @@ -5,19 +5,19 @@ SHELL = /bin/sh @@ -13,7 +13,7 @@ -CPP = gcc -x assembler-with-cpp -E -P +CC ?= gcc -ansi +CFLAGS ?= -O2 -+CPP = ${CC} -x assembler-with-cpp -E -P ++CPP = $(CC) -x assembler-with-cpp -E -P #CPP = /usr/bin/cpp -P XOBJS = @@ -25,13 +25,13 @@ TARGET = X86 VERSION = v-x86-freebsd RUNTIME = run.x86-freebsd -@@ -25,6 +25,6 @@ RUNTIME_SO = run.x86-freebsd.so +@@ -25,6 +25,6 @@ RUNTIME_A = run.x86-freebsd.a all: - ($(MAKE) RUNTIME="$(RUNTIME)" VERSION="$(VERSION)" MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" $(RUNTIME)) - ($(MAKE) RUNTIME="$(RUNTIME_SO)" VERSION="$(VERSION)" MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="-shared" $(RUNTIME_SO)) - ($(MAKE) RUNTIME_A="$(RUNTIME_A)" VERSION="$(VERSION)" MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="" $(RUNTIME_A)) -+ ($(MAKE) RUNTIME="$(RUNTIME)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="$(LDFLAGS)" $(RUNTIME)) -+ ($(MAKE) RUNTIME="$(RUNTIME_SO)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="-shared $(LDFLAGS)" $(RUNTIME_SO)) -+ ($(MAKE) RUNTIME_A="$(RUNTIME_A)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="$(LDFLAGS)" $(RUNTIME_A)) ++ ($(MAKE) RUNTIME="$(RUNTIME)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" ASFLAGS="$(ASFLAGS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="$(LDFLAGS)" $(RUNTIME)) ++ ($(MAKE) RUNTIME="$(RUNTIME_SO)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" ASFLAGS="$(ASFLAGS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="-shared $(LDFLAGS)" $(RUNTIME_SO)) ++ ($(MAKE) RUNTIME_A="$(RUNTIME_A)" VERSION="$(VERSION)" MAKE="$(MAKE)" AS="$(AS)" ASFLAGS="$(ASFLAGS)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" LDFLAGS="$(LDFLAGS)" $(RUNTIME_A)) Added: head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-parser.sml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-parser.sml Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,102 @@ +--- smlnj-lib/JSON/json-parser.sml.orig 2011-05-10 20:58:08.000000000 +0200 ++++ smlnj-lib/JSON/json-parser.sml 2017-10-03 22:49:26.569924000 +0200 +@@ -22,6 +22,26 @@ + msg, ", found '", JSONTokens.toString tok, "'" + ]) + val lexer = Lex.lex srcMap ++ fun parse_sequence (is_tok_end, parse_item) (strm : Lex.strm, itms) = let ++ fun is_tok_sep tok = case tok of T.COMMA => true | _ => false ++ val (tok, pos, strm') = lexer strm ++ in if is_tok_sep tok ++ then error (pos, "parsing sequence", tok) ++ else if is_tok_end tok ++ then (strm', itms) ++ else let val (strm'', itm) = parse_item strm ++ val (tok', pos', strm''') = lexer strm'' ++ in if is_tok_end tok' ++ then (strm''', itm :: itms) ++ else if is_tok_sep tok' ++ then let val (tok'', pos'', _) = lexer strm''' ++ in if is_tok_end tok'' ++ then error (pos'', "parsing sequence", tok'') ++ else parse_sequence (is_tok_end, parse_item) (strm''', itm :: itms) ++ end ++ else error (pos', "parsing sequence", tok') ++ end ++ end + fun parseValue (strm : Lex.strm) = let + val (tok, pos, strm) = lexer strm + in +@@ -37,50 +57,29 @@ + | _ => error (pos, "parsing value", tok) + (* end case *) + end +- and parseArray (strm : Lex.strm) = (case lexer strm +- of (T.RB, _, strm) => (strm, J.ARRAY[]) +- | _ => let +- fun loop (strm, items) = let +- val (strm, v) = parseValue strm +- (* expect either a "," or a "]" *) +- val (tok, pos, strm) = lexer strm +- in +- case tok +- of T.RB => (strm, v::items) +- | T.COMMA => loop (strm, v::items) +- | _ => error (pos, "parsing array", tok) +- (* end case *) +- end +- val (strm, items) = loop (strm, []) +- in +- (strm, J.ARRAY(List.rev items)) +- end +- (* end case *)) ++ and parseArray (strm : Lex.strm) = let ++ fun is_RB tok = case tok of T.RB => true | _ => false ++ val (strm', elmnts) = parse_sequence (is_RB, parseValue) (strm, []) ++ in (strm', J.ARRAY(List.rev elmnts)) ++ end + and parseObject (strm : Lex.strm) = let +- fun parseField strm = (case lexer strm +- of (T.STRING s, pos, strm) => (case lexer strm +- of (T.COLON, _, strm) => let +- val (strm, v) = parseValue strm +- in +- SOME(strm, (s, v)) +- end +- | (tok, pos, _) => error (pos, "parsing field", tok) +- (* end case *)) +- | _ => NONE +- (* end case *)) +- fun loop (strm, flds) = (case parseField strm +- of SOME(strm, fld) => ( +- (* expect either "," or "}" *) +- case lexer strm +- of (T.RCB, pos, strm) => (strm, fld::flds) +- | (T.COMMA, pos, strm) => loop (strm, fld::flds) +- | (tok, pos, _) => error (pos, "parsing object", tok) +- (* end case *)) +- | NONE => (strm, flds) +- (* end case *)) +- val (strm, flds) = loop (strm, []) +- in +- (strm, J.OBJECT(List.rev flds)) ++ fun is_RCB tok = case tok of T.RCB => true | _ => false ++ fun parse_field strm = let ++ val (tok, pos, strm') = lexer strm ++ in case tok ++ of T.STRING s => ++ (case lexer strm' ++ of (T.COLON, _, strm'') => let ++ val (strm''', v) = parseValue strm'' ++ in (strm''', (s, v)) ++ end ++ | (tok', pos', _) => error (pos', "parsing field", tok') ++ (* end case *)) ++ | _ => error (pos, "parsing field", tok) ++ (* end case *) ++ end ++ val (strm', flds) = parse_sequence (is_RCB, parse_field) (strm, []) ++ in (strm', J.OBJECT(List.rev flds)) + end + in + #2 (parseValue (Lex.streamifyInstream inStrm)) Added: head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-stream-printer.sml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-stream-printer.sml Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,25 @@ +--- smlnj-lib/JSON/json-stream-printer.sml.orig 2017-07-14 22:32:40.000000000 +0200 ++++ smlnj-lib/JSON/json-stream-printer.sml 2017-10-25 20:33:53.541874000 +0200 +@@ -103,14 +103,14 @@ + fun tr (i, chrs) = (case getWChar i + of SOME(wchr, i) => if (wchr <= 0w126) + then (case UTF8.toAscii wchr +- of #"\"" => "\\\"" +- | #"\\" => "\\\\" +- | #"/" => "\\/" +- | #"\b" => "\\b" +- | #"\f" => "\\f" +- | #"\n" => "\\n" +- | #"\r" => "\\r" +- | #"\t" => "\\t" ++ of #"\"" => tr(i, "\\\"" :: chrs) ++ | #"\\" => tr(i, "\\\\" :: chrs) ++ | #"/" => tr(i, "\\/" :: chrs) ++ | #"\b" => tr(i, "\\b" :: chrs) ++ | #"\f" => tr(i, "\\f" :: chrs) ++ | #"\n" => tr(i, "\\n" :: chrs) ++ | #"\r" => tr(i, "\\r" :: chrs) ++ | #"\t" => tr(i, "\\t" :: chrs) + | c => if (wchr < 0w32) + then tr(i, F.format "\\u%04x" [F.WORD wchr] :: chrs) + else tr(i, str c :: chrs) Added: head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-util.sml ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/do-patch-smlnj-lib_JSON_json-util.sml Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,29 @@ +--- smlnj-lib/JSON/json-util.sml.orig 2017-04-29 17:39:27.000000000 +0200 ++++ smlnj-lib/JSON/json-util.sml 2017-10-04 00:40:39.574909000 +0200 +@@ -133,7 +133,7 @@ + + fun lookupField (v as J.OBJECT fields) = let + fun find lab = (case List.find (fn (l, v) => (l = lab)) fields +- of NONE => raise FieldNotFound(v, concat["no definition for field \"", lab, "\""]) ++ of NONE => raise FieldNotFound(v, lab) + | SOME(_, v) => v + (* end case *)) + in +@@ -197,7 +197,7 @@ + fun get (v, []) = v + | get (v as J.OBJECT fields, SEL lab :: rest) = + (case List.find (fn (l, v) => (l = lab)) fields +- of NONE => raise raise FieldNotFound(v, concat["no definition for field \"", lab, "\""]) ++ of NONE => raise FieldNotFound(v, lab) + | SOME(_, v) => get (v, rest) + (* end case *)) + | get (v, SEL _ :: _) = raise NotObject v +@@ -222,7 +222,7 @@ + (* follow a path into a JSON value while constructing a zipper *) + fun unzip (v, []) = (ZNIL, v) + | unzip (v as J.OBJECT fields, SEL lab :: rest) = let +- fun find (_, []) = raise FieldNotFound(v, concat["no definition for field \"", lab, "\""]) ++ fun find (_, []) = raise FieldNotFound(v, lab) + | find (pre, (l, v)::flds) = if (l = lab) + then let + val (zipper, v) = unzip (v, rest) Modified: head/lang/smlnj/files/patch-config___arch-n-opsys ============================================================================== --- head/lang/smlnj/files/patch-config___arch-n-opsys Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/patch-config___arch-n-opsys Mon Dec 31 18:32:59 2018 (r488815) @@ -1,6 +1,6 @@ ---- config/_arch-n-opsys.orig 2014-08-22 15:20:03.000000000 +0200 -+++ config/_arch-n-opsys 2014-08-23 14:19:47.056122710 +0200 -@@ -85,6 +85,8 @@ +--- config/_arch-n-opsys.orig 2018-06-22 14:49:01 UTC ++++ config/_arch-n-opsys +@@ -91,6 +91,8 @@ case `uname -s` in HEAP_OPSYS=bsd case `uname -m` in *86) ARCH=x86;; Modified: head/lang/smlnj/files/patch-config___heap2exec ============================================================================== --- head/lang/smlnj/files/patch-config___heap2exec Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/patch-config___heap2exec Mon Dec 31 18:32:59 2018 (r488815) @@ -1,6 +1,6 @@ ---- config/_heap2exec.orig 2006-04-20 17:28:53.000000000 +0200 -+++ config/_heap2exec 2013-06-14 22:18:55.050990989 +0200 -@@ -83,6 +83,7 @@ +--- config/_heap2exec.orig 2006-04-20 15:28:53 UTC ++++ config/_heap2exec +@@ -83,6 +83,7 @@ SO_LIBS= A_PROG= A_FLAGS= A_LIBS= @@ -8,7 +8,7 @@ case ${OPSYS} in darwin) -@@ -96,6 +97,13 @@ +@@ -96,6 +97,13 @@ case ${OPSYS} in A_PROG=${CC} A_FLAGS=-Wl,--export-dynamic A_LIBS=-lm @@ -22,7 +22,7 @@ ;; linux) SO_PROG=${CC} -@@ -116,7 +124,7 @@ +@@ -116,7 +124,7 @@ fi RESULT=0 if ${H2A} "$heapfile" "$execfile".s ; then if [ -f "$execfile".s ] ; then Modified: head/lang/smlnj/files/patch-config_install.sh ============================================================================== --- head/lang/smlnj/files/patch-config_install.sh Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/files/patch-config_install.sh Mon Dec 31 18:32:59 2018 (r488815) @@ -1,4 +1,4 @@ ---- config/install.sh.orig 2014-08-22 13:20:03 UTC +--- config/install.sh.orig 2018-08-28 15:30:41 UTC +++ config/install.sh @@ -17,6 +17,8 @@ else nolib=false @@ -68,7 +68,7 @@ # # the release version that we are installing # -@@ -326,7 +371,12 @@ fi +@@ -344,7 +389,12 @@ fi # the name of the bin files directory # BOOT_ARCHIVE=boot.$ARCH-unix @@ -82,7 +82,7 @@ # # build the run-time system -@@ -335,9 +385,15 @@ if [ -x "$RUNDIR"/run.$ARCH-$OPSYS ]; then +@@ -353,9 +403,15 @@ if [ -x "$RUNDIR"/run.$ARCH-$OPSYS ]; then vsay $this: Run-time system already exists. else "$CONFIGDIR"/unpack "$ROOT" runtime @@ -94,12 +94,12 @@ cd "$BASEDIR"/runtime/objs echo $this: Compiling the run-time system. - $MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS -+ echo "$MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS AS=\""$AS\"" CFLAGS=\"$CFLAGS\" LDFLAGS=\"$LDFLAGS\"" -+ $MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS AS="$AS" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" ++ echo "$MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS AS=\"$AS\" ASFLAGS=\"$ASFLAGS\" CFLAGS=\"$CFLAGS\" LDFLAGS=\"$LDFLAGS\"" ++ $MAKE -f mk.$ARCH-$OPSYS $EXTRA_DEFS AS="$AS" ASFLAGS="$ASFLAGS" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" if [ -x run.$ARCH-$OPSYS ]; then mv run.$ARCH-$OPSYS "$RUNDIR" if [ -f runx.$ARCH-$OPSYS ]; then -@@ -349,7 +405,7 @@ else +@@ -367,7 +423,7 @@ else if [ -f run.$ARCH-$OPSYS.a ]; then mv run.$ARCH-$OPSYS.a "$RUNDIR" fi @@ -108,7 +108,7 @@ else complain "$this: !!! Run-time system build failed for some reason." fi -@@ -375,7 +431,7 @@ if [ -r "$HEAPDIR"/sml.$HEAP_SUFFIX ]; then +@@ -393,7 +449,7 @@ if [ -r "$HEAPDIR"/sml.$HEAP_SUFFIX ]; then complain "$this !!! Unable to re-create heap image (sml.$HEAP_SUFFIX)." fi else @@ -117,7 +117,7 @@ fish "$ROOT"/"$BOOT_FILES"/smlnj/basis -@@ -410,7 +466,7 @@ else +@@ -428,7 +484,7 @@ else cd "$ROOT"/"$BOOT_FILES" for anchor in * ; do if [ -d $anchor ] ; then @@ -126,7 +126,7 @@ move $anchor "$LIBDIR"/$anchor fi done -@@ -433,6 +489,18 @@ installdriver _ml-build ml-build +@@ -451,6 +507,18 @@ installdriver _ml-build ml-build cd "$ROOT" @@ -145,7 +145,7 @@ # # Now do all the rest using the precompiled installer # (see base/system/smlnj/installer for details) -@@ -442,6 +510,12 @@ if [ $nolib = false ] ; then +@@ -460,6 +528,12 @@ if [ $nolib = false ] ; then export ROOT INSTALLDIR CONFIGDIR BINDIR CM_TOLERATE_TOOL_FAILURES=true export CM_TOLERATE_TOOL_FAILURES @@ -158,7 +158,7 @@ if "$BINDIR"/sml -m \$smlnj/installer.cm then vsay $this: Installation complete. -@@ -449,5 +523,20 @@ if [ $nolib = false ] ; then +@@ -467,5 +541,20 @@ if [ $nolib = false ] ; then complain "$this: !!! Installation of libraries and programs failed." fi fi Added: head/lang/smlnj/files/patch-config_unpack ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/smlnj/files/patch-config_unpack Mon Dec 31 18:32:59 2018 (r488815) @@ -0,0 +1,12 @@ +--- config/unpack.orig 2016-08-04 14:38:24 UTC ++++ config/unpack +@@ -291,6 +291,9 @@ do + # cd $ROOT/doc + # build $ROOT + ;; ++ asdl) ++ unpack "Abstract Syntax Description Library" "$ROOT" asdl asdl ++ ;; + *) + echo Unknown package: ${i}. + echo Trying default method... Modified: head/lang/smlnj/pkg-plist ============================================================================== --- head/lang/smlnj/pkg-plist Mon Dec 31 18:31:27 2018 (r488814) +++ head/lang/smlnj/pkg-plist Mon Dec 31 18:32:59 2018 (r488815) @@ -5,6 +5,7 @@ man/man1/ml-ulex.1.gz man/man1/sml.1.gz man/man7/smlnj.7.gz smlnj/bin/.arch-n-opsys +smlnj/bin/.heap/asdlgen.%%MLARCH%%-bsd smlnj/bin/.heap/heap2asm.%%MLARCH%%-bsd smlnj/bin/.heap/ml-antlr.%%MLARCH%%-bsd smlnj/bin/.heap/ml-burg.%%MLARCH%%-bsd @@ -19,6 +20,7 @@ smlnj/bin/.run/run.%%MLARCH%%-freebsd smlnj/bin/.run/run.%%MLARCH%%-freebsd.a smlnj/bin/.run/run.%%MLARCH%%-freebsd.so smlnj/bin/.run-sml +smlnj/bin/asdlgen smlnj/bin/heap2asm smlnj/bin/heap2exec smlnj/bin/ml-antlr @@ -31,6 +33,7 @@ smlnj/bin/ml-ulex smlnj/bin/ml-yacc %%EVERYTHING%%smlnj/bin/nowhere smlnj/bin/sml +smlnj/lib/SMLNJ-BASIS/.cm/%%MLARCH%%-unix/basis-common.cm smlnj/lib/SMLNJ-BASIS/.cm/%%MLARCH%%-unix/basis.cm smlnj/lib/SMLNJ-LIB/Controls/.cm/%%MLARCH%%-unix/controls-lib.cm smlnj/lib/SMLNJ-LIB/HTML/.cm/%%MLARCH%%-unix/html-lib.cm @@ -59,6 +62,10 @@ smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/RA.cm smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/SPARC.cm smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/StagedAlloc.cm smlnj/lib/SMLNJ-MLRISC/.cm/%%MLARCH%%-unix/Visual.cm +%%EVERYTHING%%smlnj/lib/basis-2004.cm/.cm/%%MLARCH%%-unix/basis-2004.cm +smlnj/lib/asdl-ext.cm/.cm/%%MLARCH%%-unix/asdl-ext.cm +smlnj/lib/asdl-lib.cm/.cm/%%MLARCH%%-unix/asdl-lib.cm +smlnj/lib/asdlgen-tool.cm/.cm/%%MLARCH%%-unix/asdlgen-tool.cm 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 @@ -75,6 +82,7 @@ smlnj/lib/cml/.cm/%%MLARCH%%-unix/trace-cml.cm smlnj/lib/cml/.cm/%%MLARCH%%-unix/unix-lib.cm smlnj/lib/cml-lib/.cm/%%MLARCH%%-unix/smlnj-lib.cm smlnj/lib/cml-lib/.cm/%%MLARCH%%-unix/trace-cml.cm +smlnj/lib/compiler/MiscUtil/const-arith/.cm/%%MLARCH%%-unix/sources.cm smlnj/lib/dir-tool.cm/.cm/%%MLARCH%%-unix/dir-tool.cm %%EVERYTHING%%smlnj/lib/eXene.cm/.cm/%%MLARCH%%-unix/eXene.cm smlnj/lib/grm-ext.cm/.cm/%%MLARCH%%-unix/grm-ext.cm @@ -115,7 +123,6 @@ 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 smlnj/lib/smlnj/MLRISC/.cm/%%MLARCH%%-unix/Graphs.cm smlnj/lib/smlnj/MLRISC/.cm/%%MLARCH%%-unix/HPPA.cm @@ -130,7 +137,6 @@ smlnj/lib/smlnj/basis/.cm/%%MLARCH%%-unix/basis.cm smlnj/lib/smlnj/cm/.cm/%%MLARCH%%-unix/cm.cm smlnj/lib/smlnj/cm/.cm/%%MLARCH%%-unix/tools.cm smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/alpha32-unix.cm -smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/amd64-unix.cm smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/current.cm smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/hppa-unix.cm smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/ppc-macos.cm @@ -140,7 +146,6 @@ smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/x86-unix.cm smlnj/lib/smlnj/cmb/.cm/%%MLARCH%%-unix/x86-win32.cm smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/all.cm smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/alpha32.cm -smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/amd64.cm smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/compiler.cm smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/current.cm smlnj/lib/smlnj/compiler/.cm/%%MLARCH%%-unix/hppa.cm @@ -163,7 +168,6 @@ smlnj/lib/smlnj/smlnj-lib/.cm/%%MLARCH%%-unix/html-lib *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201812311833.wBVIX0U8017535>