Johannes 5 2024-12-30 14:39:44 +01:00 committed by Zsolt Udvari
parent 5022036b0f
commit e7fb3d8cf5
15 changed files with 187 additions and 213 deletions

View file

@ -1,11 +1,10 @@
PORTNAME= smlnj
PORTVERSION= 110.98
PORTREVISION= 1
DISTVERSION= 110.99.6.1
CATEGORIES= lang
MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/ \
ftp://mirror.free.de/http/smlnj.cs.uchicago.edu/dist/working/${PORTVERSION}/
MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${DISTVERSION}/ \
ftp://mirror.free.de/http/smlnj.cs.uchicago.edu/dist/working/${DISTVERSION}/
DISTFILES= config.tgz runtime.tgz
DIST_SUBDIR= smlnj/${PORTVERSION}
DIST_SUBDIR= smlnj/${DISTVERSION}
EXTRACT_ONLY= config.tgz
MAINTAINER= joemann@beefree.free.de
@ -20,7 +19,7 @@ LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
ONLY_FOR_ARCHS= amd64 i386
USES= compiler
USES= compiler python:env shebangfix
SUB_FILES= pkg-install
SUB_LIST= EXEBINDIR=${MLBINRELATIVE} EXENAMES="${MLEXE}"
@ -34,11 +33,13 @@ OPTIONS_DEFINE= EVERYTHING RECOMPILE
EVERYTHING_DESC= install everything from the SML/NJ distribution
RECOMPILE_DESC= recompile the SML compiler - implies EVERYTHING
EVERYTHING_PLIST_SUB= EVERYTHING=""
EVERYTHING_PLIST_SUB_OFF= EVERYTHING="@comment "
RECOMPILE_IMPLIES= EVERYTHING
.include <bsd.port.pre.mk>
.if ${COMPILER_TYPE} == "clang"
.if ${COMPILER_TYPE} == "clang" && ${ARCH} == "amd64"
RUNTIME_SO=
PLIST_SUB+= RUNTIME_SO="@comment "
.else
@ -50,11 +51,11 @@ PLIST_SUB+= RUNTIME_SO=
CFLAGS+= -Wno-error=incompatible-function-pointer-types
.endif
.if (${ARCH} == "i386")
.if ${ARCH} == "i386"
MLARCH= x86
MLSIZE= 32
PLIST_SUB+= MLSIZE32=""
.elif (${ARCH} == "amd64")
.elif ${ARCH} == "amd64"
MLARCH= amd64
MLSIZE= 64
PLIST_SUB+= MLSIZE32="@comment "
@ -65,19 +66,14 @@ CFLAGS+= -fPIC
AS= ${CC} -x assembler -c
ASFLAGS+= -fPIC
DISTFILES+= boot.${MLARCH}-unix.tgz
DISTFILES+= MLRISC.tgz asdl.tgz ckit.tgz cml.tgz doc.tgz heap2asm.tgz \
DISTFILES+= MLRISC.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
# Useful for tuning recompilation.
CMB_COMMAND=
.if ${PORT_OPTIONS:MEVERYTHING}
DISTFILES+= cm.tgz compiler.tgz eXene.tgz \
DISTFILES+= asdl.tgz cm.tgz compiler.tgz eXene.tgz \
pgraph.tgz smlnj-c.tgz system.tgz
PLIST_SUB+= EVERYTHING=""
.else
PLIST_SUB+= EVERYTHING="@comment "
SHEBANG_FILES= smlnj-lib/HTML4/helper.py \
eXene/examples/basicwin/test.sh
.endif
MLROOTRELATIVE= smlnj
@ -85,42 +81,40 @@ MLROOT= ${PREFIX}/${MLROOTRELATIVE}
MLBINRELATIVE= ${MLROOTRELATIVE}/bin
MLBIN= ${MLROOT}/bin
MLLIB= ${MLROOT}/lib
MLSTDSRCDIRS= asdl cml doc heap2asm ml-burg ml-lex ml-lpt ml-yacc \
nlffi smlnj-lib
MLSTDSRCDIRS= cml doc heap2asm ml-burg ml-lex ml-lpt ml-yacc nlffi smlnj-lib
MLSRCDIRS= base ${MLSTDSRCDIRS} \
ckit eXene pgraph smlnj-c
MLSRCS=
.for srcdir in ${MLSRCDIRS}
MLSRCS+= ${MLROOT}/${srcdir}
.endfor
MLTARGETS= heap2asm
MLEXE= asdlgen heap2exec ml-antlr ml-build ml-burg ml-lex \
ml-makedepend ml-ulex ml-yacc sml
MLEXE= heap2exec ml-antlr ml-build ml-burg ml-lex ml-makedepend \
ml-ulex ml-yacc sml
.if defined(MLSIZE) && ${MLSIZE} == 32
MLEXE+= ml-nlffigen
.endif
.if ${PORT_OPTIONS:MEVERYTHING}
MLSTDSRCDIRS+= eXene pgraph smlnj-c
MLTARGETS+= eXene mlrisc-tools nowhere pgraph-util src-smlnj
MLEXE+= nowhere
MLSTDSRCDIRS+= asdl eXene pgraph smlnj-c
MLTARGETS+= asdl eXene mlrisc-tools nowhere pgraph-util src-smlnj
MLEXE+= asdlgen nowhere
PLIST= ${WRKDIR}/.PLIST
MLRUNTIMEPLIST= ${WRKDIR}/.PLIST-runtime
MLSRCPLIST= ${WRKDIR}/.PLIST-src
MLPLISTFILES= ${.CURDIR}/pkg-plist ${MLRUNTIMEPLIST} ${MLSRCPLIST}
.endif
pre-fetch:
# Useful for tuning recompilation.
CMB_COMMAND?=
pre-fetch-EVERYTHING-off:
@${ECHO}
.if ! ${PORT_OPTIONS:MEVERYTHING}
@${ECHO} 'Use port option EVERYTHING to also build/install'
@${ECHO} ' asdl (Abstract Syntax Description Language),'
@${ECHO} ' eXene (X Windows toolkit),'
@${ECHO} ' nowhere (preprocessor for conditional patterns),'
@${ECHO} ' various libraries, and all the sources.'
.endif
.if ! ${PORT_OPTIONS:MRECOMPILE}
pre-fetch-RECOMPILE-off:
@${ECHO}
@${ECHO} 'Use port option RECOMPILE to recompile the compiler.'
@${ECHO} ' This implies EVERYTHING.'
.endif
@${ECHO} ' This implies option EVERYTHING.'
@${ECHO}
# make symlinks to the dist files
@ -134,23 +128,19 @@ post-extract:
# config/actions.
do-configure:
.if defined(MLTARGETS)
${ECHO_CMD} -n > "${WRKDIR}/.tmp.sed"
.for t in ${MLTARGETS}
${ECHO_CMD} '/^#[ ]*request[ ]+${t}$$/s/^#//' >> "${WRKDIR}/.tmp.sed"
.endfor
${SED} -i .default -E -f "${WRKDIR}/.tmp.sed" "${WRKSRC}/config/targets"
.endif
# 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 ${PORT_OPTIONS:MRECOMPILE}
( ${ECHO_CMD} "request ml-yacc" && \
${ECHO_CMD} "request ml-lex" && \
${ECHO_CMD} "request ml-lex-mllex-tool" && \
${ECHO_CMD} "request src-smlnj" ) \
> "${WRKSRC}/config/targets.customized"
.endif
do-configure-RECOMPILE-on:
${CP} "${FILESDIR}/targets-recompile.customized" \
"${WRKSRC}/config/targets.customized"
# The build target patches, builds, and installs the system within WRKDIR.
# base/runtime is not cleaned afterwards to avoid its recompilation during
@ -191,13 +181,15 @@ do-build:
MLSTANDARDPATCHES=`${MLSTANDARDPATCHES_CMD}` \
MLSTANDARDPATCHDIRS=`${MLSTANDARDPATCHDIRS_CMD}` \
MLSOURCEPATCHES=`${MLSOURCEPATCHES_CMD}` \
CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
CC='${CC}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \
./config/install.sh -default ${MLSIZE}
.if ${PORT_OPTIONS:MRECOMPILE}
do-build-RECOMPILE-on:
-${RM} ${WRKSRC}/config/targets.customized
@${ECHO} '(* Recompiling the core system: *)'
cd ${WRKSRC}/${RECOMPILEDIR} && ( \
cd ${WRKSRC}/${RECOMPILEDIR} && \
export PATH="${WRKSRC}/bin:$$PATH" && ( \
${ECHO_CMD} 'CM.autoload "$$smlnj/cmb.cm";' ; \
${ECHO_CMD} ${CMB_COMMAND} ; \
${ECHO_CMD} 'CMB.make ();' ) | \
@ -218,22 +210,37 @@ do-build:
FILESDIR="${FILESDIR}" PATCH="${PATCH}" \
PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \
MLNORUNTIMECLEAN=yes RECOMPILEDIR="${RECOMPILEDIR}" \
CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
CC='${CC}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \
./config/install.sh -default ${MLSIZE}
.endif
.if ${PORT_OPTIONS:MEVERYTHING}
post-build:
${CHMOD} a-x ${WRKSRC}/eXene/examples/basicwin/test.sh \
${WRKSRC}/smlnj-lib/HTML4/helper.py
post-build-EVERYTHING-on:
${MAKE} SHEBANG_FILES="${SHEBANG_FILES}" fix-shebang
@${ECHO} '(* Cleaning asdl: *)'
${FIND} ${WRKSRC}/asdl -type f \
-exec ${GREP} -F -l "${WRKDIR}" {} \; -delete
.endif
# ${PKGINSTALL} contains multiexec-wrapper, which is used to select
# between executables of the same name that have been installed by
# different packages (like smlnj and smlnj-devel). The source of
# multiexec-wrapper is extracted from ${PKGINSTALL}, and inserted
# into ${PKGINSTALL} in compressed and encoded form. So it is still
# available when being installed from a binary package, even if
# ${PKGINSTALL} is no file at that time (but only input to a shell).
pre-install:
@${SED} -e '/^#%%PKG-INSTALL-START%%$$/,/^#%%PKG-INSTALL-END%%$$/d' \
${PKGINSTALL} > ${PKGINSTALL}.script
@${GZIP_CMD} ${PKGINSTALL}.script
@b64encode ${PKGINSTALL}.script.gz script.gz > ${PKGINSTALL}.script.gz.b64
@${SED} -n -e '1,/~EOF~.$$/p' ${PKGINSTALL} > ${PKGINSTALL}.pre
@${SED} -n -e '/^~EOF~$$/,$$p' ${PKGINSTALL} > ${PKGINSTALL}.post
@${CAT} ${PKGINSTALL}.pre ${PKGINSTALL}.script.gz.b64 ${PKGINSTALL}.post > ${PKGINSTALL}.full
@${DIFF} -q ${PKGINSTALL} ${PKGINSTALL}.full >/dev/null || ${CP} ${PKGINSTALL}.full ${PKGINSTALL}
# Nowadays PLIST has to be computed before installation. We do it in
# "pre-install" because source extraction happens during "build".
# "pre-install-EVERYTHING-on" because source extraction happened during
# "build".
.if ${PORT_OPTIONS:MEVERYTHING}
MLNOINSTALL= .cm
@ -241,16 +248,14 @@ MLNOINSTALL= .cm
MLNOINSTALL+= sml.bin.${MLARCH}-unix sml.boot.${MLARCH}-unix \
sml.lib sml.${MLARCH}-bsd
.endif
.for excl in ${MLNOINSTALL}
MLSRCEXCLUDEREGEX+= -e '/${excl}$$' -e '/${excl}/'
.endfor
MLSRCEXCLUDES= ${MLNOINSTALL:@.excl.@--exclude "${.excl.}"@}
MLSRCEXCLUDEREGEX= ${MLNOINSTALL:@.excl.@-e '/${.excl.}$$' -e '/${.excl.}/'@}
MLPATCHPATHREGEX= -E -e 's%(^|[^_])_([^_]|$$)%\1/\2%g' \
-e 's%(^|[^_])__([^_]|$$)%\1_\2%g' \
-e 's%(^|[^_])___([^_]|$$)%\1/_\2%g'
.endif
pre-install:
.if ${PORT_OPTIONS:MEVERYTHING}
pre-install-EVERYTHING-on:
@${ECHO} -n '(* Computing package list ...'
@${TAR} -tzf ${WRKSRC}/runtime.tgz | \
${SED} -E -n -e 's%^(.*[^/])$$%${MLROOTRELATIVE}/base/\1%p' \
@ -278,22 +283,6 @@ pre-install:
@${SED} -e 's/^%%EVERYTHING%%//' ${MLPLISTFILES} | \
${GREP} -h "^@dir" | ${SORT} -r -u >> ${PLIST}
@${ECHO} ' done. *)'
.endif
# ${PKGINSTALL} contains multiexec-wrapper, which is used to select
# between executables of the same name that have been installed by
# different packages (like smlnj and smlnj-devel). The source of
# multiexec-wrapper is extracted from ${PKGINSTALL}, and inserted
# into ${PKGINSTALL} in compressed and encoded form. So it is still
# available when being installed from a binary package, even if
# ${PKGINSTALL} is no file at that time (but only input to a shell).
@${SED} -e '/^#%%PKG-INSTALL-START%%$$/,/^#%%PKG-INSTALL-END%%$$/d' \
${PKGINSTALL} > ${PKGINSTALL}.script
@${GZIP_CMD} ${PKGINSTALL}.script
@b64encode ${PKGINSTALL}.script.gz script.gz > ${PKGINSTALL}.script.gz.b64
@${SED} -n -e '1,/~EOF~.$$/p' ${PKGINSTALL} > ${PKGINSTALL}.pre
@${SED} -n -e '/^~EOF~$$/,$$p' ${PKGINSTALL} > ${PKGINSTALL}.post
@${CAT} ${PKGINSTALL}.pre ${PKGINSTALL}.script.gz.b64 ${PKGINSTALL}.post > ${PKGINSTALL}.full
@${DIFF} -q ${PKGINSTALL} ${PKGINSTALL}.full >/dev/null || ${CP} ${PKGINSTALL}.full ${PKGINSTALL}
# The install target installs the heaps and libraries to their final
# location in ${MLBIN} and ${MLLIB}.
@ -302,21 +291,14 @@ pre-install:
# When staging CM_PATHCONFIG has to point to the final
# ${MLLIB}/pathconfig (in ${PREFIX}) while building the compiler.
.if ${PORT_OPTIONS:MEVERYTHING}
MLSRCEXCLUDES=
.for excl in ${MLNOINSTALL}
MLSRCEXCLUDES+= --exclude "${excl}"
.endfor
.endif
do-install:
${MKDIR} "${STAGEDIR}${MLROOT}"
.if ! ${PORT_OPTIONS:MRECOMPILE}
.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}' \
CC='${CC}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \
./config/install.sh -default ${MLSIZE}
.else
@ -334,7 +316,7 @@ do-install:
FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="-d ${PATCH_WRKSRC} ${PATCH_ARGS}" \
STAGEDIR="${STAGEDIR}" MLLIB="${MLLIB}" \
INSTALLDIR="${STAGEDIR}${MLROOT}" RECOMPILEDIR="${RECOMPILEDIR}" \
CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
CC='${CC}' CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}' \
AS='${AS}' ASFLAGS='${ASFLAGS}' EXTRA_DEFS='${EXTRA_DEFS}' \
./config/install.sh -default ${MLSIZE}
.endif

