Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Aug 2026 15:21:55 +0000
From:      Piotr Kubaj <pkubaj@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 1900152b6f27 - main - net/quiche: fix powerpc64* build
Message-ID:  <6a70b213.3c0e1.2634b32@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=1900152b6f273f28b0df5900bfedab7f115be597

commit 1900152b6f273f28b0df5900bfedab7f115be597
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2026-08-03 10:12:37 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2026-08-03 15:21:29 +0000

    net/quiche: fix powerpc64* build
    
    In file included from /wrkdirs/usr/ports/net/quiche/work/target/release/build/boring-sys-e26f46e56ac7f264/out/boringssl/err_data.c:17:
      /wrkdirs/usr/ports/net/quiche/work/target/release/build/boring-sys-e26f46e56ac7f264/out/boringssl/src/include/openssl/base.h:124:2: error: "Unknown target CPU"
        124 | #error "Unknown target CPU"
            |  ^
      1 error generated.
---
 net/quiche/Makefile                                        |  4 ++++
 ...ng-sys-4.17.0_deps_boringssl_src_include_openssl_base.h | 14 ++++++++++++++
 2 files changed, 18 insertions(+)

diff --git a/net/quiche/Makefile b/net/quiche/Makefile
index 781e88976583..478813822e77 100644
--- a/net/quiche/Makefile
+++ b/net/quiche/Makefile
@@ -26,6 +26,10 @@ CARGO_TEST_ARGS+=	--all-targets
 
 MAKE_ENV+=	BORING_BSSL_RUST_CPPLIB=c++
 
+# BoringSSL ships no PowerPC assembly, so use the portable C implementations.
+CFLAGS_powerpc64le=	-DOPENSSL_NO_ASM
+CXXFLAGS_powerpc64le=	-DOPENSSL_NO_ASM
+
 RUSTFLAGS=	${ARCH:S/i386/YES/:C/^[a-z].*//:S/YES/-C target-feature=+sse,+sse2/} # add sse sse2 target-features only on i386
 
 PLIST_FILES=	bin/quiche-client \
diff --git a/net/quiche/files/patch-cargo-crates_boring-sys-4.17.0_deps_boringssl_src_include_openssl_base.h b/net/quiche/files/patch-cargo-crates_boring-sys-4.17.0_deps_boringssl_src_include_openssl_base.h
new file mode 100644
index 000000000000..2fd2d3d15ccc
--- /dev/null
+++ b/net/quiche/files/patch-cargo-crates_boring-sys-4.17.0_deps_boringssl_src_include_openssl_base.h
@@ -0,0 +1,14 @@
+--- cargo-crates/boring-sys-4.17.0/deps/boringssl/src/include/openssl/base.h.orig	2026-08-03 09:53:19 UTC
++++ cargo-crates/boring-sys-4.17.0/deps/boringssl/src/include/openssl/base.h
+@@ -116,6 +116,11 @@ extern "C" {
+ #define OPENSSL_32_BIT
+ #elif defined(__myriad2__)
+ #define OPENSSL_32_BIT
++#elif defined(__powerpc64__)
++// PowerPC64 has no BoringSSL assembly; the portable C code is used and the
++// build must define OPENSSL_NO_ASM.  BoringSSL only officially supports
++// little-endian, so big-endian ppc64 is unverified.
++#define OPENSSL_64_BIT
+ #else
+ // Note BoringSSL only supports standard 32-bit and 64-bit two's-complement,
+ // little-endian architectures. Functions will not produce the correct answer


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a70b213.3c0e1.2634b32>