commit:     e4707343c9b2c5c1bfc27d09a6025b191fc7093a
Author:     Eric Joldasov <bratishkaerik <AT> getgoogleoff <DOT> me>
AuthorDate: Thu Mar  9 17:01:20 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 11 17:15:10 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e4707343

sys-fs/ncdu: create and use zig variable in makefile

Big thanks to Florian Schmaus <flow <AT> gentoo.org> for creating and
upstreaming this patch! I guess I contributed too much entropy and
problems to testing branch today :%

Closes: https://bugs.gentoo.org/900547
Signed-off-by: Eric Joldasov <bratishkaerik <AT> getgoogleoff.me>
Closes: https://github.com/gentoo/gentoo/pull/30023
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../ncdu-2.2.2-makefile-add-zig-variable.patch     | 48 ++++++++++++++++++++++
 sys-fs/ncdu/ncdu-2.2.2-r1.ebuild                   | 10 +++--
 2 files changed, 55 insertions(+), 3 deletions(-)

diff --git a/sys-fs/ncdu/files/ncdu-2.2.2-makefile-add-zig-variable.patch 
b/sys-fs/ncdu/files/ncdu-2.2.2-makefile-add-zig-variable.patch
new file mode 100644
index 000000000000..9a118508641b
--- /dev/null
+++ b/sys-fs/ncdu/files/ncdu-2.2.2-makefile-add-zig-variable.patch
@@ -0,0 +1,48 @@
+From 74be2772499b4eb065a11477c6632146ed647dc8 Mon Sep 17 00:00:00 2001
+From: Florian Schmaus <[email protected]>
+Date: Thu, 9 Mar 2023 16:01:40 +0100
+Subject: [PATCH] Makefile: Add ZIG variable and build target
+
+The ZIG variable helps to test ncdu with different zig installations,
+and it allows Gentoo to inject the zig version that should be used to
+build zig into the Makefile.
+
+Also add a phony 'build' target as first target to the Makefile so
+that it becomes the default target. This allows the Gentoo package to
+use the default src_compile() function.
+
+See also https://bugs.gentoo.org/900547
+---
+ Makefile | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 7cdbca3..eb854c6 100644
+--- a/Makefile
++++ b/Makefile
+@@ -4,6 +4,8 @@
+ # Optional semi-standard Makefile with some handy tools.
+ # Ncdu itself can be built with just the zig build system.
+ 
++ZIG ?= zig
++
+ PREFIX ?= /usr/local
+ BINDIR ?= ${PREFIX}/bin
+ MANDIR ?= ${PREFIX}/share/man/man1
+@@ -11,11 +13,14 @@ ZIG_FLAGS ?= -Drelease-fast
+ 
+ NCDU_VERSION=$(shell grep 'program_version = "' src/main.zig | sed -e 
's/^.*"\(.\+\)".*$$/\1/')
+ 
++.PHONY: build
++build: release doc
++
+ release:
+-      zig build ${ZIG_FLAGS}
++      $(ZIG) build ${ZIG_FLAGS}
+ 
+ debug:
+-      zig build
++      $(ZIG) build
+ 
+ clean:
+       rm -rf zig-cache zig-out

diff --git a/sys-fs/ncdu/ncdu-2.2.2-r1.ebuild b/sys-fs/ncdu/ncdu-2.2.2-r1.ebuild
index b8f45c71bf2c..74c745fa8f11 100644
--- a/sys-fs/ncdu/ncdu-2.2.2-r1.ebuild
+++ b/sys-fs/ncdu/ncdu-2.2.2-r1.ebuild
@@ -30,6 +30,10 @@ BDEPEND="
 
 VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/yoranheling.asc
 
+PATCHES=(
+       "${FILESDIR}/${P}-makefile-add-zig-variable.patch"
+)
+
 # see https://github.com/ziglang/zig/issues/3382
 # For now, Zig doesn't support CFLAGS/LDFLAGS/etc.
 QA_FLAGS_IGNORED="usr/bin/ncdu"
@@ -120,9 +124,9 @@ src_unpack() {
        default
 }
 
-src_compile() {
-       ezig build -Drelease-fast
-       edo pod2man --center "ncdu manual" --release "ncdu-${PV}" ncdu.pod 
>ncdu.1
+src_configure() {
+       zig-set_EZIG
+       export ZIG=${EZIG}
 }
 
 src_test() {

Reply via email to