View file

@ -1,49 +1,49 @@
TIMESTAMP = 1595416789
SHA256 (smlnj/110.98/MLRISC.tgz) = 208fb9c8cbcfc1c90ab14267e28038a390200002e2bcf3ee5670dcb643ceda11
SIZE (smlnj/110.98/MLRISC.tgz) = 1460273
SHA256 (smlnj/110.98/asdl.tgz) = c368bb213caa9b6c198b3cebabad577f3d01a64642046eaf9625ff403c49e59a
SIZE (smlnj/110.98/asdl.tgz) = 212714
SHA256 (smlnj/110.98/boot.amd64-unix.tgz) = 39e460e94063b3c85b944c86d29c91ce3995e6fab242a2f77c71d7b04c8e7a7a
SIZE (smlnj/110.98/boot.amd64-unix.tgz) = 5921092
SHA256 (smlnj/110.98/boot.x86-unix.tgz) = 1451adf5b9230aaf74d1d28438e4f8126dc56f333bb00b0fc52ff1b596a35281
SIZE (smlnj/110.98/boot.x86-unix.tgz) = 5912407
SHA256 (smlnj/110.98/ckit.tgz) = 17c4254b7c1e696591932bc46f1b390c05174b26927fdbab0fa6b0fd9b7baa1a
SIZE (smlnj/110.98/ckit.tgz) = 201005
SHA256 (smlnj/110.98/cm.tgz) = f02776bbe417d48a469abd8d3496ce87e6cd7fd8440101cb23ce3b28b8b0fba3
SIZE (smlnj/110.98/cm.tgz) = 220284
SHA256 (smlnj/110.98/cml.tgz) = 7ba1063146e419e1ecebfd420b45eeb641bb8f79802cfc45a0c7e3958ad59e4f
SIZE (smlnj/110.98/cml.tgz) = 104490
SHA256 (smlnj/110.98/compiler.tgz) = d7a7e6f9e32af242b3a600fd75830b923698db8f4d2318a7cc67512b01663344
SIZE (smlnj/110.98/compiler.tgz) = 1109928
SHA256 (smlnj/110.98/config.tgz) = 2ab4a5dff211d84359a50c5d48d607bd4c4f221fee65ac0bcf982f4508692e11
SIZE (smlnj/110.98/config.tgz) = 517538
SHA256 (smlnj/110.98/doc.tgz) = 74b7461bc7d1043f3ca1ba55bb64cbd6508b2b3e51c06e5b4eb9db819ec5aa34
SIZE (smlnj/110.98/doc.tgz) = 2424911
SHA256 (smlnj/110.98/eXene.tgz) = b48613fe9de6941899d26517cd9c1d4a5779d8a1816ce39d1441481bee8db7e7
SIZE (smlnj/110.98/eXene.tgz) = 721110
SHA256 (smlnj/110.98/heap2asm.tgz) = 6a6b4b33e765c0e5dad52232a544c16f1b632d532e2413c6838160beb610061a
SIZE (smlnj/110.98/heap2asm.tgz) = 1799
SHA256 (smlnj/110.98/ml-burg.tgz) = bd84ce5671fd1b1156f6779f81dfaabf0801e0c3f476f36e2f2fdb4311d496aa
SIZE (smlnj/110.98/ml-burg.tgz) = 40552
SHA256 (smlnj/110.98/ml-lex.tgz) = e47e0144547a04aaa2d4ee63bafb6a40a294e7acc8e072cc9569b9a08942ca86
SIZE (smlnj/110.98/ml-lex.tgz) = 28167
SHA256 (smlnj/110.98/ml-lpt.tgz) = 4055ea0bb388893a58453ff8588e1de72a15be94257715bcd66e7a870c08c3d8
SIZE (smlnj/110.98/ml-lpt.tgz) = 267606
SHA256 (smlnj/110.98/ml-yacc.tgz) = cf2c6cdbfae352585a59214d2e6a377191504334bf4dfc092e3a0e64667124a1
SIZE (smlnj/110.98/ml-yacc.tgz) = 101728
SHA256 (smlnj/110.98/nlffi.tgz) = fb6c671d071c31e50e6792fb015492d8aec6f12b0cea2cd00e0b303c8ce1d98f
SIZE (smlnj/110.98/nlffi.tgz) = 75095
SHA256 (smlnj/110.98/old-basis.tgz) = 2952d96a3f6fc9b63e7fdab998916588490ffb65214adf227cf8c3b737ddb17f
SIZE (smlnj/110.98/old-basis.tgz) = 1215
SHA256 (smlnj/110.98/pgraph.tgz) = 44f65f685627186e0bd334b1ce6d6bf85262673dfa2b8310e213a570c2216ebd
SIZE (smlnj/110.98/pgraph.tgz) = 5432
SHA256 (smlnj/110.98/runtime.tgz) = 36e9fff81baecf8f770efa20b5e56e6f67e71705d8692142d53a590c133183ba
SIZE (smlnj/110.98/runtime.tgz) = 336383
SHA256 (smlnj/110.98/smlnj-c.tgz) = caca7a72cc96f5ef00feaadc1ca1329a9e264c070363d88c22b58f0fd4f46b67
SIZE (smlnj/110.98/smlnj-c.tgz) = 10622
SHA256 (smlnj/110.98/smlnj-lib.tgz) = 63d25c1c38791ae6d8f34cfcff600bc4c4ad6a166adb8af6402105bd98e444ba
SIZE (smlnj/110.98/smlnj-lib.tgz) = 631261
SHA256 (smlnj/110.98/system.tgz) = 555950477c86c0c43b3b6bb7ef907d7690cd214fb19c09a1a735ec9be1dbfa1e
SIZE (smlnj/110.98/system.tgz) = 278110
SHA256 (smlnj/110.98/trace-debug-profile.tgz) = e494dc37e39bcdc1e506d5b3b31422488dfd0400184ca5fb7005438253d7fa17
SIZE (smlnj/110.98/trace-debug-profile.tgz) = 3936
TIMESTAMP = 1734105334
SHA256 (smlnj/110.99.6.1/config.tgz) = f4124fa5aff1a2eaa2de3dfd5ac7f3951cace33d72c5375b62db47179570095c
SIZE (smlnj/110.99.6.1/config.tgz) = 23321
SHA256 (smlnj/110.99.6.1/runtime.tgz) = 2623737ee667a7579640f35905bf523e6417b708249e9a0697edfc8aa514dd6e
SIZE (smlnj/110.99.6.1/runtime.tgz) = 335071
SHA256 (smlnj/110.99.6.1/boot.amd64-unix.tgz) = 91469b2b4dcc7526154568562a5de44b7d92131518a4cdccb4b534982c6189a4
SIZE (smlnj/110.99.6.1/boot.amd64-unix.tgz) = 5994405
SHA256 (smlnj/110.99.6.1/boot.x86-unix.tgz) = db2058d30199f01d63602e68b3d49f1fa78a2685a5438ac0725042dcf9da7287
SIZE (smlnj/110.99.6.1/boot.x86-unix.tgz) = 5946836
SHA256 (smlnj/110.99.6.1/MLRISC.tgz) = 30f369621adbb086d510ecc9ec62044029bfec5fc99f18f45174bb15e4e9fbba
SIZE (smlnj/110.99.6.1/MLRISC.tgz) = 1457420
SHA256 (smlnj/110.99.6.1/ckit.tgz) = be2e9d4992122fe296929a7f8f12cf08d067a3ea9361386f6c4c59e51e4bed67
SIZE (smlnj/110.99.6.1/ckit.tgz) = 200761
SHA256 (smlnj/110.99.6.1/cml.tgz) = e6b673a792148ffc595f47f27a834ca21c93cf589f758e809eefc7834b290d0c
SIZE (smlnj/110.99.6.1/cml.tgz) = 103972
SHA256 (smlnj/110.99.6.1/doc.tgz) = 3e5896c427df2123eb00eed96a7df7ade7052d1986a2a64b2873b34843f43c49
SIZE (smlnj/110.99.6.1/doc.tgz) = 2748425
SHA256 (smlnj/110.99.6.1/heap2asm.tgz) = 38734f304acda0ba58b9ab606e062553f98c078257438680e74599d811edb772
SIZE (smlnj/110.99.6.1/heap2asm.tgz) = 1721
SHA256 (smlnj/110.99.6.1/ml-burg.tgz) = e2bb968468f19f2f7b7940fd1a4e056a4a84673347c09a7bb926bdec44f6d29d
SIZE (smlnj/110.99.6.1/ml-burg.tgz) = 40296
SHA256 (smlnj/110.99.6.1/ml-lex.tgz) = 6703b7c50503683d9fed3b2ba3a9246a14fbbd237526f41b2e4c18fe6ef1488b
SIZE (smlnj/110.99.6.1/ml-lex.tgz) = 28039
SHA256 (smlnj/110.99.6.1/ml-lpt.tgz) = 6916054c4125e2d77b2d0d0b86c5c62ed27fa6dc020d5d66f46783b4cefebe5a
SIZE (smlnj/110.99.6.1/ml-lpt.tgz) = 267376
SHA256 (smlnj/110.99.6.1/ml-yacc.tgz) = 0c1478c662a2480e689fbf980f3ed9afca8103a683d5f4bae3e83af6e912a6b7
SIZE (smlnj/110.99.6.1/ml-yacc.tgz) = 101379
SHA256 (smlnj/110.99.6.1/nlffi.tgz) = 59f6265fb761ac1aad1388ee0d53728ee16db09d47f81eeb258d815c962d28d3
SIZE (smlnj/110.99.6.1/nlffi.tgz) = 74692
SHA256 (smlnj/110.99.6.1/old-basis.tgz) = 23a0c945f231fb4f729c529767addd0d6469bf4a4496359c8806ab2bf12143fb
SIZE (smlnj/110.99.6.1/old-basis.tgz) = 1365
SHA256 (smlnj/110.99.6.1/smlnj-lib.tgz) = d6da79c1a3e5ecc0964b89085059bfc2841e7917c28e4a604b11e919bfb29933
SIZE (smlnj/110.99.6.1/smlnj-lib.tgz) = 666400
SHA256 (smlnj/110.99.6.1/trace-debug-profile.tgz) = 003f4a5acb244648d31588910889b4aa3d36b080471ba1ed04ce7028c06a7976
SIZE (smlnj/110.99.6.1/trace-debug-profile.tgz) = 3892
SHA256 (smlnj/110.99.6.1/asdl.tgz) = 3bafe0db4fe1b0c4c6dc2bcc039f5bb631bee147546c684c1e48b31122890c40
SIZE (smlnj/110.99.6.1/asdl.tgz) = 241731
SHA256 (smlnj/110.99.6.1/cm.tgz) = 03772b0b91165f890407aa25c1d68e6e095082404136a7014828bfa5047959dc
SIZE (smlnj/110.99.6.1/cm.tgz) = 220336
SHA256 (smlnj/110.99.6.1/compiler.tgz) = 713824739a296845ec91dcede7262c763c85e66f7ce3ab764b2122c18e96dc75
SIZE (smlnj/110.99.6.1/compiler.tgz) = 888655
SHA256 (smlnj/110.99.6.1/eXene.tgz) = 7394278c0413b65060604e8318530d0dbbbd20b484559833b3fbb46c8a307c77
SIZE (smlnj/110.99.6.1/eXene.tgz) = 714459
SHA256 (smlnj/110.99.6.1/pgraph.tgz) = 903c9a00c07a3eddc27409daf95f1a2df4f1f138fa6b9bcf7ee4b1b6981ad3cc
SIZE (smlnj/110.99.6.1/pgraph.tgz) = 5367
SHA256 (smlnj/110.99.6.1/smlnj-c.tgz) = 56eadeea1d132aa9dee7ee4c2415fd711901826ac9fe42952d4ceb208887ee51
SIZE (smlnj/110.99.6.1/smlnj-c.tgz) = 10592
SHA256 (smlnj/110.99.6.1/system.tgz) = 1d49fc602c652deebe7b91fda0c2632281b6dc6045ded84c9471244862d94eeb
SIZE (smlnj/110.99.6.1/system.tgz) = 295678

