diff mbox series

[meta-darwin,3/3] arm64-darwin: add new arm64 machine

Message ID 20250410135336.20372-3-ecordonnier@snap.com
State New
Headers show
Series None | expand

Commit Message

Etienne Cordonnier April 10, 2025, 1:53 p.m. UTC
From: Dominik Schnitzer <dominik@snap.com>

Adds a machine for initial Apple Silicon support

Signed-off-by: Dominik Schnitzer <dominik@snap.com>
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
---
 conf/machine-sdk/arm64-darwin.conf  |  3 +++
 conf/machine-sdk/darwin-common.inc  | 37 +++++++++++++++++++++++++++
 conf/machine-sdk/x86_64-darwin.conf | 39 +----------------------------
 3 files changed, 41 insertions(+), 38 deletions(-)
 create mode 100644 conf/machine-sdk/arm64-darwin.conf
 create mode 100644 conf/machine-sdk/darwin-common.inc
diff mbox series

Patch

diff --git a/conf/machine-sdk/arm64-darwin.conf b/conf/machine-sdk/arm64-darwin.conf
new file mode 100644
index 0000000..d91a78f
--- /dev/null
+++ b/conf/machine-sdk/arm64-darwin.conf
@@ -0,0 +1,3 @@ 
+SDK_ARCH = "aarch64"
+
+require darwin-common.inc
diff --git a/conf/machine-sdk/darwin-common.inc b/conf/machine-sdk/darwin-common.inc
new file mode 100644
index 0000000..cec76a5
--- /dev/null
+++ b/conf/machine-sdk/darwin-common.inc
@@ -0,0 +1,37 @@ 
+SDK_OS = "darwin21"
+
+SOLIBS:darwin21 = ".dylib"
+SOLIBSDEV:darwin21 = ".dylibbroken"
+
+PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-for-gcc = "nativesdk-osx-runtime"
+PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-initial = "nativesdk-osx-runtime"
+PREFERRED_PROVIDER_virtual/${SDK_PREFIX}binutils = "cctools-port-crosssdk"
+PREFERRED_PROVIDER_virtual/nativesdk-libc = "nativesdk-osx-runtime"
+PREFERRED_PROVIDER_virtual/nativesdk-libintl = "nativesdk-osx-runtime"
+PREFERRED_PROVIDER_virtual/nativesdk-libiconv = "nativesdk-osx-runtime"
+
+SDKUSE_NLS = "no"
+SDKIMAGE_LINGUAS = ""
+SDK_DEPENDS:remove = "nativesdk-glibc-locale nativesdk-qemuwrapper-cross"
+
+SDKPKGSUFFIX = "nativesdk-darwin"
+
+OSX_TOOLCHAIN_OPTIONS = " \
+    -mmacosx-version-min=12.3 \
+    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/usr/lib \
+    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/runtime/usr/lib \
+    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/runtime/usr/lib/system \
+"
+
+TOOLCHAIN_OPTIONS:append:darwin21 = " \
+    ${OSX_TOOLCHAIN_OPTIONS}"
+TOOLCHAIN_OPTIONS:append:class-cross-canadian = " \
+    ${OSX_TOOLCHAIN_OPTIONS}"
+
+# Remove -rpath-link
+BUILDSDK_LDFLAGS = " \
+    -L${STAGING_LIBDIR} \
+    -Wl,-rpath,${libdir} \
+"
+
+MACHINEOVERRIDES .= ":darwinsdk"
diff --git a/conf/machine-sdk/x86_64-darwin.conf b/conf/machine-sdk/x86_64-darwin.conf
index 89f3e0a..199cab7 100644
--- a/conf/machine-sdk/x86_64-darwin.conf
+++ b/conf/machine-sdk/x86_64-darwin.conf
@@ -1,40 +1,3 @@ 
 SDK_ARCH = "x86_64"
-SDK_OS = "darwin21"
 
-SOLIBS:darwin21 = ".dylib"
-SOLIBSDEV:darwin21 = ".dylibbroken"
-
-PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-for-gcc = "nativesdk-osx-runtime"
-PREFERRED_PROVIDER_virtual/nativesdk-${SDK_PREFIX}libc-initial = "nativesdk-osx-runtime"
-PREFERRED_PROVIDER_virtual/${SDK_PREFIX}binutils = "cctools-port-crosssdk"
-PREFERRED_PROVIDER_virtual/nativesdk-libc = "nativesdk-osx-runtime"
-PREFERRED_PROVIDER_virtual/nativesdk-libintl = "nativesdk-osx-runtime"
-PREFERRED_PROVIDER_virtual/nativesdk-libiconv = "nativesdk-osx-runtime"
-
-SDKUSE_NLS = "no"
-SDKIMAGE_LINGUAS = ""
-SDK_DEPENDS:remove = "nativesdk-glibc-locale nativesdk-qemuwrapper-cross"
-
-SDKPKGSUFFIX = "nativesdk-darwin"
-
-OSX_TOOLCHAIN_OPTIONS = " \
-    -mmacosx-version-min=12.3 \
-    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/usr/lib \
-    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/runtime/usr/lib \
-    -L${STAGING_DIR_TARGET}${SDKPATHNATIVE}/runtime/usr/lib/system \
-"
-
-TOOLCHAIN_OPTIONS:append:darwin21 = " \
-    ${OSX_TOOLCHAIN_OPTIONS}"
-TOOLCHAIN_OPTIONS:append:class-cross-canadian = " \
-    ${OSX_TOOLCHAIN_OPTIONS}"
-
-# Remove -rpath-link
-BUILDSDK_LDFLAGS = " \
-    -L${STAGING_LIBDIR} \
-    -Wl,-rpath,${libdir} \
-    -L${STAGING_DIR_HOST}${base_libdir} \
-    -Wl,-rpath,${base_libdir} \
-"
-
-MACHINEOVERRIDES .= ":darwinsdk"
+require darwin-common.inc