diff --git a/devel/android-tools/Makefile b/devel/android-tools/Makefile index fe4344fe0390..6cbe68d69a11 100644 --- a/devel/android-tools/Makefile +++ b/devel/android-tools/Makefile @@ -1,31 +1,35 @@ PORTNAME= android-tools PORTVERSION= 35.0.2 CATEGORIES= devel MASTER_SITES= https://github.com/nmeum/android-tools/releases/download/${PORTVERSION}/ MAINTAINER= bapt@FreeBSD.org COMMENT= Android debugging tools WWW= https://github.com/nmeum/android-tools LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= googletest>0:devel/googletest LIB_DEPENDS= libbrotlicommon.so:archivers/brotli \ libfmt.so:devel/libfmt \ liblz4.so:archivers/liblz4 \ libpcre2-8.so:devel/pcre2 \ libprotobuf.so:devel/protobuf \ libzstd.so:archivers/zstd USES= cmake compiler:c++20-lang localbase:ldflags pkgconfig python shebangfix tar:xz SHEBANG_FILES= vendor/avb/avbtool.py \ vendor/libufdt/utils/src/mkdtboimg.py \ vendor/mkbootimg/mkbootimg.py \ vendor/mkbootimg/repack_bootimg.py \ vendor/mkbootimg/unpack_bootimg.py CMAKE_ARGS= -DANDROID_TOOLS_PATCH_VENDOR:BOOL=OFF +# BoringSSL ships no PowerPC assembly, so use the portable C implementations. +CFLAGS_powerpc64le= -DOPENSSL_NO_ASM +CXXFLAGS_powerpc64le= -DOPENSSL_NO_ASM + .include diff --git a/devel/android-tools/files/patch-vendor_boringssl_include_openssl_target.h b/devel/android-tools/files/patch-vendor_boringssl_include_openssl_target.h new file mode 100644 index 000000000000..a24a6bdf9f50 --- /dev/null +++ b/devel/android-tools/files/patch-vendor_boringssl_include_openssl_target.h @@ -0,0 +1,14 @@ +--- vendor/boringssl/include/openssl/target.h.orig 2026-08-03 09:03:49 UTC ++++ vendor/boringssl/include/openssl/target.h +@@ -54,6 +54,11 @@ + #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 + // The list above enumerates the platforms that BoringSSL supports. For these + // platforms we keep a reasonable bar of not breaking them: automated test