View file

@ -1,6 +1,6 @@
--- asdl/config.sh.orig 2019-10-27 12:44:07 UTC
--- asdl/config.sh.orig 2024-10-25 16:47:17 UTC
+++ asdl/config.sh
@@ -40,4 +40,10 @@ fi
@@ -40,4 +40,10 @@ export SMLNJ_CMD
SMLNJ_CMD=$INSTALLDIR/bin/sml
export SMLNJ_CMD

View file

@ -1,6 +1,6 @@
--- asdl/src/asdlgen/Makefile.in.orig 2019-12-22 02:16:49 UTC
--- asdl/src/asdlgen/Makefile.in.orig 2024-10-25 16:47:17 UTC
+++ asdl/src/asdlgen/Makefile.in
@@ -60,8 +60,8 @@ CM_FILES = back-end/sml/sources.cm \
@@ -60,8 +60,8 @@ CODE_FRAG_DIRS = back-end/sml
CODE_FRAG_DIRS = back-end/sml
@ -38,7 +38,7 @@
#################### Cleanup ####################
@@ -125,4 +129,4 @@ DISTCLEAN_FILES += Makefile \
@@ -125,4 +129,4 @@ DEVCLEAN_FILES =
DEVCLEAN_FILES =

View file

@ -1,6 +1,6 @@
--- base/compiler/Parse/lex/ml.lex.orig 2018-05-28 17:11:09 UTC
--- base/compiler/Parse/lex/ml.lex.orig 2024-10-25 16:47:18 UTC
+++ base/compiler/Parse/lex/ml.lex
@@ -66,7 +66,7 @@ exp=[eE](~?){num};
@@ -66,7 +66,7 @@ hexnum={xdigit}+;
real=(~?)(({num}{frac}?{exp})|({num}{frac}{exp}?));
xdigit=[0-9a-fA-F];
hexnum={xdigit}+;

