From 4852924d87e1d9940dfa2f88decc720ade044121 Mon Sep 17 00:00:00 2001 From: triallax Date: Sat, 22 Jul 2023 14:55:38 +0100 Subject: [PATCH] openjdk11: fix armv7l-musl build. --- .../openjdk11/files/musl_patches/arm.patch | 30 +++++++++++++++++++ .../openjdk11/patches/fix-musl-detection.diff | 20 +++++++++++++ srcpkgs/openjdk11/template | 1 + 3 files changed, 51 insertions(+) create mode 100644 srcpkgs/openjdk11/files/musl_patches/arm.patch create mode 100644 srcpkgs/openjdk11/patches/fix-musl-detection.diff diff --git a/srcpkgs/openjdk11/files/musl_patches/arm.patch b/srcpkgs/openjdk11/files/musl_patches/arm.patch new file mode 100644 index 00000000000000..12d0022c149171 --- /dev/null +++ b/srcpkgs/openjdk11/files/musl_patches/arm.patch @@ -0,0 +1,30 @@ +Patches for musl taken from Alpine linux: https://git.alpinelinux.org/aports/commit/?id=8a1ae17d4a9af54285c7891a680620e7e24c6280 +--- old/src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp ++++ new/src/hotspot/os_cpu/linux_arm/os_linux_arm.cpp +@@ -71,7 +71,6 @@ + # include + # include + # include +-# include + # include + + #define SPELL_REG_SP "sp" +@@ -104,6 +103,18 @@ + #define ARM_REGS_IN_CONTEXT 31 + + #else ++ ++// Stupid hack as the origin if below doesnt compile with gcc 8.2.0: ++// ++// os_linux_arm.cpp:114:5: error: missing binary operator before token "(" ++// #if NGREG == 16 ++// ^~~~~ ++// ++// The NGREG is 18, so force it to that value. ++#ifdef NGREG ++# undef NGREG ++#endif ++#define NGREG 18 + + #if NGREG == 16 + // These definitions are based on the observation that until diff --git a/srcpkgs/openjdk11/patches/fix-musl-detection.diff b/srcpkgs/openjdk11/patches/fix-musl-detection.diff new file mode 100644 index 00000000000000..d6c0c3b201408c --- /dev/null +++ b/srcpkgs/openjdk11/patches/fix-musl-detection.diff @@ -0,0 +1,20 @@ +--- a/make/autoconf/platform.m4 2023-07-05 08:22:24.000000000 +0100 ++++ b/make/autoconf/platform.m4 2023-07-22 14:48:46.291451605 +0100 +@@ -214,7 +214,7 @@ + AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_LIBC], + [ + case "$1" in +- *linux*-musl) ++ *linux*-musl*) + VAR_LIBC=musl + ;; + *linux*-gnu) +@@ -232,7 +232,7 @@ + AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_ABI], + [ + case "$1" in +- *linux*-musl) ++ *linux*-musl*) + VAR_ABI=musl + ;; + *linux*-gnu) diff --git a/srcpkgs/openjdk11/template b/srcpkgs/openjdk11/template index aed39c3b41e26d..b5dd94241a0c8e 100644 --- a/srcpkgs/openjdk11/template +++ b/srcpkgs/openjdk11/template @@ -9,6 +9,7 @@ build_style=gnu-configure configure_args=" --disable-warnings-as-errors --prefix=${XBPS_DESTDIR}/${XBPS_CROSS_TRIPLET}/${pkgname}-${version}/usr/lib + --with-jobs=${XBPS_ORIG_MAKEJOBS} --enable-unlimited-crypto --with-zlib=system --with-libjpeg=system