summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2023-01-14 17:41:44 +0100
committerSven Gothel <[email protected]>2023-01-14 17:41:44 +0100
commit2fc456b93588f9a6973403cb27409bbf54ecbef4 (patch)
treecfb713049ff37e06cd4ae7db790b004982b8cdd8
parent0b441cfc14947b1c8cabdc87705ae95a0afec4d9 (diff)
MacOS: Add fat universal build w/ x86_64 + aarch64; Bump min SDK version >= 11.0
-rw-r--r--doc/HowToBuild.html8
-rwxr-xr-xmake/gluegen-cpptasks-base.xml8
-rwxr-xr-xmake/jogamp-env.xml12
-rw-r--r--src/java/jogamp/common/os/PlatformPropsImpl.java4
4 files changed, 25 insertions, 7 deletions
diff --git a/doc/HowToBuild.html b/doc/HowToBuild.html
index 168cc27..941cf88 100644
--- a/doc/HowToBuild.html
+++ b/doc/HowToBuild.html
@@ -55,7 +55,7 @@
<li> Use your Unix distribution's version, if available, or</li>
<li> <a href="http://www.kernel.org/pub/software/scm/git/">Source Code for GNU/Linux, MacOS, ..</a>, or</li>
<li> Git on Windows is provided by <a href="https://cygwin.com">cygwin</a></li>
- <li> Git &ge; 2.11 on MacOS is provided by Xcode &ge; 8.3.3</li>
+ <li> Git &ge; 2.37 provided by Xcode &ge; 14</li>
</ul>
</li>
@@ -146,11 +146,11 @@ apt-get install lib32z1 lib32ncurses5 gcc-multilib lib32gcc1 lib32gomp1 lib32itm
</li>
<li> <b>MacOS and iOS</b> Intel and Arm64
<ul>
- <li>git &ge; 2.11 provided by Xcode &ge; 8.3.3</li>
+ <li>git &ge; 2.37 provided by Xcode &ge; 14</li>
<li>awk is provided by MacOS</li>
<li><a href="https://cmake.org/">CMake 3.15.2</a>, and install the <a href="https://stackoverflow.com/questions/30668601/installing-cmake-command-line-tools-on-a-mac">command line tools</a></li>
- <li><a href="http://www.apple.com/macosx/">Mac OS</a> 10.13 or later (note: may not work with earlier releases) </li>
- <li><a href="http://developer.apple.com/technologies/xcode.html">Xcode</a> 8.3.3 or later for gcc, etc (included in MacOS)</li>
+ <li><a href="http://www.apple.com/macosx/">Mac OS</a> 11 or later (note: may not work with earlier releases) </li>
+ <li><a href="http://developer.apple.com/technologies/xcode.html">Xcode</a> 14 or later for clang, etc (included in MacOS)</li>
</ul>
</li>
<li> <b>Windows</b>/x86 (32 bit)
diff --git a/make/gluegen-cpptasks-base.xml b/make/gluegen-cpptasks-base.xml
index 414a4de..cda6592 100755
--- a/make/gluegen-cpptasks-base.xml
+++ b/make/gluegen-cpptasks-base.xml
@@ -1229,10 +1229,12 @@
<compilerarg value="i386" if="use.macosx32"/>
<compilerarg value="-arch" if="use.macosx64"/>
<compilerarg value="x86_64" if="use.macosx64"/>
+ <compilerarg value="-arch" if="use.macosx64"/>
+ <compilerarg value="arm64" if="use.macosx64"/>
<!-- Note: Apple doesn't seem to provide ppc64 binaries on Leopard -->
<compilerarg value="-Wmost" />
<compilerarg value="-ObjC" />
- <compilerarg value="-mmacosx-version-min=10.5"/>
+ <compilerarg value="-mmacosx-version-min=11.0"/>
<!-- sysincludepath path="${macosx.sdkroot}" if="macosx.sdkroot"/ -->
<defineset>
<define name="_DEBUG" if="c.compiler.use-debug"/>
@@ -1465,7 +1467,9 @@
<linkerarg value="i386" if="use.macosx32"/>
<linkerarg value="-arch" if="use.macosx64"/>
<linkerarg value="x86_64" if="use.macosx64"/>
- <linkerarg value="-mmacosx-version-min=10.5"/>
+ <linkerarg value="-arch" if="use.macosx64"/>
+ <linkerarg value="arm64" if="use.macosx64"/>
+ <linkerarg value="-mmacosx-version-min=11.0"/>
<linkerarg value="-static-libgcc" if="isGCC"/>
<linkerarg value="-static-libstdc++" if="isGCC"/>
</linker>
diff --git a/make/jogamp-env.xml b/make/jogamp-env.xml
index a5575f8..b49d1f4 100755
--- a/make/jogamp-env.xml
+++ b/make/jogamp-env.xml
@@ -8,7 +8,7 @@
- Java 1.8 (Level 8.0)
- Android SDK API level 24 (Version 7.0 Nougat, released August 2016)
- Official production builds are performed _on_ OpenJDK 11
+ Official production builds are performed _on_ OpenJDK 11 or 17
and a Java JDK 11 or greater is required!
Target Java 8 baseline is chosen today, June 2019,
@@ -86,6 +86,11 @@
<equals arg1="${ant.java.version}" arg2="12"/>
<equals arg1="${ant.java.version}" arg2="13"/>
<equals arg1="${ant.java.version}" arg2="14"/>
+ <equals arg1="${ant.java.version}" arg2="15"/>
+ <equals arg1="${ant.java.version}" arg2="16"/>
+ <equals arg1="${ant.java.version}" arg2="17"/>
+ <equals arg1="${ant.java.version}" arg2="18"/>
+ <equals arg1="${ant.java.version}" arg2="19"/>
</or>
</not>
</condition>
@@ -109,6 +114,11 @@
<equals arg1="${ant.java.version}" arg2="12"/>
<equals arg1="${ant.java.version}" arg2="13"/>
<equals arg1="${ant.java.version}" arg2="14"/>
+ <equals arg1="${ant.java.version}" arg2="15"/>
+ <equals arg1="${ant.java.version}" arg2="16"/>
+ <equals arg1="${ant.java.version}" arg2="17"/>
+ <equals arg1="${ant.java.version}" arg2="18"/>
+ <equals arg1="${ant.java.version}" arg2="19"/>
</or>
</condition>
<echo message="javadoc.xarg1 ${javadoc.xarg1}"/>
diff --git a/src/java/jogamp/common/os/PlatformPropsImpl.java b/src/java/jogamp/common/os/PlatformPropsImpl.java
index 1d38f30..aff3d68 100644
--- a/src/java/jogamp/common/os/PlatformPropsImpl.java
+++ b/src/java/jogamp/common/os/PlatformPropsImpl.java
@@ -46,6 +46,10 @@ public abstract class PlatformPropsImpl {
public static final VersionNumber Lion = new VersionNumber(10,7,0);
/** OSX Mavericks, i.e. 10.9.0 */
public static final VersionNumber Mavericks = new VersionNumber(10,9,0);
+ /** OSX Mojave, i.e. 10.14.0 */
+ public static final VersionNumber Mojave = new VersionNumber(10,14,0);
+ /** OSX Big Sur, i.e. 11.00.0 */
+ public static final VersionNumber BigSur = new VersionNumber(11,0,0);
}
/**