View file

@ -1,6 +1,6 @@
--- base/compiler/Parse/lex/sml.lex.orig 2018-05-28 17:11:09 UTC
--- base/compiler/Parse/lex/sml.lex.orig 2024-10-25 16:47:18 UTC
+++ base/compiler/Parse/lex/sml.lex
@@ -114,7 +114,7 @@ hexnum={xdigit}("_"*{xdigit})*;
@@ -114,7 +114,7 @@ real=(~?)(({num}{frac}?{exp})|({num}{frac}{exp}?));
frac="."{num};
exp=[eE](~?){num};
real=(~?)(({num}{frac}?{exp})|({num}{frac}{exp}?));

View file

@ -1,4 +1,4 @@
--- base/runtime/include/ml-unixdep.h.orig 2019-11-14 19:24:04 UTC
--- base/runtime/include/ml-unixdep.h.orig 2024-10-25 16:47:18 UTC
+++ base/runtime/include/ml-unixdep.h
@@ -33,9 +33,10 @@
* HAS_UCONTEXT if signal handlers have a ucontext_t argument.

View file

@ -1,6 +1,6 @@
--- base/runtime/objs/makefile.orig 2019-11-10 14:00:54 UTC
--- base/runtime/objs/makefile.orig 2024-10-25 16:47:18 UTC
+++ base/runtime/objs/makefile
@@ -5,10 +5,12 @@
@@ -7,10 +7,12 @@ MAKE = make
SHELL = /bin/sh
MAKE = make
@ -17,7 +17,7 @@
AR = ar
ARFLAGS = rcv
RANLIB = ranlib
@@ -37,8 +39,6 @@ MP_DIR = $(ROOT_DIR)/mp
@@ -39,8 +41,6 @@ CONFIG_DIR = $(ROOT_DIR)/config
CLIB_DIR = $(ROOT_DIR)/c-libs
CONFIG_DIR = $(ROOT_DIR)/config
@ -26,7 +26,7 @@
INCLUDES = -I$(OBJS_DIR) -I$(INC_DIR)
GC_INCLUDES = $(INCLUDES) -I$(GC_DIR)
GEN_INCLUDES = -I$(CONFIG_DIR) $(INCLUDES)
@@ -275,7 +275,7 @@ prim.o: $(MACH_DIR)/$(TARGET).prim.asm \
@@ -277,7 +277,7 @@ prim.o: $(MACH_DIR)/$(TARGET).prim.asm \
$(MACH_DIR)/x86-syntax.h \
mlstate-offsets.h
$(CPP) -D_ASM_ $(DEFS) $(INCLUDES) $(MACH_DIR)/$(TARGET).prim.asm > prim.s

