git: 54150f57d18a - main - graphics/jogamp-jogl: fix build on aarch64
Ronald Klop <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.cvs.ports |
|---|---|
| Message-ID | <[email protected]> |
The branch main has been updated by ronald: URL: https://cgit.FreeBSD.org/ports/commit/?id=54150f57d18af9c06a9e0dc74438ac24af1fea72 commit 54150f57d18af9c06a9e0dc74438ac24af1fea72 Author: Ronald Klop <[email protected]> AuthorDate: 2026-08-18 17:15:59 +0000 Commit: Ronald Klop <[email protected]> CommitDate: 2026-08-19 12:20:16 +0000 graphics/jogamp-jogl: fix build on aarch64 It needed similar build file glue as powerpc64. Approved by: no maintainer --- graphics/jogamp-jogl/Makefile | 2 +- .../jogamp-jogl/files/patch-gluegen_make_build.xml | 28 ++++++++++++---- .../patch-gluegen_make_gluegen-cpptasks-base.xml | 38 +++++++++++++++++----- .../files/patch-jogl_make_build-jogl.xml | 18 +++++++--- .../files/patch-jogl_make_build-nativewindow.xml | 18 ++++++++-- .../files/patch-jogl_make_build-newt.xml | 26 ++++++++++++--- 6 files changed, 103 insertions(+), 27 deletions(-) diff --git a/graphics/jogamp-jogl/Makefile b/graphics/jogamp-jogl/Makefile index 903e31b27e07..e2989ef78d66 100644 --- a/graphics/jogamp-jogl/Makefile +++ b/graphics/jogamp-jogl/Makefile @@ -23,7 +23,7 @@ USES= compiler java:ant,run tar:xz xorg USE_XORG= x11 xcursor xi xrandr xrender xxf86vm NO_SHLIB_REQUIRES_GLOB= libjawt.so libjvm.so -ONLY_FOR_ARCHS= amd64 i386 powerpc64 powerpc64le +ONLY_FOR_ARCHS= aarch64 amd64 i386 powerpc64 powerpc64le PATCH_WRKSRC= ${WRKDIR} BUILD_WRKSRC= ${WRKDIR}/jogl/make diff --git a/graphics/jogamp-jogl/files/patch-gluegen_make_build.xml b/graphics/jogamp-jogl/files/patch-gluegen_make_build.xml index 6d91e8ace857..25d8edfb5465 100644 --- a/graphics/jogamp-jogl/files/patch-gluegen_make_build.xml +++ b/graphics/jogamp-jogl/files/patch-gluegen_make_build.xml @@ -1,6 +1,20 @@ --- gluegen/make/build.xml.orig 2025-08-30 23:30:24 UTC +++ gluegen/make/build.xml -@@ -435,10 +435,24 @@ +@@ -428,6 +428,13 @@ + <property name="c.src.dir.os" value="unix" /> + </target> + ++ <target name="declare.freebsd.arm64" if="isFreeBSDARM64"> ++ <echo message="FreeBSDARM64" /> ++ <property name="compiler.cfg.id" value="compiler.cfg.freebsd" /> ++ <property name="linker.cfg.id" value="linker.cfg.freebsd.arm64" /> ++ <property name="c.src.dir.os" value="unix" /> ++ </target> ++ + <target name="declare.freebsd.x86" if="isFreeBSDX86"> + <echo message="FreeBSDX86" /> + <property name="compiler.cfg.id" value="compiler.cfg.freebsd" /> +@@ -435,10 +442,24 @@ <property name="c.src.dir.os" value="unix" /> </target> @@ -19,14 +33,14 @@ + <property name="c.src.dir.os" value="unix" /> + </target> + -+ <target name="declare.freebsd" depends="declare.freebsd.x86,declare.freebsd.amd64,declare.freebsd.ppc64,declare.freebsd.ppc64le" if="isFreeBSD" > ++ <target name="declare.freebsd" depends="declare.freebsd.x86,declare.freebsd.amd64,declare.freebsd.arm64,declare.freebsd.ppc64,declare.freebsd.ppc64le" if="isFreeBSD" > + <property name="c.src.dir.os" value="unix" /> + </target> + <target name="declare.hpux" if="isHPUX"> <echo message="HP-UX" /> <property name="compiler.cfg.id" value="compiler.cfg.hpux" /> -@@ -457,7 +471,7 @@ +@@ -457,7 +478,7 @@ <property name="c.compiler.src.files.common" value="src/native/common/*.c" /> <property name="c.compiler.src.files.os" value="src/native/${c.src.dir.os}/*.c" /> @@ -35,7 +49,7 @@ <property name="output.lib.name.os" value="${native.library.prefix}${output.lib.name}.${native.library.suffix}" /> <uptodate property="gluegen.build.skip.native"> -@@ -680,7 +694,7 @@ +@@ -680,7 +701,7 @@ <srcfiles dir= "${src.jcpp}" includes="**"/> <srcfiles dir= "${c.grammar}" includes="*.g"/> <srcfiles dir= "${j.grammar}" includes="*.g"/> @@ -44,7 +58,7 @@ </uptodate> <uptodate property="gluegen.build.skip.java2"> <srcfiles dir= "." includes="*.xml"/> -@@ -688,7 +702,7 @@ +@@ -688,7 +709,7 @@ <srcfiles dir= "${src.jcpp}" includes="**"/> <srcfiles dir= "${c.grammar}" includes="*.g"/> <srcfiles dir= "${j.grammar}" includes="*.g"/> @@ -53,7 +67,7 @@ </uptodate> <condition property="gluegen.build.skip.java" value="true"> <or> -@@ -868,7 +882,7 @@ +@@ -868,7 +889,7 @@ </copy> <!-- Build gluegen.jar. --> @@ -62,7 +76,7 @@ <service type="javax.annotation.processing.Processor"> <provider classname="com.jogamp.gluegen.structgen.CStructAnnotationProcessor"/> </service> -@@ -921,7 +935,7 @@ +@@ -921,7 +942,7 @@ </copy> <!-- Build gluegen-rt.jar. --> diff --git a/graphics/jogamp-jogl/files/patch-gluegen_make_gluegen-cpptasks-base.xml b/graphics/jogamp-jogl/files/patch-gluegen_make_gluegen-cpptasks-base.xml index 797eb4b65af0..01d6907534c4 100644 --- a/graphics/jogamp-jogl/files/patch-gluegen_make_gluegen-cpptasks-base.xml +++ b/graphics/jogamp-jogl/files/patch-gluegen_make_gluegen-cpptasks-base.xml @@ -1,9 +1,15 @@ --- gluegen/make/gluegen-cpptasks-base.xml.orig 2025-08-30 23:30:24 UTC +++ gluegen/make/gluegen-cpptasks-base.xml -@@ -334,6 +334,18 @@ +@@ -334,6 +334,24 @@ <istrue value="${isAMD64}" /> </and> </condition> ++ <condition property="isFreeBSDARM64"> ++ <and> ++ <istrue value="${isFreeBSD}" /> ++ <os arch="aarch64" /> ++ </and> ++ </condition> + <condition property="isFreeBSDPpc64"> + <and> + <istrue value="${isFreeBSD}" /> @@ -19,37 +25,46 @@ <condition property="isHPUX"> <os name="HP-UX" /> </condition> -@@ -638,8 +650,16 @@ +@@ -638,8 +656,20 @@ <property name="os.and.arch" value="freebsd-amd64" /> </target> - <target name="gluegen.cpptasks.detect.os.freebsd" depends="gluegen.cpptasks.detect.os.freebsd.amd64,gluegen.cpptasks.detect.os.freebsd.x86" unless="gluegen.cpptasks.detected.os.2" /> ++ <target name="gluegen.cpptasks.detect.os.freebsd.arm64" unless="gluegen.cpptasks.detected.os.2" if="isFreeBSDARM64"> ++ <property name="os.and.arch" value="freebsd-arm64" /> ++ </target> + + <target name="gluegen.cpptasks.detect.os.freebsd.ppc64" unless="gluegen.cpptasks.detected.os.2" if="isFreeBSDPpc64"> + <property name="os.and.arch" value="freebsd-ppc64" /> + </target> - ++ + <target name="gluegen.cpptasks.detect.os.freebsd.ppc64le" unless="gluegen.cpptasks.detected.os.2" if="isFreeBSDPpc64le"> + <property name="os.and.arch" value="freebsd-ppc64le" /> + </target> + -+ <target name="gluegen.cpptasks.detect.os.freebsd" depends="gluegen.cpptasks.detect.os.freebsd.amd64,gluegen.cpptasks.detect.os.freebsd.x86,gluegen.cpptasks.detect.os.freebsd.ppc64,gluegen.cpptasks.detect.os.freebsd.ppc64le" unless="gluegen.cpptasks.detected.os.2" /> ++ <target name="gluegen.cpptasks.detect.os.freebsd" depends="gluegen.cpptasks.detect.os.freebsd.amd64,gluegen.cpptasks.detect.os.freebsd.arm64,gluegen.cpptasks.detect.os.freebsd.x86,gluegen.cpptasks.detect.os.freebsd.ppc64,gluegen.cpptasks.detect.os.freebsd.ppc64le" unless="gluegen.cpptasks.detected.os.2" /> + <target name="gluegen.cpptasks.detect.os.hpux" unless="gluegen.cpptasks.detected.os.2" if="isHPUX"> <property name="os.and.arch" value="hpux-hppa" /> </target> -@@ -854,6 +874,8 @@ +@@ -854,6 +884,9 @@ <echo message="FreeBSD=${isFreeBSD}" /> <echo message="FreeBSDX86=${isFreeBSDX86}" /> <echo message="FreeBSDAMD64=${isFreeBSDAMD64}" /> ++ <echo message="FreeBSDARM64=${isFreeBSDARM64}" /> + <echo message="FreeBSDPpc64=${isFreeBSDPpc64}" /> + <echo message="FreeBSDPpc64le=${isFreeBSDPpc64le}" /> <echo message="HPUX=${isHPUX}" /> <echo message="IA64=${isIA64}" /> <echo message="Android=${isAndroid}" /> -@@ -1456,6 +1478,14 @@ +@@ -1456,6 +1489,18 @@ <linkerarg value="-m64"/> </linker> ++ <linker id="linker.cfg.freebsd.arm64" name="${gcc.compat.compiler}"> ++ <linkerarg value="-m64"/> ++ </linker> ++ + <linker id="linker.cfg.freebsd.ppc64" name="${gcc.compat.compiler}"> + <linkerarg value="-m64"/> + </linker> @@ -61,11 +76,18 @@ <!-- SOLARIS linker configuration --> <linker id="linker.cfg.solaris" name="${gcc.compat.compiler}"> -@@ -1873,7 +1903,21 @@ +@@ -1873,7 +1918,28 @@ <property name="java.lib.dir.platform" value="${java.home.dir}/lib"/> <!-- new default --> </target> - <target name="gluegen.cpptasks.declare.compiler.freebsd" depends="gluegen.cpptasks.declare.compiler.freebsd.x86,gluegen.cpptasks.declare.compiler.freebsd.amd64" if="isFreeBSD"> ++ <target name="gluegen.cpptasks.declare.compiler.freebsd.arm64" if="isFreeBSDARM64"> ++ <echo message="FreeBSD" /> ++ <property name="compiler.cfg.id.base" value="compiler.cfg.freebsd" /> ++ <property name="linker.cfg.id.base" value="linker.cfg.freebsd.arm64" /> ++ <property name="java.lib.dir.platform" value="${java.home.dir}/lib" /> ++ </target> ++ + <target name="gluegen.cpptasks.declare.compiler.freebsd.ppc64" if="isFreeBSDPpc64"> + <echo message="FreeBSD" /> + <property name="compiler.cfg.id.base" value="compiler.cfg.freebsd" /> @@ -80,7 +102,7 @@ + <property name="java.lib.dir.platform" value="${java.home.dir}/jre/lib/ppc64le" /> + </target> + -+ <target name="gluegen.cpptasks.declare.compiler.freebsd" depends="gluegen.cpptasks.declare.compiler.freebsd.x86,gluegen.cpptasks.declare.compiler.freebsd.amd64,gluegen.cpptasks.declare.compiler.freebsd.ppc64,gluegen.cpptasks.declare.compiler.freebsd.ppc64le" if="isFreeBSD"> ++ <target name="gluegen.cpptasks.declare.compiler.freebsd" depends="gluegen.cpptasks.declare.compiler.freebsd.x86,gluegen.cpptasks.declare.compiler.freebsd.amd64,gluegen.cpptasks.declare.compiler.freebsd.arm64,gluegen.cpptasks.declare.compiler.freebsd.ppc64,gluegen.cpptasks.declare.compiler.freebsd.ppc64le" if="isFreeBSD"> <property name="java.includes.dir.platform" value="${java.includes.dir}/x11" /> </target> diff --git a/graphics/jogamp-jogl/files/patch-jogl_make_build-jogl.xml b/graphics/jogamp-jogl/files/patch-jogl_make_build-jogl.xml index 2263f0775032..08a5ec25908d 100644 --- a/graphics/jogamp-jogl/files/patch-jogl_make_build-jogl.xml +++ b/graphics/jogamp-jogl/files/patch-jogl_make_build-jogl.xml @@ -19,10 +19,14 @@ <syslibset dir="/usr/local/lib" libs="X11"/> </linker> -@@ -1267,6 +1266,14 @@ +@@ -1267,6 +1266,18 @@ <syslibset dir="/usr/local/lib" libs="X11"/> </linker> ++ <linker id="linker.cfg.freebsd.arm64.jogl.x11" extends="linker.cfg.freebsd.arm64"> ++ <syslibset dir="/usr/local/lib" libs="X11"/> ++ </linker> ++ + <linker id="linker.cfg.freebsd.ppc64.jogl.x11" extends="linker.cfg.freebsd.ppc64"> + <syslibset dir="/usr/local/lib" libs="X11"/> + </linker> @@ -34,7 +38,7 @@ <linker id="linker.cfg.linux.jogl.x11" extends="linker.cfg.linux"> <syslibset libs="X11"/> </linker> -@@ -1489,7 +1496,7 @@ +@@ -1489,7 +1500,7 @@ <target name="c.configure.freebsd.x86" depends="c.configure.x11" if="isFreeBSDX86"> <echo message="FreeBSD" /> <property name="compiler.cfg.id" value="compiler.cfg.freebsd.jogl" /> @@ -43,11 +47,17 @@ </target> <target name="c.configure.freebsd.amd64" depends="c.configure.x11" if="isFreeBSDAMD64"> -@@ -1498,7 +1505,19 @@ +@@ -1498,7 +1509,25 @@ <property name="linker.cfg.id.os" value="linker.cfg.freebsd.amd64.jogl.x11" /> </target> - <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.x11" if="isFreeBSD" /> ++ <target name="c.configure.freebsd.arm64" depends="c.configure.x11" if="isFreeBSDARM64"> ++ <echo message="FreeBSD" /> ++ <property name="compiler.cfg.id" value="compiler.cfg.freebsd.jogl" /> ++ <property name="linker.cfg.id.os" value="linker.cfg.freebsd.arm64.jogl.x11" /> ++ </target> ++ + <target name="c.configure.freebsd.ppc64" depends="c.configure.x11" if="isFreeBSDPpc64"> + <echo message="FreeBSD" /> + <property name="compiler.cfg.id" value="compiler.cfg.freebsd.jogl" /> @@ -60,7 +70,7 @@ + <property name="linker.cfg.id.os" value="linker.cfg.freebsd.ppc64le.jogl.x11" /> + </target> + -+ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.freebsd.ppc64,c.configure.x11,c.configure.freebsd.ppc64le" if="isFreeBSD" /> ++ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.freebsd.arm64,c.configure.freebsd.ppc64,c.configure.x11,c.configure.freebsd.ppc64le" if="isFreeBSD" /> <target name="c.configure.hpux" depends="c.configure.x11" if="isHPUX"> <echo message="HP-UX" /> diff --git a/graphics/jogamp-jogl/files/patch-jogl_make_build-nativewindow.xml b/graphics/jogamp-jogl/files/patch-jogl_make_build-nativewindow.xml index 63f11b808bcb..ba43c2d7e4e4 100644 --- a/graphics/jogamp-jogl/files/patch-jogl_make_build-nativewindow.xml +++ b/graphics/jogamp-jogl/files/patch-jogl_make_build-nativewindow.xml @@ -1,9 +1,15 @@ --- jogl/make/build-nativewindow.xml.orig 2025-08-30 10:26:30 UTC +++ jogl/make/build-nativewindow.xml -@@ -508,6 +508,18 @@ +@@ -508,6 +508,24 @@ <syslibset dir="/usr/local/lib" libs="Xrender"/> </linker> ++ <linker id="linker.cfg.freebsd.arm64.nativewindow.x11" extends="linker.cfg.freebsd.arm64"> ++ <syslibset dir="/usr/local/lib" libs="X11" /> ++ <syslibset dir="/usr/local/lib" libs="Xxf86vm" /> ++ <syslibset dir="/usr/local/lib" libs="Xrender"/> ++ </linker> ++ + <linker id="linker.cfg.freebsd.ppc64.nativewindow.x11" extends="linker.cfg.freebsd.ppc64"> + <syslibset dir="/usr/local/lib" libs="X11" /> + <syslibset dir="/usr/local/lib" libs="Xxf86vm" /> @@ -19,11 +25,17 @@ <linker id="linker.cfg.linux.nativewindow.drm" extends="linker.cfg.linux"> <syslibset libs="drm"/> <syslibset libs="gbm"/> -@@ -783,7 +795,19 @@ +@@ -783,7 +801,25 @@ <property name="linker.cfg.id.oswin" value="linker.cfg.freebsd.amd64.nativewindow.x11" /> </target> - <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.x11" if="isFreeBSD" /> ++ <target name="c.configure.freebsd.arm64" if="isFreeBSDARM64"> ++ <echo message="FreeBSD.ARM64" /> ++ <property name="compiler.cfg.id" value="compiler.cfg.freebsd.nativewindow" /> ++ <property name="linker.cfg.id.oswin" value="linker.cfg.freebsd.arm64.nativewindow.x11" /> ++ </target> ++ + <target name="c.configure.freebsd.ppc64" if="isFreeBSDPpc64"> + <echo message="FreeBSD.Ppc64" /> + <property name="compiler.cfg.id" value="compiler.cfg.freebsd.nativewindow" /> @@ -36,7 +48,7 @@ + <property name="linker.cfg.id.oswin" value="linker.cfg.freebsd.ppc64le.nativewindow.x11" /> + </target> + -+ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.x11,c.configure.freebsd.ppc64,c.configure.freebsd.ppc64le" if="isFreeBSD" /> ++ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.freebsd.arm64,c.configure.x11,c.configure.freebsd.ppc64,c.configure.freebsd.ppc64le" if="isFreeBSD" /> <target name="c.configure.hpux" depends="c.configure.x11" if="isHPUX"> <echo message="HP-UX" /> diff --git a/graphics/jogamp-jogl/files/patch-jogl_make_build-newt.xml b/graphics/jogamp-jogl/files/patch-jogl_make_build-newt.xml index cb9819bf59a8..1ae8715dbd9c 100644 --- a/graphics/jogamp-jogl/files/patch-jogl_make_build-newt.xml +++ b/graphics/jogamp-jogl/files/patch-jogl_make_build-newt.xml @@ -9,10 +9,18 @@ <linkerarg value="-L/usr/local/lib"/> <syslibset libs="X11"/> <syslibset libs="Xrandr"/> -@@ -509,6 +509,20 @@ +@@ -509,6 +509,28 @@ <syslibset libs="Xi"/> </linker> ++ <linker id="linker.cfg.freebsd.arm64.newt.x11" extends="linker.cfg.freebsd.arm64"> ++ <linkerarg value="-L/usr/local/lib"/> ++ <syslibset libs="X11"/> ++ <syslibset libs="Xrandr"/> ++ <syslibset libs="Xcursor"/> ++ <syslibset libs="Xi"/> ++ </linker> ++ + <linker id="linker.cfg.freebsd.ppc64.newt.x11" extends="linker.cfg.freebsd.ppc64"> + <linkerarg value="-L/usr/local/lib"/> + <syslibset libs="X11"/> @@ -30,7 +38,7 @@ <linker id="linker.cfg.linux.newt.bcm_egl" extends="linker.cfg.linux"> <syslibset libs="EGL"/> <syslibset libs="GLES_CM"/> -@@ -837,8 +851,8 @@ +@@ -837,8 +859,8 @@ <target name="c.configure.freebsd.x86" if="isFreeBSDX86"> <echo message="FreeBSD.x86" /> <property name="compiler.cfg.id" value="compiler.cfg.freebsd.newt" /> @@ -41,11 +49,21 @@ <isset property="isX11" /> </condition> <echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" /> -@@ -854,7 +868,27 @@ +@@ -854,7 +876,37 @@ <echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" /> </target> - <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.x11" if="isFreeBSD"/> ++ <target name="c.configure.freebsd.arm64" if="isFreeBSDARM64"> ++ <echo message="FreeBSD.ARM64" /> ++ <property name="compiler.cfg.id" value="compiler.cfg.freebsd.newt" /> ++ <condition property="linker.cfg.id.oswin" value="linker.cfg.freebsd.arm64.newt.x11" ++ else="linker.cfg.freebsd.arm64"> ++ <isset property="isX11" /> ++ </condition> ++ <echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" /> ++ </target> ++ + <target name="c.configure.freebsd.ppc64" if="isFreeBSDPpc64"> + <echo message="FreeBSD.Ppc64" /> + <property name="compiler.cfg.id" value="compiler.cfg.freebsd.newt" /> @@ -66,7 +84,7 @@ + <echo message="linker.cfg.id.oswin ${linker.cfg.id.oswin}" /> + </target> + -+ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.freebsd.ppc64,c.configure.x11,c.configure.freebsd.ppc64le" if="isFreeBSD"/> ++ <target name="c.configure.freebsd" depends="c.configure.freebsd.x86,c.configure.freebsd.amd64,c.configure.freebsd.arm64,c.configure.freebsd.ppc64,c.configure.x11,c.configure.freebsd.ppc64le" if="isFreeBSD"/> <target name="c.configure.hpux" depends="c.configure.x11" if="isHPUX"> <echo message="HP-UX" />