mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-22 08:58:47 +00:00
lang/sbcl: Add core compression and sb-simd module
PR: 265576 Reported by: dmgk and jinxiaoyong@gmail.com
This commit is contained in:
parent
6035d53819
commit
70419d445f
@ -5,6 +5,7 @@
|
||||
PORTNAME= sbcl
|
||||
DISTVERSION= 2.2.7
|
||||
DISTVERSIONSUFFIX= -source
|
||||
PORTREVISION= 1
|
||||
PORTEPOCH= 1
|
||||
CATEGORIES= lang lisp
|
||||
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTVERSION} \
|
||||
@ -33,8 +34,8 @@ WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
|
||||
PORTDOCS= *
|
||||
|
||||
# All options explained into file: ${WRKSRC}/base-target-features.lisp-expr
|
||||
OPTIONS_DEFINE= DOCS LINKABLE_RUNTIME QSHOW SAFEPOINT THREADS UNICODE \
|
||||
XREF ZLIB
|
||||
OPTIONS_DEFINE= COMPRESSION DOCS LINKABLE_RUNTIME QSHOW SAFEPOINT SIMD \
|
||||
THREADS UNICODE XREF
|
||||
OPTIONS_DEFAULT= SBCL THREADS UNICODE
|
||||
|
||||
OPTIONS_SINGLE= BOOTSTRAP
|
||||
@ -45,10 +46,12 @@ ABCL_DESC= Armed Bear Common Lisp
|
||||
BOOTSTRAP_DESC= Supported languages of the build host
|
||||
CCL_DESC= Clozure Common Lisp
|
||||
CMUCL_DESC= Carnegie Mellon University Common Lisp
|
||||
COMPRESSION_DESC= Enable core compression
|
||||
LINKABLE_RUNTIME_DESC= Enable SB-LINKABLE-RUNTIME feature (experimental)
|
||||
QSHOW_DESC= C runtime with low-level debugging output
|
||||
SAFEPOINT_DESC= Using safepoints instead of signals
|
||||
SBCL_DESC= Steel Bank Common Lisp
|
||||
SIMD_DESC= Enable SB-SIMD (requires CPUs supporting AVX2)
|
||||
XREF_DESC= XREF data for SBCL internals
|
||||
|
||||
ABCL_BUILD_DEPENDS= abcl:lang/abcl
|
||||
@ -60,6 +63,11 @@ CCL_VARS= XC_HOST="ccl --no-init --batch --quiet"
|
||||
CMUCL_BUILD_DEPENDS= lisp:lang/cmucl
|
||||
CMUCL_VARS= XC_HOST="lisp -nositeinit -noinit -batch -quiet"
|
||||
|
||||
COMPRESSION_LIB_DEPENDS= libzstd.so:archivers/zstd
|
||||
COMPRESSION_USES= localbase:ldflags
|
||||
COMPRESSION_VARS= MAKE_SH_ARGS+="--with-sb-core-compression"
|
||||
COMPRESSION_VARS_OFF= MAKE_SH_ARGS+="--without-sb-core-compression"
|
||||
|
||||
DOCS_VARS= INFO="asdf sbcl"
|
||||
|
||||
LINKABLE_RUNTIME_VARS= MAKE_SH_ARGS+="--with-sb-linkable-runtime"
|
||||
@ -75,6 +83,9 @@ SAFEPOINT_VARS_OFF= MAKE_SH_ARGS+="--without-sb-safepoint --without-sb-thruption
|
||||
SBCL_DISTFILES= ${PORTNAME}-${SBCL_BOOT_LIST:M${ARCHOS_PATTERN}}-binary${EXTRACT_SUFX}:binaries
|
||||
SBCL_VARS= XC_HOST="${BOOT_WRKSRC}/src/runtime/sbcl --core ${BOOT_WRKSRC}/output/sbcl.core --noinform --disable-debugger --no-sysinit --no-userinit"
|
||||
|
||||
SIMD_VARS= MAKE_SH_ARGS+="--with-sb-simd"
|
||||
SIMD_VARS_OFF= MAKE_SH_ARGS+="--without-sb-simd"
|
||||
|
||||
THREADS_VARS= MAKE_SH_ARGS+="--with-sb-thread"
|
||||
THREADS_VARS_OFF= MAKE_SH_ARGS+="--without-sb-thread"
|
||||
|
||||
@ -84,9 +95,6 @@ UNICODE_VARS_OFF= MAKE_SH_ARGS+="--without-sb-unicode"
|
||||
XREF_VARS= MAKE_SH_ARGS+="--with-sb-xref-for-internals"
|
||||
XREF_VARS_OFF= MAKE_SH_ARGS+="--without-sb-xref-for-internals"
|
||||
|
||||
ZLIB_VARS= MAKE_SH_ARGS+="--with-sb-core-compression"
|
||||
ZLIB_VARS_OFF= MAKE_SH_ARGS+="--without-sb-core-compression"
|
||||
|
||||
BOOTVERSION= 1.2.7
|
||||
CONMODULES= asdf sb-aclrepl sb-bsd-sockets sb-cltl2 sb-concurrency sb-cover \
|
||||
sb-executable sb-gmp sb-grovel sb-introspect sb-md5 sb-mpfr \
|
||||
@ -112,6 +120,12 @@ PLIST_SUB+= LINKABLE_RUNTIME=""
|
||||
PLIST_SUB+= LINKABLE_RUNTIME="@comment "
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSIMD}
|
||||
PLIST_SUB+= SIMD=""
|
||||
.else
|
||||
PLIST_SUB+= SIMD="@comment "
|
||||
.endif
|
||||
|
||||
# for port maintenance, invoke "make makesum PLUS_BOOTSTRAPS=1"
|
||||
.if defined (PLUS_BOOTSTRAPS)
|
||||
. for B in ${SBCL_BOOT_LIST}
|
||||
@ -129,7 +143,7 @@ post-patch:
|
||||
${WRKSRC}/doc/manual/start-stop.texinfo
|
||||
|
||||
do-build:
|
||||
(cd ${WRKSRC} && ${SH} make.sh ${MAKE_SH_ARGS})
|
||||
(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} LINKFLAGS="${LDFLAGS}" ${SH} make.sh ${MAKE_SH_ARGS})
|
||||
|
||||
post-build-DOCS-on:
|
||||
${DO_MAKE_BUILD} -C ${WRKSRC}/doc/manual info html
|
||||
@ -147,6 +161,12 @@ do-install:
|
||||
${INSTALL_DATA} ${WRKSRC}/contrib/${M}/*.[la]* \
|
||||
${STAGEDIR}${PREFIX}/lib/${PORTNAME}/${M}/
|
||||
.endfor
|
||||
.if ${PORT_OPTIONS:MSIMD}
|
||||
# sb-simd has its code in './code'
|
||||
${MKDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/sb-simd
|
||||
${INSTALL_DATA} ${WRKSRC}/contrib/sb-simd/code/*.[la]* \
|
||||
${STAGEDIR}${PREFIX}/lib/${PORTNAME}/sb-simd/
|
||||
.endif
|
||||
${INSTALL_DATA} ${WRKDIR}/sbclrc ${STAGEDIR}${PREFIX}/etc/sbclrc.sample
|
||||
|
||||
post-install:
|
||||
|
@ -79,6 +79,8 @@ lib/sbcl/contrib/sb-rotate-byte.asd
|
||||
lib/sbcl/contrib/sb-rotate-byte.fasl
|
||||
lib/sbcl/contrib/sb-rt.asd
|
||||
lib/sbcl/contrib/sb-rt.fasl
|
||||
%%SIMD%%lib/sbcl/contrib/sb-simd.asd
|
||||
%%SIMD%%lib/sbcl/contrib/sb-simd.fasl
|
||||
lib/sbcl/contrib/sb-simple-streams.asd
|
||||
lib/sbcl/contrib/sb-simple-streams.fasl
|
||||
lib/sbcl/contrib/sb-sprof.asd
|
||||
@ -181,6 +183,35 @@ lib/sbcl/sb-rotate-byte/x86-64-vm.lisp
|
||||
lib/sbcl/sb-rotate-byte/x86-vm.lisp
|
||||
lib/sbcl/sb-rt/rt.lisp
|
||||
lib/sbcl/sb-rt/sb-rt.asd
|
||||
%%SIMD%%lib/sbcl/sb-simd/constants.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/cpu-identification.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-arefs.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-associatives.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-comparisons.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-custom-vops.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-fake-vops.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-ifs.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-instruction-vops.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-instructions.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-modify-macros.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-reducers.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-reffers.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-rounders.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-scalar-casts.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-simd-casts.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-types.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-unequals.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-vop-functions.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-vref-vops.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/define-vrefs.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/instruction-set-case.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/instruction-set.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/missing-instruction.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/packages.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/printable.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/record.lisp
|
||||
%%SIMD%%lib/sbcl/sb-simd/sb-simd.asd
|
||||
%%SIMD%%lib/sbcl/sb-simd/utilities.lisp
|
||||
lib/sbcl/sb-simple-streams/classes.lisp
|
||||
lib/sbcl/sb-simple-streams/direct.lisp
|
||||
lib/sbcl/sb-simple-streams/file.lisp
|
||||
|
Loading…
Reference in New Issue
Block a user