View file

@ -1,6 +1,6 @@
--- base/runtime/objs/mk.amd64-freebsd.orig 2019-11-14 19:33:11 UTC
--- base/runtime/objs/mk.amd64-freebsd.orig 2024-10-25 16:47:18 UTC
+++ base/runtime/objs/mk.amd64-freebsd
@@ -6,9 +6,10 @@
@@ -6,9 +6,10 @@ MAKE = make
SHELL = /bin/sh
MAKE = make
@ -14,7 +14,7 @@
CPP = cc -x assembler-with-cpp -E -P
XOBJS =
XLIBS = ../c-libs/dl/libunix-dynload.a
@@ -26,6 +27,6 @@ RUNTIME_SO = run.amd64-freebsd.so
@@ -26,6 +27,6 @@ all:
RUNTIME_A = run.amd64-freebsd.a
all:

View file

@ -1,6 +1,6 @@
--- base/runtime/objs/mk.x86-freebsd.orig 2019-11-14 19:19:39 UTC
--- base/runtime/objs/mk.x86-freebsd.orig 2024-10-25 16:47:18 UTC
+++ base/runtime/objs/mk.x86-freebsd
@@ -6,20 +6,20 @@
@@ -6,20 +6,20 @@ MAKE = make
SHELL = /bin/sh
MAKE = make
@ -23,15 +23,15 @@
+#CHECK_HEAP = check-heap.o
+XDEFS = -DASSERT_ON
BASE_DEFS =
-DEFS = $(BASE_DEFS) -DARCH_X86 -DDSIZE_32 -DOPSYS_UNIX -DOPSYS_FREEBSD \
- -DGNU_ASSEMBLER -DDLOPEN -DINDIRECT_CFUNC
+DEFS = $(XDEFS) $(BASE_DEFS) -DARCH_X86 -DSIZE_32 \
+ -DOPSYS_UNIX -DOPSYS_FREEBSD -D_GNU_SOURCE -DGNU_ASSEMBLER -DDLOPEN \
+ -DINDIRECT_CFUNC
-DEFS = $(BASE_DEFS) -DARCH_X86 -DDSIZE_32 -DALIGN_STACK_16 \
- -DOPSYS_UNIX -DOPSYS_FREEBSD -DGNU_ASSEMBLER -DDLOPEN -DINDIRECT_CFUNC
+DEFS = $(XDEFS) $(BASE_DEFS) -DARCH_X86 -DSIZE_32 -DALIGN_STACK_16 \
+ -DOPSYS_UNIX -DOPSYS_FREEBSD -D_GNU_SOURCE -DGNU_ASSEMBLER \
+ -DDLOPEN -DINDIRECT_CFUNC
TARGET = X86
VERSION = v-x86-freebsd
RUNTIME = run.x86-freebsd
@@ -27,6 +27,6 @@ RUNTIME_SO = run.x86-freebsd.so
@@ -27,6 +27,6 @@ all:
RUNTIME_A = run.x86-freebsd.a
all:

