diff options
Diffstat (limited to 'lang/zig011/Makefile')
-rw-r--r-- | lang/zig011/Makefile | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/lang/zig011/Makefile b/lang/zig011/Makefile new file mode 100644 index 000000000000..ca171397ecec --- /dev/null +++ b/lang/zig011/Makefile @@ -0,0 +1,68 @@ +PORTNAME= zig +DISTVERSION= 0.11.0 +CATEGORIES= lang +MASTER_SITES= https://ziglang.org/download/${DISTVERSION}/ \ + https://ziglang.org/builds/ +PKGNAMESUFFIX= 011 +# fetch prebuilt platform-independent docs +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ + zig-freebsd-x86_64-${DISTVERSION}${EXTRACT_SUFX} + +PATCH_SITES= https://github.com/ziglang/${PORTNAME}/commit/ + +MAINTAINER= bsd@orsolic.org +COMMENT= Language designed for robustness, optimality, and maintainability (deprecated 0.11.* series) +WWW= https://ziglang.org/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +ONLY_FOR_ARCHS= aarch64 amd64 +ONLY_FOR_ARCHS_REASON= not yet supported + +BUILD_DEPENDS= icu>=71:devel/icu \ + llvm${_LLVM_VER}>=0:devel/llvm${_LLVM_VER} + +LIB_DEPENDS= libzstd.so:archivers/zstd + +USES= cmake compiler:c++11-lang localbase:ldflags tar:xz +CMAKE_ARGS+= -DZIG_TARGET_MCPU=baseline # ensure we run everywhere +CMAKE_ON= THREADS_PREFER_PTHREAD_FLAG + +CONFLICTS_INSTALL= zig zig010 zig-devel +PORTSCOUT= limit:^0\.11\. + +OPTIONS_DEFINE= DOCS STATIC +OPTIONS_DEFAULT= DOCS + +STATIC_DESC= sets ZIG_STATIC to avoid 800MiB LLVM runtime dependency + +STATIC_RUN_DEPENDS_OFF= llvm${_LLVM_VER}>=0:devel/llvm${_LLVM_VER} +STATIC_CMAKE_BOOL= ZIG_STATIC +STATIC_LDFLAGS= -licudata -licuuc -llzma -lm -lmd -lxml2 -lz -lzstd + +_LLVM_VER= 16 +_ZIG_BIN= ${STAGEDIR}${PREFIX}/bin/zig + +post-configure-STATIC-on: + @${REINPLACE_CMD} 's/-Wl,-Bdynamic//' \ + ${BUILD_WRKSRC}/build.ninja + +post-install: + @${RM} -rf ${WRKDIR}/.build + @${RM} -rf ${STAGEDIR}/wrkdirs + +post-install-DOCS-on: + ${MKDIR} ${STAGEDIR}${DOCSDIR}/std +.for f in langref.html std/data.js std/main.js std/index.html + ${INSTALL_MAN} ${WRKDIR}/zig-freebsd-x86_64-${DISTVERSION}/doc/${f} \ + ${STAGEDIR}${DOCSDIR}/${f} +.endfor + +do-test: + mkdir ${WRKDIR}/cache + (cd ${WRKSRC} && \ + ${_ZIG_BIN} build test-behavior --cache-dir ${WRKDIR}/cache \ + --global-cache-dir ${WRKDIR}/cache --zig-lib-dir ${WRKSRC}/lib) + +.include <bsd.port.mk> |