summaryrefslogtreecommitdiff
path: root/lang/crystal/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lang/crystal/Makefile')
-rw-r--r--lang/crystal/Makefile68
1 files changed, 39 insertions, 29 deletions
diff --git a/lang/crystal/Makefile b/lang/crystal/Makefile
index 7fd3def6ee1f..c30e77f3236f 100644
--- a/lang/crystal/Makefile
+++ b/lang/crystal/Makefile
@@ -1,51 +1,50 @@
PORTNAME= crystal
-DISTVERSION= 1.10.1
-PORTREVISION= 1
+DISTVERSION= 1.16.3
CATEGORIES= lang
-MASTER_SITES= https://github.com/dmgk/crystal-bootstrap/releases/download/${BOOTSTRAP_VERSION}/:bootstrap \
+MASTER_SITES= https://github.com/dmgk/crystal-bootstrap/releases/download/${_BOOTSTRAP_VERSION}/:bootstrap \
LOCAL/dmgk/crystal:bootstrap
-DISTFILES= ${BOOTSTRAP_NAME}.tar.xz:bootstrap
+DISTFILES= ${_BOOTSTRAP_NAME}.tar.xz:bootstrap
DIST_SUBDIR= ${PORTNAME}
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= dch@FreeBSD.org
COMMENT= Language with Ruby-like syntax and static type checking
WWW= https://crystal-lang.org
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
-ONLY_FOR_ARCHS= aarch64 amd64
+ONLY_FOR_ARCHS= aarch64 amd64
ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler
-BUILD_DEPENDS= ${LOCALBASE}/bin/llvm-config${BOOTSTRAP_LLVM_VERSION}:devel/llvm${BOOTSTRAP_LLVM_VERSION} \
+BUILD_DEPENDS= ${LOCALBASE}/bin/llvm-config${_BOOTSTRAP_LLVM_VERSION}:devel/llvm${_BOOTSTRAP_LLVM_VERSION} \
git:devel/git
-LIB_DEPENDS= libLLVM-${LLVM_VERSION}.so:devel/llvm${LLVM_VERSION} \
- libevent.so:devel/libevent \
+LIB_DEPENDS= libevent.so:devel/libevent \
libffi.so:devel/libffi \
libgc-threaded.so:devel/boehm-gc-threaded \
libgmp.so:math/gmp \
+ libLLVM-${_LLVM_VERSION}.so:devel/llvm${_LLVM_VERSION} \
libpcre.so:devel/pcre \
libpcre2-8.so:devel/pcre2 \
libyaml.so:textproc/libyaml
RUN_DEPENDS= pkg-config:devel/pkgconf
USES= compiler gmake gnome pkgconfig ssl
-USE_GNOME= libxml2
USE_GITHUB= yes
GH_ACCOUNT= crystal-lang
+USE_GNOME= libxml2
-COMMIT_ID= 84f389ac5424
-LLVM_VERSION?= 16
-BOOTSTRAP_LLVM_VERSION= 14
-BOOTSTRAP_VERSION= 1.5.1
-BOOTSTRAP_NAME= crystal-${BOOTSTRAP_VERSION}-${ARCH}-llvm${BOOTSTRAP_LLVM_VERSION}
+_BOOTSTRAP_LLVM_VERSION= 14
+_BOOTSTRAP_NAME= crystal-${_BOOTSTRAP_VERSION}-${ARCH}-llvm${_BOOTSTRAP_LLVM_VERSION}
+_BOOTSTRAP_VERSION= 1.5.1
+_COMMIT_ID= 84f389ac5424
+_LLVM_VERSION?= 20
-MAKE_ARGS= LLVM_CONFIG="${LOCALBASE}/bin/llvm-config${LLVM_VERSION}" \
+MAKE_ARGS= CRYSTAL_CACHE_DIR="${WRKDIR}/cache" \
+ CRYSTAL_CONFIG_BUILD_COMMIT="${_COMMIT_ID}" \
CRYSTAL_CONFIG_PATH="lib:${PREFIX}/lib/${PORTNAME}" \
- CRYSTAL_CONFIG_BUILD_COMMIT="${COMMIT_ID}" \
- CRYSTAL_CACHE_DIR="${WRKDIR}/cache" \
- FLAGS="--progress --stats --threads ${MAKE_JOBS_NUMBER} ${OPT_FLAGS}"
+ FLAGS="--progress --stats --threads ${MAKE_JOBS_NUMBER} ${OPT_FLAGS}" \
+ LLVM_CONFIG="${LOCALBASE}/bin/llvm-config${_LLVM_VERSION}"
TEST_ARGS= ${MAKE_ARGS:S/release=1//}
TEST_TARGET= spec
@@ -58,8 +57,9 @@ OPTIONS_DEFAULT= INTERPRETER
INTERPRETER_DESC= Enable interpreter (experimental)
-DEBUG_VARS= opt_flags+="--debug" strip=
-DEBUG_VARS_OFF= opt_flags+="--release --no-debug"
+DEBUG_VARS= OPT_FLAGS+="--debug" \
+ STRIP=
+DEBUG_VARS_OFF= OPT_FLAGS+="--release --no-debug"
INTERPRETER_MAKE_ARGS= interpreter=1
STATIC_MAKE_ARGS= static=1
@@ -104,12 +104,16 @@ pre-test:
@${CHMOD} +x ${WRKSRC}/src/llvm/ext/find-llvm-config
post-build-DOCS-on:
- (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} docs)
+ (cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} docs)
do-install:
- ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/.build/crystal ${STAGEDIR}${PREFIX}/bin/
- ${INSTALL_MAN} ${INSTALL_WRKSRC}/man/crystal.1 ${STAGEDIR}${PREFIX}/share/man/man1/
- (cd ${INSTALL_WRKSRC}/src && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/${PORTNAME})
+ ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/.build/crystal \
+ ${STAGEDIR}${PREFIX}/bin/
+ ${INSTALL_MAN} ${INSTALL_WRKSRC}/man/crystal.1 \
+ ${STAGEDIR}${PREFIX}/share/man/man1/
+ (cd ${INSTALL_WRKSRC}/src && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/${PORTNAME})
${MKDIR} ${STAGEDIR}${LOCALBASE}/etc/bash_completion.d
${MKDIR} ${STAGEDIR}${LOCALBASE}/share/zsh/site-functions
${INSTALL_DATA} ${INSTALL_WRKSRC}/etc/completion.bash \
@@ -118,17 +122,23 @@ do-install:
${STAGEDIR}${LOCALBASE}/share/zsh/site-functions/_crystal
do-install-DOCS-on:
- (cd ${INSTALL_WRKSRC}/docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
+ (cd ${INSTALL_WRKSRC}/docs && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR})
do-install-EXAMPLES-on:
- (cd ${INSTALL_WRKSRC}/samples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
+ (cd ${INSTALL_WRKSRC}/samples && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
.if !defined(_CRYSTAL_MAKESUM_GUARD)
makesum:
- ${MAKE} -D_CRYSTAL_MAKESUM_GUARD makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} DISTINFO_FILE=${DISTINFO_FILE}.tmp
+ ${MAKE} -D_CRYSTAL_MAKESUM_GUARD makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} \
+ DISTINFO_FILE=${DISTINFO_FILE}.tmp
.for arch in ${ONLY_FOR_ARCHS:O:[2..-1]}
${MAKE} -D_CRYSTAL_MAKESUM_GUARD makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch}
- ${SED} 1d ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE}.tmp
+ ${SED} 1d \
+ ${DISTINFO_FILE}.${arch} \
+ >> \
+ ${DISTINFO_FILE}.tmp
${RM} ${DISTINFO_FILE}.${arch}
.endfor
${AWK} '!seen[$$0]++' ${DISTINFO_FILE}.tmp > ${DISTINFO_FILE}