View file

@ -1,29 +0,0 @@
--- smlnj-lib/JSON/json-util.sml.orig 2017-04-29 15:39:27 UTC
+++ smlnj-lib/JSON/json-util.sml
@@ -133,7 +133,7 @@ structure JSONUtil : sig
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 @@ structure JSONUtil : sig
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 @@ structure JSONUtil : sig
(* 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)

View file

@ -1,6 +1,6 @@
--- config/install.sh.orig 2020-04-03 02:04:40 UTC
--- config/install.sh.orig 2024-10-25 16:47:18 UTC
+++ config/install.sh
@@ -56,11 +56,36 @@ if [ x"$SIZE_OPT" = x ] ; then
@@ -52,11 +52,36 @@ fi
SIZE_OPT="-"$DEFAULT_SIZE
fi
@ -37,7 +37,7 @@
vsay() {
if [ x${INSTALL_DEBUG} = xtrue ] ; then
echo "$@"
@@ -128,7 +153,28 @@ trap 'cd "$ROOT"; rm -f $tmpfiles' 0 1 2 3 15
@@ -124,7 +149,28 @@ export CM_PATHCONFIG
# Especially important is CM_PATHCONFIG.
#
export CM_PATHCONFIG
@ -67,7 +67,7 @@
#
# the release version that we are installing
#
@@ -407,7 +453,12 @@ esac
@@ -403,7 +449,12 @@ BOOT_ARCHIVE=boot.$ARCH-unix
# the name of the bin files directory
#
BOOT_ARCHIVE=boot.$ARCH-unix
@ -81,7 +81,7 @@
#
# build the run-time system
@@ -416,9 +467,15 @@ if [ -x "$RUNDIR"/run.$ARCH-$OPSYS ]; then
@@ -412,9 +463,15 @@ else
vsay $this: Run-time system already exists.
else
"$CONFIGDIR"/unpack "$ROOT" runtime
@ -98,7 +98,7 @@
if [ -x run.$ARCH-$OPSYS ]; then
mv run.$ARCH-$OPSYS "$RUNDIR"
if [ -f runx.$ARCH-$OPSYS ]; then
@@ -430,7 +487,7 @@ else
@@ -426,7 +483,7 @@ else
if [ -f run.$ARCH-$OPSYS.a ]; then
mv run.$ARCH-$OPSYS.a "$RUNDIR"
fi
@ -107,7 +107,7 @@
else
complain "$this: !!! Run-time system build failed for some reason."
fi
@@ -456,7 +513,7 @@ if [ -r "$HEAPDIR"/sml.$HEAP_SUFFIX ]; then
@@ -452,7 +509,7 @@ else
complain "$this !!! Unable to re-create heap image (sml.$HEAP_SUFFIX)."
fi
else
@ -116,7 +116,7 @@
fish "$ROOT"/"$BOOT_FILES"/smlnj/basis
@@ -491,7 +548,7 @@ else
@@ -487,7 +544,7 @@ else
cd "$ROOT"/"$BOOT_FILES"
for anchor in * ; do
if [ -d $anchor ] ; then
@ -125,7 +125,7 @@
move $anchor "$LIBDIR"/$anchor
fi
done
@@ -514,6 +571,18 @@ installdriver _ml-build ml-build
@@ -510,6 +567,18 @@ cd "$ROOT"
cd "$ROOT"
@ -144,7 +144,7 @@
#
# Now do all the rest using the precompiled installer
# (see base/system/smlnj/installer for details)
@@ -523,6 +592,12 @@ if [ $nolib = false ] ; then
@@ -519,6 +588,12 @@ if [ $nolib = false ] ; then
export ROOT INSTALLDIR CONFIGDIR BINDIR
CM_TOLERATE_TOOL_FAILURES=true
export CM_TOLERATE_TOOL_FAILURES
@ -157,7 +157,7 @@
if "$BINDIR"/sml $SIZE_OPT -m \$smlnj/installer.cm
then
# because we create heap2exec without knowing if heap2asm is going
@@ -536,5 +611,20 @@ if [ $nolib = false ] ; then
@@ -532,5 +607,20 @@ fi
complain "$this: !!! Installation of libraries and programs failed."
fi
fi

View file

@ -1,12 +1,26 @@
--- config/unpack.orig 2019-10-28 14:53:16 UTC
--- config/unpack.orig 2024-10-25 16:47:18 UTC
+++ config/unpack
@@ -291,6 +291,9 @@ do
@@ -204,6 +204,13 @@ unpack() {
tryfetch=yes
if [ -d "$2"/"$3" ]; then
vsay "$this: The $1 tree already exists."
+ elif [ x`uname` = xFreeBSD ]; then
+ # XXX Mac OS X resource files (._*) cause tar to fail with
+ # "Cannot restore extended attributes: com.apple.metadata:..."
+ # We dont't have to use fetch_n_unpack here because the port
+ # already fetched the upstream tarballs to $ROOT.
+ vsay "$this: Un-TAR-ing $1 archive."
+ tar -x -C "$2" --exclude "._*" -f "$ROOT"/"$4".t* || true
else
fetch_n_unpack "$1" "$2" "$3" "$4"
fi
@@ -290,6 +297,9 @@ do
unpack "documentation" "$ROOT" doc doc
# cd $ROOT/doc
# build $ROOT
;;
+ ;;
+ asdl)
+ unpack "Abstract Syntax Description Library" "$ROOT" asdl asdl
+ ;;
;;
*)
echo Unknown package: ${i}.
echo Trying default method...

