Sun Jul 3 17:50:31 2016 UTC ()
Add a copy of smlnj from before the last update (so, 110.72) because
this version builds and runs on NetBSD/i386. (Yes, the update was
years back. This is what happens with packages that don't build on
amd64...)
(dholland)
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/DESCR
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/Makefile
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/Makefile.common
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/PLIST
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/PLIST.FreeBSD
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/distinfo
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/files/targets
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-aa
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ab
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ac
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ad
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ae
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-af
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ag
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ah
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ai
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-aj
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ak
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-am
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-an
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ao
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ap
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-aq
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-ar
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-as
diff -r0 -r1.1 pkgsrc/lang/smlnj11072/patches/patch-at
A Standard ML implementation from Bell-Labs. Implements the SML '97
definition including the new Basis library with a few minor omissions
and discrepancies.
If you are interested in a lighter weight implementation of ML, the
Moscow-ML port is recommended.
# $NetBSD: Makefile,v 1.1 2016/07/03 17:50:31 dholland Exp $
#
DISTNAME= boot.${BOX}-unix
PKGNAME= smlnj-${SML_VERSION}
CATEGORIES= lang
MASTER_SITES= http://smlnj.cs.uchicago.edu/dist/working/${SML_VERSION}/
DISTFILES= MLRISC.tgz \
boot.${BOX}-unix.tgz \
ckit.tgz \
cm.tgz \
cml.tgz \
compiler.tgz \
config.tgz \
eXene.tgz \
ml-burg.tgz \
ml-lex.tgz \
nlffi.tgz \
ml-yacc.tgz \
runtime.tgz \
smlnj-lib.tgz \
system.tgz \
ml-lpt.tgz \
pgraph.tgz \
trace-debug-profile.tgz \
heap2asm.tgz \
smlnj-c.tgz
MAINTAINER= richards+netbsd@CS.Princeton.EDU
HOMEPAGE= http://www.smlnj.org/index.html
COMMENT= Popular functional language from Bell Labs
SML_VERSION= 110.72
PKG_DESTDIR_SUPPORT= user-destdir
WRKSRC= ${WRKDIR}
DIST_SUBDIR= smlnj-${SML_VERSION}
USE_TOOLS+= gmake pax
# previous versions of the package had an additional '-'
CONFLICTS= sml-nj-[0-9]*
SML_BASE= ${PREFIX}/lib/smlnj
SML_LIBDIR= ${SML_BASE}/lib
SML_BINDIR= ${SML_BASE}/bin
SML_SCRIPTS= _link-sml _run-sml _ml-build _ml-makedepend
.include "../../lang/smlnj/Makefile.common"
# create parent directory for the runtime system
pre-extract:
${MKDIR} ${WRKDIR}/src || ${TRUE}
# make it easier to patch the runtime system
do-extract:
${RUN} extract_file="${_DISTDIR}/config.tgz"; export extract_file; \
cd ${WRKDIR}; ${EXTRACT_CMD}
${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:
cd ${WRKDIR} && ${LN} -sf ${_DISTDIR}/* .
# resolve definition of SML_BASE, CFLAGS in patched files
do-configure:
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"; \
${SED} -e 's|@SML_BASE@|${SML_BASE}|g' \
< "$${f}.tmp" > "$${f}"; \
done; \
cd ${WRKDIR}/src/runtime/objs; \
for f in *; do \
${CP} "$${f}" "$${f}.tmp"; \
${SED} -e 's|@CFLAGS@|${CFLAGS}|g' \
< "$${f}.tmp" > "$${f}"; \
done
# The build target needs to run $WRKDIR/config/install.sh
do-build:
cd ${WRKDIR} && unset PWD && \
FILESDIR="${FILESDIR}" PATCH="${PATCH}" PATCH_ARGS="${PATCH_ARGS}" \
SMLNJ_HOME="${WRKDIR}" ./config/install.sh
# 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}
cd ${DESTDIR}${PREFIX}/bin && ${LN} -sf ../lib/smlnj/bin/* .
.include "../../mk/bsd.pkg.mk"
# $NetBSD: Makefile.common,v 1.1 2016/07/03 17:50:31 dholland Exp $
# smlnj also supports hppa, sparc, ppc, mlrisc & alpha
# pkg support for those platforms, and say, solaris-x86
# is left as an (easy) exercise for the reader.
ONLY_FOR_PLATFORM= NetBSD-*-i386 NetBSD-*-sparc NetBSD-*-powerpc \
FreeBSD-*-i386 Linux-*-i386 SunOS-*-sparc
.include "../../mk/bsd.prefs.mk"
# Possible values of BOX and OS must be kept in sync with the
# currently ported platforms.
.if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD"
OS= bsd
.elif ${OPSYS} == "SunOS" || ${OPSYS} == "Linux"
OS= ${LOWER_OPSYS}
.endif
PLIST_VARS+= nlffi # not available on all platforms
.if ${MACHINE_ARCH} == "i386"
BOX= x86
PLIST.nlffi= yes
.elif ${MACHINE_ARCH} == "powerpc"
BOX= ppc
.elif ${MACHINE_ARCH} == "sparc"
BOX= ${MACHINE_ARCH}
PLIST.nlffi= yes
.else
# for "make fetch", default to i386 instead of trying to download
# a non-existing file
BOX= x86
PLIST.nlffi= yes
.endif
PLIST_SUBST+= BOX=${BOX:Q} OS=${OS:Q} NLFFI=${NLFFI}
@comment $NetBSD: PLIST,v 1.1 2016/07/03 17:50:31 dholland Exp $
bin/heap2asm
bin/heap2exec
bin/ml-antlr
bin/ml-build
bin/ml-burg
bin/ml-lex
bin/ml-makedepend
${PLIST.nlffi}bin/ml-nlffigen
bin/ml-ulex
bin/ml-yacc
bin/nowhere
bin/sml
lib/smlnj/bin/.arch-n-opsys
lib/smlnj/bin/.heap/heap2asm.${BOX}-${OS}
lib/smlnj/bin/.heap/ml-antlr.${BOX}-${OS}
lib/smlnj/bin/.heap/ml-burg.${BOX}-${OS}
lib/smlnj/bin/.heap/ml-lex.${BOX}-${OS}
${PLIST.nlffi}lib/smlnj/bin/.heap/ml-nlffigen.${BOX}-${OS}
lib/smlnj/bin/.heap/ml-ulex.${BOX}-${OS}
lib/smlnj/bin/.heap/ml-yacc.${BOX}-${OS}
lib/smlnj/bin/.heap/nowhere.${BOX}-${OS}
lib/smlnj/bin/.heap/sml.${BOX}-${OS}
lib/smlnj/bin/.link-sml
lib/smlnj/bin/.run-sml
lib/smlnj/bin/.run/run.${BOX}-${LOWER_OPSYS}
lib/smlnj/bin/heap2asm
lib/smlnj/bin/heap2exec
lib/smlnj/bin/ml-antlr
lib/smlnj/bin/ml-build
lib/smlnj/bin/ml-burg
lib/smlnj/bin/ml-lex
lib/smlnj/bin/ml-makedepend
${PLIST.nlffi}lib/smlnj/bin/ml-nlffigen
lib/smlnj/bin/ml-ulex
lib/smlnj/bin/ml-yacc
lib/smlnj/bin/nowhere
lib/smlnj/bin/sml
lib/smlnj/lib/SMLNJ-BASIS/.cm/${BOX}-unix/basis.cm
lib/smlnj/lib/SMLNJ-LIB/Controls/.cm/${BOX}-unix/controls-lib.cm
lib/smlnj/lib/SMLNJ-LIB/HTML/.cm/${BOX}-unix/html-lib.cm
lib/smlnj/lib/SMLNJ-LIB/PP/.cm/${BOX}-unix/pp-lib.cm
lib/smlnj/lib/SMLNJ-LIB/Util/.cm/${BOX}-unix/smlnj-lib.cm
lib/smlnj/lib/SMLNJ-ML-YACC-LIB/.cm/${BOX}-unix/ml-yacc-lib.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/ALPHA.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/AMD64-Peephole.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/AMD64.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/CCall-Vararg.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/CCall-sparc.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/CCall-x86-64.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/CCall-x86.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/CCall.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/Control.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/Graphs.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/HPPA.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/IA32-Peephole.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/IA32.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/Lib.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/MLRISC.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/MLTREE.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/PPC.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/Peephole.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/RA.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/SPARC.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/StagedAlloc.cm
lib/smlnj/lib/SMLNJ-MLRISC/.cm/${BOX}-unix/Visual.cm
lib/smlnj/lib/burg-ext.cm/.cm/${BOX}-unix/burg-ext.cm
${PLIST.nlffi}lib/smlnj/lib/c/.cm/${BOX}-unix/c.cm
${PLIST.nlffi}lib/smlnj/lib/c/internals/.cm/${BOX}-unix/c-int.cm
${PLIST.nlffi}lib/smlnj/lib/c/memory/.cm/${BOX}-unix/memory.cm
lib/smlnj/lib/ckit-lib.cm/.cm/${BOX}-unix/ckit-lib.cm
lib/smlnj/lib/cml-lib/.cm/${BOX}-unix/smlnj-lib.cm
lib/smlnj/lib/cml-lib/.cm/${BOX}-unix/trace-cml.cm
lib/smlnj/lib/cml/.cm/${BOX}-unix/basis.cm
lib/smlnj/lib/cml/.cm/${BOX}-unix/cml-internal.cm
lib/smlnj/lib/cml/.cm/${BOX}-unix/cml.cm
lib/smlnj/lib/cml/.cm/${BOX}-unix/core-cml.cm
lib/smlnj/lib/dir-tool.cm/.cm/${BOX}-unix/dir-tool.cm
lib/smlnj/lib/eXene.cm/.cm/${BOX}-unix/eXene.cm
lib/smlnj/lib/grm-ext.cm/.cm/${BOX}-unix/grm-ext.cm
lib/smlnj/lib/hash-cons-lib.cm/.cm/${BOX}-unix/hash-cons-lib.cm
lib/smlnj/lib/inet-lib.cm/.cm/${BOX}-unix/inet-lib.cm
lib/smlnj/lib/json-lib.cm/.cm/${BOX}-unix/json-lib.cm
lib/smlnj/lib/lex-ext.cm/.cm/${BOX}-unix/lex-ext.cm
lib/smlnj/lib/make-tool.cm/.cm/${BOX}-unix/make-tool.cm
lib/smlnj/lib/ml-antlr-tool.cm/.cm/${BOX}-unix/ml-antlr-tool.cm
lib/smlnj/lib/ml-lpt-lib.cm/.cm/${BOX}-unix/ml-lpt-lib.cm
lib/smlnj/lib/ml-ulex-tool.cm/.cm/${BOX}-unix/ml-ulex-tool.cm
lib/smlnj/lib/mlburg-tool.cm/.cm/${BOX}-unix/mlburg-tool.cm
lib/smlnj/lib/mllex-tool.cm/.cm/${BOX}-unix/mllex-tool.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/match-compiler.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/parser.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/pp.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/prec-parser.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/sml-ast.cm
lib/smlnj/lib/mlrisc-tools/.cm/${BOX}-unix/source-map.cm
lib/smlnj/lib/mlyacc-tool.cm/.cm/${BOX}-unix/mlyacc-tool.cm
lib/smlnj/lib/noweb-tool.cm/.cm/${BOX}-unix/noweb-tool.cm
lib/smlnj/lib/nw-ext.cm/.cm/${BOX}-unix/nw-ext.cm
lib/smlnj/lib/pathconfig
lib/smlnj/lib/pgraph-util.cm/.cm/${BOX}-unix/pgraph-util.cm
lib/smlnj/lib/pgraph.cm/.cm/${BOX}-unix/pgraph.cm
lib/smlnj/lib/pickle-lib.cm/.cm/${BOX}-unix/pickle-lib.cm
lib/smlnj/lib/reactive-lib.cm/.cm/${BOX}-unix/reactive-lib.cm
lib/smlnj/lib/regexp-lib.cm/.cm/${BOX}-unix/regexp-lib.cm
lib/smlnj/lib/shell-tool.cm/.cm/${BOX}-unix/shell-tool.cm
lib/smlnj/lib/smlnj-tdp/.cm/${BOX}-unix/back-trace.cm
lib/smlnj/lib/smlnj-tdp/.cm/${BOX}-unix/coverage.cm
lib/smlnj/lib/smlnj-tdp/.cm/${BOX}-unix/plugins.cm
lib/smlnj/lib/smlnj/.cm/${BOX}-unix/cm.cm
lib/smlnj/lib/smlnj/.cm/${BOX}-unix/cmb.cm
lib/smlnj/lib/smlnj/.cm/${BOX}-unix/compiler.cm
lib/smlnj/lib/smlnj/.cm/${BOX}-unix/installer.cm
lib/smlnj/lib/smlnj/.cm/${BOX}-unix/library-install.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/ALPHA.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/AMD64.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/Control.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/Graphs.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/HPPA.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/IA32.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/Lib.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/MLRISC.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/MLTREE.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/PPC.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/SPARC.cm
lib/smlnj/lib/smlnj/MLRISC/.cm/${BOX}-unix/Visual.cm
lib/smlnj/lib/smlnj/basis/.cm/${BOX}-unix/basis.cm
lib/smlnj/lib/smlnj/cm/.cm/${BOX}-unix/cm.cm
lib/smlnj/lib/smlnj/cm/.cm/${BOX}-unix/tools.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/alpha32-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/amd64-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/current.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/hppa-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/ppc-macos.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/ppc-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/sparc-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/x86-unix.cm
lib/smlnj/lib/smlnj/cmb/.cm/${BOX}-unix/x86-win32.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/all.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/alpha32.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/amd64.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/compiler.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/current.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/hppa.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/minimal-only.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/minimal.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/ppc.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/sparc.cm
lib/smlnj/lib/smlnj/compiler/.cm/${BOX}-unix/x86.cm
lib/smlnj/lib/smlnj/init/.cm/${BOX}-unix/init.cmi
lib/smlnj/lib/smlnj/installer/.cm/${BOX}-unix/util.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/cm-lib.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/cm-sig-lib.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/cm0.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/intsys.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/smlnj-version.cm
lib/smlnj/lib/smlnj/internal/.cm/${BOX}-unix/srcpath-lib.cm
lib/smlnj/lib/smlnj/ml-yacc/.cm/${BOX}-unix/ml-yacc-lib.cm
lib/smlnj/lib/smlnj/smlnj-lib/.cm/${BOX}-unix/controls-lib.cm
lib/smlnj/lib/smlnj/smlnj-lib/.cm/${BOX}-unix/html-lib.cm
lib/smlnj/lib/smlnj/smlnj-lib/.cm/${BOX}-unix/pp-lib.cm
lib/smlnj/lib/smlnj/smlnj-lib/.cm/${BOX}-unix/smlnj-lib.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/alpha32.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/amd64.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/basics.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/core.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/debugprof.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/elabdata.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/elaborate.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/execute.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/hppa.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/parser.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/ppc.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/sparc.cm
lib/smlnj/lib/smlnj/viscomp/.cm/${BOX}-unix/x86.cm
lib/smlnj/lib/unix-lib.cm/.cm/${BOX}-unix/unix-lib.cm
lib/smlnj/bin/.run/run.${BOX}-freebsd.a
lib/smlnj/bin/.run/run.${BOX}-freebsd.so
$NetBSD: distinfo,v 1.1 2016/07/03 17:50:31 dholland Exp $
SHA1 (smlnj-110.72/MLRISC.tgz) = 9bb9eb169337533304c2e0e4eb9af263d38c398a
RMD160 (smlnj-110.72/MLRISC.tgz) = 484512df036421e216d4afed01beb978d33e16bb
Size (smlnj-110.72/MLRISC.tgz) = 1432663 bytes
SHA1 (smlnj-110.72/boot.x86-unix.tgz) = 799f02f3e880a829b48962994b563f7321385d87
RMD160 (smlnj-110.72/boot.x86-unix.tgz) = bd2962ea25d6f384a3f458759a1c655960dc4208
Size (smlnj-110.72/boot.x86-unix.tgz) = 5847908 bytes
SHA1 (smlnj-110.72/ckit.tgz) = 0ebcdbd0a494eb051b4e6081f5e9312a0a54f03d
RMD160 (smlnj-110.72/ckit.tgz) = 0d94d522b22b21600ad99aaf22fb671c12a6ea59
Size (smlnj-110.72/ckit.tgz) = 199126 bytes
SHA1 (smlnj-110.72/cm.tgz) = 0a85eaecc101c45c769e6beb8ace8a8bf0f4d32f
RMD160 (smlnj-110.72/cm.tgz) = 821eb682bfb4e6ef6a71fe341ba018059301a233
Size (smlnj-110.72/cm.tgz) = 201235 bytes
SHA1 (smlnj-110.72/cml.tgz) = 9fd01c6d2d4a7cac22be75010891c1be5ab81f29
RMD160 (smlnj-110.72/cml.tgz) = 8e3b8fd01258e74364fa1319bb8d01335aaca8d1
Size (smlnj-110.72/cml.tgz) = 104194 bytes
SHA1 (smlnj-110.72/compiler.tgz) = cf80dfb2150de0705fbc2b2a01fc8eefda0e9c85
RMD160 (smlnj-110.72/compiler.tgz) = 6811090d11179312413ef789d1e292e95040606a
Size (smlnj-110.72/compiler.tgz) = 823034 bytes
SHA1 (smlnj-110.72/config.tgz) = a7e205a9e0753908ee3174daa5164c320c7a411f
RMD160 (smlnj-110.72/config.tgz) = f0e8f348ec4c8b4c5860d68a0b6b554f848ca4a7
Size (smlnj-110.72/config.tgz) = 512648 bytes
SHA1 (smlnj-110.72/eXene.tgz) = c8b502580a719b38528f100f21f11ac1f4c2b573
RMD160 (smlnj-110.72/eXene.tgz) = 182838ea5c6d3688f841b5edeea08f9c83b93177
Size (smlnj-110.72/eXene.tgz) = 713820 bytes
SHA1 (smlnj-110.72/heap2asm.tgz) = 46845fc4bed21f1c3b46540fc088936d0502e12b
RMD160 (smlnj-110.72/heap2asm.tgz) = 24b779bdb8b21a74d0f3586f5db779e02c540253
Size (smlnj-110.72/heap2asm.tgz) = 1308 bytes
SHA1 (smlnj-110.72/ml-burg.tgz) = 17afacafa25d1fc33d3cbe464be66f1a7f8714fa
RMD160 (smlnj-110.72/ml-burg.tgz) = 8b78c21f6b338baa55c9227babed4ebca10edd26
Size (smlnj-110.72/ml-burg.tgz) = 36558 bytes
SHA1 (smlnj-110.72/ml-lex.tgz) = 3fb5dca13de3c51ddab1c8fb95b1dfaad58fb27c
RMD160 (smlnj-110.72/ml-lex.tgz) = 69ccfd9ba199bd4a063f1a2c2a40444e0cf9db67
Size (smlnj-110.72/ml-lex.tgz) = 32966 bytes
SHA1 (smlnj-110.72/ml-lpt.tgz) = 948735346b411ec5004f3294454c12bfb4176083
RMD160 (smlnj-110.72/ml-lpt.tgz) = 86642f1b470c5f15861334072ff7543af1066881
Size (smlnj-110.72/ml-lpt.tgz) = 258328 bytes
SHA1 (smlnj-110.72/ml-yacc.tgz) = f7b0f53c7f676e7bb2605211d4981948c538a551
RMD160 (smlnj-110.72/ml-yacc.tgz) = c6ce323c77b8d1ac33f6bce0a865df40e1efe310
Size (smlnj-110.72/ml-yacc.tgz) = 101751 bytes
SHA1 (smlnj-110.72/nlffi.tgz) = 63d043de413748fe124eb6e9f066935b4f1e96e0
RMD160 (smlnj-110.72/nlffi.tgz) = 279741f9318b74dea838432adc21ad8f671bed6a
Size (smlnj-110.72/nlffi.tgz) = 74688 bytes
SHA1 (smlnj-110.72/pgraph.tgz) = 00919f8341fdcbe38ff7c908ef78fbbc4c37a5b6
RMD160 (smlnj-110.72/pgraph.tgz) = 8341475dc03a2460799af637eeb46d3f334f451f
Size (smlnj-110.72/pgraph.tgz) = 5417 bytes
SHA1 (smlnj-110.72/runtime.tgz) = d9e3df41155ad9e969dd13c06f0f0fd3df177578
RMD160 (smlnj-110.72/runtime.tgz) = 894209303d9204bae84209a8130877200251584e
Size (smlnj-110.72/runtime.tgz) = 333396 bytes
SHA1 (smlnj-110.72/smlnj-c.tgz) = f4bf82d695be0fca01e0f3e4075ac4d81fe3c660
RMD160 (smlnj-110.72/smlnj-c.tgz) = 373fc5c1b0b49056bc1eb73bf9650c2f939c4540
Size (smlnj-110.72/smlnj-c.tgz) = 10618 bytes
SHA1 (smlnj-110.72/smlnj-lib.tgz) = 8ce9761a118569b8563f0336e010906c15943324
RMD160 (smlnj-110.72/smlnj-lib.tgz) = fbcdc678f1c6842aaa5a2241db6564e6e81eb525
Size (smlnj-110.72/smlnj-lib.tgz) = 258562 bytes
SHA1 (smlnj-110.72/system.tgz) = 72f73bbbc06d23ee3c4510bb5af2fb8dec431337
RMD160 (smlnj-110.72/system.tgz) = c6816b7c9fd57f9351b63a7ba447442c4a21fe7b
Size (smlnj-110.72/system.tgz) = 238169 bytes
SHA1 (smlnj-110.72/trace-debug-profile.tgz) = e80d8076d961a36e067b559c02279562856bb6ee
RMD160 (smlnj-110.72/trace-debug-profile.tgz) = 6c85734aefd0672a645497550dacf56f503dd726
Size (smlnj-110.72/trace-debug-profile.tgz) = 3905 bytes
SHA1 (patch-aa) = a67e8438c0ae20c1f0fac37148158b565056e5f7
SHA1 (patch-ab) = 3d5946b2d72dee255159afe6fb25240f8fa7e306
SHA1 (patch-ac) = f6c30285f55a9537a785d363837ecc83cfd384b7
SHA1 (patch-ad) = a406bde2f6f7e2d93d652135b94aefd4b7aca494
SHA1 (patch-ae) = 5796401418fd91a795fdfe75060cf654dd315ac1
SHA1 (patch-af) = fae22c6f367b3007bbd9b46b7a7a218710723ca4
SHA1 (patch-ag) = dae9c89ccc7ada96bd3ac4b2bae1da6427902fb4
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) = 727afe6de54eb244c48e99c661f6b8ae3f780de0
SHA1 (patch-as) = a2e5d474876baa1dc2484dda81708ea6ac92eb0b
SHA1 (patch-at) = 9fd22dab9def459d3305695a38d14d25c645ff30
request ml-yacc
request ml-lex
request ml-burg
request smlnj-lib
request pgraph-util
request cml
request cml-lib
request eXene
request ckit
#if !defined(__powerpc__)
request ml-nlffi-lib
request ml-nlffigen
#endif
request mlrisc-tools
request nowhere
$NetBSD: patch-aa,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- config/targets.orig 2010-02-03 19:40:28.000000000 +0300
+++ config/targets 2010-02-07 05:56:52.000000000 +0300
@@ -91,7 +91,7 @@
# build ML-Burg
#
-#request ml-burg
+request ml-burg
# pre-compile and install the remaining components of the SML/NJ library
# (everything except smlnj-lib.cm, aka Util, itself)
@@ -100,7 +100,7 @@
# pre-compile and install CM "portable graph" utility library
#
-#request pgraph-util
+request pgraph-util
# 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 (certain) parts of MLRISC that are not already part of the SML/NJ
# compiler itself
@@ -130,7 +130,7 @@
# 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
@@ -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
@@ -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
# pre-compile and install the MLRISC Tools library.
# This library is for parsing and pretty printing SML code.
# It's used by various MLRISC code generator generator.
#
-#request mlrisc-tools
+request mlrisc-tools
# Build and install the 'nowhere' program translator.
# This tool translates programs with conditional patterns (where clauses)
@@ -163,11 +163,11 @@
# (bad) documentation.
# (Requires the mlrisc-tools library!)
#
-#request nowhere
+request nowhere
# Build and install 'heap2asm' - an experimental component of
# a new facility for producing true stand-alone executables.
-#request heap2asm
+request heap2asm
# Note: autoloading is always enabled.
# In order to customize what is being pre-registered for autoloading
$NetBSD: patch-ab,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- /dev/null
+++ src/runtime/objs/mk.ppc-netbsd
@@ -0,0 +1,24 @@
+# mk.ppc-netbsd
+#
+
+SHELL = /bin/sh
+
+MAKE = gmake
+GCC = gcc
+ARFLAGS = Trcv
+CFLAGS = @CFLAGS@
+LDFLAGS=
+CPP = $(GCC) -x c -E -P
+
+#XOBJS = xmonitor.o
+#LD_LIBS = -lX11
+#BASE_DEFS = -DHEAP_MONITOR -DPOLL_DEBUG
+XOBJS =
+XLIBS =
+DEFS = $(BASE_DEFS) -DHOST_PPC -DTARGET_PPC -DOPSYS_UNIX -DOPSYS_NETBSD
+TARGET = PPC
+VERSION = v-ppc-netbsd
+RUNTIME = run.ppc-netbsd
+
+all:
+ ($(MAKE) RUNTIME="$(RUNTIME)" MAKE="$(MAKE)" VERSION="$(VERSION)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" AS="$(AS)" AR="$(AR)" RANLIB="$(RANLIB)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" $(RUNTIME))
$NetBSD: patch-ac,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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)
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
*86) ARCH=x86;;
+ powerpc) ARCH=ppc;;
+ sparc) ARCH=sparc;;
*) exit 1;;
esac
;;
$NetBSD: patch-ad,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/include/asm-base.h.orig
+++ src/runtime/include/asm-base.h
@@ -36,6 +36,11 @@
# define _ASM
# include <sys/stack.h>
# include <sys/trap.h>
+# elif defined(OPSYS_NETBSD)
+# include <machine/trap.h>
+# define WINDOWSIZE (16*4)
+# define SA(x) (((x)+7)&~7)
+# define ST_INT_OVERFLOW 0x87
# endif
# define CGLOBAL(ID) .global CSYM(ID)
# define LABEL(ID) ID:
@@ -104,7 +109,7 @@
# define DOUBLE(V) .double V
# define LABEL(ID) ID:
-# elif (defined(OPSYS_LINUX) && defined(TARGET_PPC))
+# elif ((defined(OPSYS_LINUX) || defined(OPSYS_NETBSD)) && defined(TARGET_PPC))
# define CFUNSYM(ID) ID
# define CGLOBAL(ID) .globl CSYM(ID)
# define TEXT .section ".text"
$NetBSD: patch-ae,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/mach-dep/SPARC.prim.asm.orig Fri Jun 15 15:05:19 2001
+++ src/runtime/mach-dep/SPARC.prim.asm
@@ -307,7 +307,7 @@ pending_sigs: /* there are pending signa
mov ALLOCPTR,LIMITPTR /* (delay slot) */
-#if defined(OPSYS_SUNOS) || defined(OPSYS_NEXTSTEP)
+#if defined(OPSYS_SUNOS) || defined(OPSYS_NEXTSTEP) || defined(OPSYS_NETBSD)
/* ZeroLimitPtr:
*
* Zero the heap limit pointer so that a trap will be generated on the next limit
@@ -622,13 +622,62 @@ _ml_mul:
mov %g1,%l1 /* save %g1 which may get trashed */
mov %g2,%l2
mov %g3,%l3
+#ifdef OPSYS_NETBSD
+ /* NetBSDs .mul trashes these */
+ mov %i4,%l4
+ mov %i5,%l5
+ mov %i0,%l6
+ mov %i1,%l7
+#endif
mov %i2,%o0
call .mul
mov %i3,%o1 /* (delay slot) */
mov %l1,%g1 /* restore %g1 */
mov %l2,%g2
mov %l3,%g3
+#ifdef OPSYS_NETBSD
+ mov %l4,%i4
+ mov %l5,%i5
+ mov %l6,%i0
+ mov %l7,%i1
+ /* the code below is a hack:
+ * NetBSDs .mul does a 32x32->64 bit signed multiply
+ * The SML code assumes that the multiply
+ * overflowed (over 32bit) if the Z flag is
+ * clear on return from .mul
+ * NetBSDs .mul doesn't do that, so we have to check
+ * for overflow. This is done in the following way:
+ * - If the upper 32 bits are clear:
+ * + if bit 31 is set => overflow
+ * + if bit 31 is clear => OK
+ * - If the upper 32 bits are != -1 => overflow
+ * - If the upper 32 bits are == -1:
+ * + If bit 31 is clear => overflow
+ * + If bit 31 is set => OK
+ *
+ * I should be shot for this code ...
+ */
+ cmp %o1,0
+ bnz 4f
+ nop
+ /* is bit 31 of %o0 set ? */
+ addcc %o0,%o0,%o1
+ bcc 2f
+ nop
+5: restore %o0,0,%o2 /* result in %o2 (delay slot) */
+ t ST_INT_OVERFLOW /* generate overflow trap */
+
+
+4: cmp %o1,-1 /* upper 32 bits == -1 ? */
+ bnz 5
+ nop
+ addcc %o0,%o0,%o1 /* bit 31 clear ? */
+ bcc 2f
+ nop
+#else
bnz 1f /* if z is clear, then overflow */
+#endif
+2:
restore %o0,0,%o2 /* result in %o2 (delay slot) */
retl
nop
@@ -642,7 +691,15 @@ _ml_mul:
* locals of the new window, since .div is a leaf routine.
*/
_ml_div:
- save %sp,-SA(WINDOWSIZE),%sp
+#ifdef OPSYS_NETBSD
+ /* hack time again: NetBSDs .div trashes too many registers
+ * we have to store them in the stack frame, so make room
+ * for six registers (o0-o5)
+ */
+ save %sp,-SA(WINDOWSIZE+24),%sp
+#else
+ save %sp,-SA(WINDOWSIZE+24),%sp
+#endif
addcc %i3,%g0,%o1 /* %o1 is divisor (and check for zero) */
bz 1f
/* save %g1, %g2 and %g3 (using new window) */
@@ -650,9 +707,30 @@ _ml_div:
mov %g1,%l1 /* (delay slot) */
mov %g2,%l2
mov %g3,%l3
+#ifdef OPSYS_NETBSD
+ /* save g6,g7,o0-o5, they get trashed.
+ Note that %o0-%o5 are now %i0-%i5, since we did a 'save'
+ Since %g6 is the global AllocPtr for SML, this
+ is rather bad :-)
+ */
+ mov %g6,%l4
+ mov %g7,%l5
+ std %i0,[%fp-16]
+ std %i2,[%fp-24]
+ std %i4,[%fp-32]
+#endif
+
call .div
mov %i2,%o0 /* (delay slot) */
/* restore %g1, %g2 and %g3 */
+#ifdef OPSYS_NETBSD
+ mov %l4,%g6
+ mov %l5,%g7
+ ldd [%fp-32],%i4
+ ldd [%fp-24],%i2
+ ldd [%fp-16],%i0
+#endif
+
mov %l3,%g3
mov %l2,%g2
mov %l1,%g1
@@ -679,11 +757,24 @@ _ml_umul:
mov %g2,%l2
mov %g3,%l3
mov %i2,%o0
+#ifdef OPSYS_NETBSD
+ /* Save what might be trashed by NetBSDs .umul */
+ mov %i4,%l4
+ mov %i5,%l5
+ mov %i0,%l6
+ mov %i1,%l7
+#endif
call .umul
mov %i3,%o1 /* (delay slot) */
mov %l1,%g1 /* restore %g1 */
mov %l2,%g2
mov %l3,%g3
+#ifdef OPSYS_NETBSD
+ mov %l4,%i4
+ mov %l5,%i5
+ mov %l6,%i0
+ mov %l7,%i1
+#endif
ret
restore %o0,0,%o2 /* result in %o2 (delay slot) */
@@ -694,7 +785,12 @@ _ml_umul:
* locals of the new window, since .div is a leaf routine.
*/
_ml_udiv:
- save %sp,-SA(WINDOWSIZE),%sp
+#ifdef OPSYS_NETBSD
+ /* see comment for _ml__div_ */
+ save %sp,-SA(WINDOWSIZE+24),%sp
+#else
+ save %sp,-SA(WINDOWSIZE+24),%sp
+#endif
addcc %i3,%g0,%o1 /* %o1 is divisor (and check for zero) */
bz 1f
/* save %g1, %g2 and %g3 (using new window) */
@@ -702,9 +798,23 @@ _ml_udiv:
mov %g1,%l1 /* (delay slot) */
mov %g2,%l2
mov %g3,%l3
+#ifdef OPSYS_NETBSD
+ mov %g6,%l4
+ mov %g7,%l5
+ std %i0,[%fp-16]
+ std %i2,[%fp-24]
+ std %i4,[%fp-32]
+#endif
call .udiv
mov %i2,%o0 /* (delay slot) */
/* restore %g1, %g2 and %g3 */
+#ifdef OPSYS_NETBSD
+ mov %l4,%g6
+ mov %l5,%g7
+ ldd [%fp-32],%i4
+ ldd [%fp-24],%i2
+ ldd [%fp-16],%i0
+#endif
mov %l3,%g3
mov %l2,%g2
mov %l1,%g1
$NetBSD: patch-af,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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)
-# if defined(OPSYS_SUNOS)
+# if defined(OPSYS_SUNOS) || defined(OPSYS_NETBSD)
/** SPARC, SUNOS **/
# define USE_ZERO_LIMIT_PTR_FN
# define SIG_FAULT1 SIGFPE
@@ -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 */
+
+# define SIG_FAULT1 SIGTRAP
+
+# define INT_DIVZERO(s, c) ((s) == SIGTRAP)
+# define INT_OVFLW(s, c) ((s) == SIGTRAP)
+# define SIG_GetPC(scp) ((scp)->sc_frame.srr0)
+# define SIG_SetPC(scp, addr) { (scp)->sc_frame.srr0 = (long)(addr); }
+# define SIG_ZeroLimitPtr(scp) { ((scp)->sc_frame.fixreg[15] = 0); } /* limitptr = 15 (see src/runtime/mach-dep/PPC.prim.asm) */
+# define SIG_GetCode(info,scp) (info)
+ typedef void SigReturn_t;
+
# endif /* HOST_RS6000/HOST_PPC */
#elif defined(HOST_HPPA)
$NetBSD: patch-ag,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/objs/mk.sparc-netbsd.orig Thu Sep 19 03:54:01 2002
+++ src/runtime/objs/mk.sparc-netbsd
@@ -0,0 +1,24 @@
+# mk.sparc-netbsd
+#
+
+SHELL = /bin/sh
+
+MAKE = gmake
+GCC = gcc
+ARFLAGS = Trcv
+CFLAGS = @CFLAGS@
+LDFLAGS=
+CPP = $(GCC) -x c -E -P
+
+#XOBJS = xmonitor.o
+#LD_LIBS = -lX11
+#BASE_DEFS = -DHEAP_MONITOR -DPOLL_DEBUG
+XOBJS =
+XLIBS =
+DEFS = $(BASE_DEFS) -DHOST_SPARC -DTARGET_SPARC -DOPSYS_UNIX -DOPSYS_NETBSD -DCALLEESAVE=3 -DUNBOXEDFLOAT=1
+TARGET = SPARC
+VERSION = v-sparc-netbsd
+RUNTIME = run.sparc-netbsd
+
+all:
+ ($(MAKE) RUNTIME="$(RUNTIME)" MAKE="$(MAKE)" VERSION="$(VERSION)" CC="$(CC)" CFLAGS="$(CFLAGS)" CPP="$(CPP)" AS="$(AS)" AR="$(AR)" RANLIB="$(RANLIB)" TARGET=$(TARGET) DEFS="$(DEFS)" XOBJS="$(XOBJS)" XLIBS="$(XLIBS)" LD_LIBS="$(LD_LIBS)" $(RUNTIME))
$NetBSD: patch-ah,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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
$NetBSD: patch-ai,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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@"
LIB_DIR="@LIBDIR@"
$NetBSD: patch-aj,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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@"
else
$NetBSD: patch-ak,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- 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@}"
# On cygwin, make sure SMLNJ_HOME is given a POSIX-style pathname.
if [ x"$SMLNJ_HOME" != x ] ; then
$NetBSD: patch-am,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/objs/mk.sparc-solaris.orig Fri Jun 15 15:05:19 2001
+++ src/runtime/objs/mk.sparc-solaris
@@ -8,7 +8,7 @@ AS = /usr/ccs/bin/as
AR = /usr/ccs/bin/ar
GCC = gcc
CC = $(GCC)
-CFLAGS = -O3
+CFLAGS = @CFLAGS@
#CFLAGS = -g
CPP = $(GCC) -x c -E -P
RANLIB = $(AR) ts
$NetBSD: patch-an,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/objs/mk.sparc-sunos.orig Thu Jun 1 14:33:52 2000
+++ src/runtime/objs/mk.sparc-sunos
@@ -4,7 +4,7 @@
SHELL = /bin/sh
CC = gcc -ansi
-CFLAGS = -O2
+CFLAGS = @CFLAGS@
CPP = gcc -x c -E -P -ansi
#XOBJS = xmonitor.o
#LD_LIBS = -lX11
$NetBSD: patch-ao,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/kernel/boot.c.orig
+++ src/runtime/kernel/boot.c
@@ -124,7 +124,7 @@
ml_val_t fileList;
# define SIZE_BUF_LEN 128 /* this should be plenty for two numbers */
char sizeBuf[SIZE_BUF_LEN];
- char c;
+ int c;
numFiles = 0;
$NetBSD: patch-ap,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/include/cache-flush.h.orig
+++ src/runtime/include/cache-flush.h
@@ -40,7 +40,7 @@
extern FlushICache (void *addr, int nbytes);
-#elif (defined(TARGET_PPC) && (defined(OPSYS_LINUX) || defined(OPSYS_DARWIN) ))
+#elif (defined(TARGET_PPC) && (defined(OPSYS_LINUX) || defined(OPSYS_DARWIN) || defined(OPSYS_NETBSD)))
extern FlushICache (void *addr, int nbytes);
#else
$NetBSD: patch-aq,v 1.1 2016/07/03 17:50:31 dholland Exp $
--- src/runtime/mach-dep/PPC.prim.asm.orig
+++ src/runtime/mach-dep/PPC.prim.asm
@@ -813,7 +813,7 @@
lfd f31, 136(r3)
blr
-#if (defined(TARGET_PPC) && (defined(OPSYS_LINUX) || defined(OPSYS_DARWIN) ))
+#if (defined(TARGET_PPC) && (defined(OPSYS_LINUX) || defined(OPSYS_DARWIN) || defined(OPSYS_NETBSD) ))
#define CACHE_LINE_SZB 32
#define CACHE_LINE_MASK (CACHE_LINE_SZB-1)
$NetBSD: patch-ar,v 1.1 2016/07/03 17:50:31 dholland Exp $
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
+# define HAS_POSIX_SIGS
# define HAS_GETRUSAGE
# define HAS_SETITIMER
# define HAS_MMAP
$NetBSD: patch-as,v 1.1 2016/07/03 17:50:31 dholland 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
$NetBSD: patch-at,v 1.1 2016/07/03 17:50:31 dholland 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