Fri Apr 26 09:57:34 2024 UTC (17d)
zig: make pie again.


(nikita)
diff -r1.34 -r1.35 pkgsrc/lang/zig/Makefile

cvs diff -r1.34 -r1.35 pkgsrc/lang/zig/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/zig/Makefile 2024/04/25 10:05:24 1.34
+++ pkgsrc/lang/zig/Makefile 2024/04/26 09:57:34 1.35
@@ -1,47 +1,49 @@ @@ -1,47 +1,49 @@
1# $NetBSD: Makefile,v 1.34 2024/04/25 10:05:24 nikita Exp $ 1# $NetBSD: Makefile,v 1.35 2024/04/26 09:57:34 nikita Exp $
2 2
3DISTNAME= zig-0.12.0 3DISTNAME= zig-0.12.0
4CATEGORIES= lang 4CATEGORIES= lang
5MASTER_SITES= https://ziglang.org/download/${PKGVERSION_NOREV}/ 5MASTER_SITES= https://ziglang.org/download/${PKGVERSION_NOREV}/
6EXTRACT_SUFX= .tar.xz 6EXTRACT_SUFX= .tar.xz
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://ziglang.org/ 9HOMEPAGE= https://ziglang.org/
10COMMENT= Programming language designed for robustness and clarity 10COMMENT= Programming language designed for robustness and clarity
11LICENSE= mit 11LICENSE= mit
12 12
13# Broken at least on *BSD, needs a new release, 0.11.0 does not build 13# Broken at least on *BSD, needs a new release, 0.11.0 does not build
14# stage 3 of the build process (fixed upstream). 14# stage 3 of the build process (fixed upstream).
15USE_CXX_FEATURES+= c++14 15USE_CXX_FEATURES+= c++14
16USE_LANGUAGES= c c++ 16USE_LANGUAGES= c c++
17USE_TOOLS+= bash:run 17USE_TOOLS+= bash:run
18 18
19CMAKE_CONFIGURE_ARGS+= -DCMAKE_BUILD_TYPE=Release 19CMAKE_CONFIGURE_ARGS+= -DCMAKE_BUILD_TYPE=Release
20CMAKE_CONFIGURE_ARGS+= -DZIG_SHARED_LLVM=ON 20CMAKE_CONFIGURE_ARGS+= -DZIG_SHARED_LLVM=ON
21CMAKE_CONFIGURE_ARGS+= -DCMAKE_INSTALL_PREFIX=${DESTDIR}${PREFIX} 21CMAKE_CONFIGURE_ARGS+= -DCMAKE_INSTALL_PREFIX=${DESTDIR}${PREFIX}
22# avoid full-cu-features available to build host, 22# avoid full-cu-features available to build host,
23# in other words ensure that we run everywhere 23# in other words ensure that we run everywhere
24CMAKE_CONFIGURE_ARGS+= -DZIG_TARGET_MCPU=baseline 24CMAKE_CONFIGURE_ARGS+= -DZIG_TARGET_MCPU=baseline
 25CMAKE_CONFIGURE_ARGS+= -DZIG_PIE=ON
25 26
26CHECK_PORTABILITY_SKIP+= ci/azure/macos_script 27CHECK_PORTABILITY_SKIP+= ci/azure/macos_script
27BUILDLINK_TRANSFORM+= rm:-Werror 28BUILDLINK_TRANSFORM+= rm:-Werror
28 29
29UNLIMIT_RESOURCES= stacksize 30UNLIMIT_RESOURCES= stacksize
30 31
31# \todo: There is currently an issue building this as a PIE 32# \todo: There is currently an issue building this as a PIE
32MKPIE_SUPPORTED= no 33#MKPIE_SUPPORTED= no
33# RELRO checks fail for this package at the moment 34# RELRO checks fail for this package at the moment
34RELRO_SUPPORTED= no 35#RELRO_SUPPORTED= no
 36# TODO: /usr/bin/env + /bin/env in lib/std/zig/system.zig
35 37
36# after install, because the zig binary ends up in paths like 38# after install, because the zig binary ends up in paths like
37# ./zig-0.10.1/zig-cache/o/e6445b80597d6bc8fe865e7254800ac9/zig 39# ./zig-0.10.1/zig-cache/o/e6445b80597d6bc8fe865e7254800ac9/zig
38# unless we want to run find for the executable here? 40# unless we want to run find for the executable here?
39do-test: 41do-test:
40 mkdir ${WRKDIR}/cache 42 mkdir ${WRKDIR}/cache
41 cd ${WRKSRC} && \ 43 cd ${WRKSRC} && \
42 ${DESTDIR}${PREFIX}/bin/zig build test-behavior \ 44 ${DESTDIR}${PREFIX}/bin/zig build test-behavior \
43 --cache-dir ${WRKDIR}/cache --global-cache-dir ${WRKDIR}/cache \ 45 --cache-dir ${WRKDIR}/cache --global-cache-dir ${WRKDIR}/cache \
44 --zig-lib-dir ${WRKSRC}/lib 46 --zig-lib-dir ${WRKSRC}/lib
45 47
46.include "../../devel/cmake/build.mk" 48.include "../../devel/cmake/build.mk"
47.include "../../devel/lld/buildlink3.mk" 49.include "../../devel/lld/buildlink3.mk"