View file

@ -0,0 +1,7 @@
# This file is installed to config/targets.customized by
# do-configure-RECOMPILE-on in the port's Makefile, because the
# following targets are required before recompiling the compiler.
request ml-lex
request ml-yacc
request ml-lex-mllex-tool
request src-smlnj

View file

@ -1,4 +1,4 @@
share/man/man1/asdlgen.1.gz
%%EVERYTHING%%share/man/man1/asdlgen.1.gz
share/man/man1/heap2exec.1.gz
share/man/man1/ml-antlr.1.gz
share/man/man1/ml-build.1.gz
@ -11,7 +11,7 @@ share/man/man1/ml-yacc.1.gz
share/man/man1/sml.1.gz
share/man/man7/smlnj.7.gz
smlnj/bin/.arch-n-opsys
smlnj/bin/.heap/asdlgen.%%MLARCH%%-bsd
%%EVERYTHING%%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
@ -26,7 +26,7 @@ smlnj/bin/.run/run.%%MLARCH%%-freebsd
smlnj/bin/.run/run.%%MLARCH%%-freebsd.a
%%RUNTIME_SO%%smlnj/bin/.run/run.%%MLARCH%%-freebsd.so
smlnj/bin/.run-sml
smlnj/bin/asdlgen
%%EVERYTHING%%smlnj/bin/asdlgen
smlnj/bin/heap2asm
smlnj/bin/heap2exec
smlnj/bin/ml-antlr
@ -66,9 +66,9 @@ 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
%%EVERYTHING%%smlnj/lib/asdl-ext.cm/.cm/%%MLARCH%%-unix/asdl-ext.cm
%%EVERYTHING%%smlnj/lib/asdl-lib.cm/.cm/%%MLARCH%%-unix/asdl-lib.cm
%%EVERYTHING%%smlnj/lib/asdlgen-tool.cm/.cm/%%MLARCH%%-unix/asdlgen-tool.cm
smlnj/lib/burg-ext.cm/.cm/%%MLARCH%%-unix/burg-ext.cm
%%MLSIZE32%%smlnj/lib/c/.cm/%%MLARCH%%-unix/c.cm
%%MLSIZE32%%smlnj/lib/c/internals/.cm/%%MLARCH%%-unix/c-int.cm