[gtk/gbsneto/macos-arm64: 2/2] CI: Add cross-compiled macOS ARM64 step




commit 6b7d3dbd77a507584b7c163d103702cedfb21dfc
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Sun Sep 11 20:54:58 2022 -0300

    CI: Add cross-compiled macOS ARM64 step
    
    WIP

 .gitlab-ci.yml                           | 33 ++++++++++++++++++++++++++++++++
 .gitlab-ci/cross-compile/macos-arm64.txt | 24 +++++++++++++++++++++++
 2 files changed, 57 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ae8ffc8c71..1efeccf40c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -215,6 +215,39 @@ macos-x86_64:
     paths:
       - "${CI_PROJECT_DIR}/_build/meson-logs"
 
+macos-arm64:
+  extends: .only-default
+  only:
+    - branches@GNOME/gtk
+  stage: build
+  tags:
+    - macos
+  needs: []
+  before_script:
+    - bash .gitlab-ci/show-info-osx.sh
+    - pip3 install --user meson==0.60.3
+    - pip3 install --user ninja
+    - export PATH=/Users/gitlabrunner/Library/Python/3.7/bin:$PATH
+    - export MESON_FORCE_BACKTRACE=1
+    # Cross-compiling needs to force Meson not to look into default
+    # paths for libraries
+    - export PKG_CONFIG_LIBDIR="./_build/lib/pkgconfig"
+  script:
+    - meson --cross-file .gitlab-ci/cross-compile/macos-arm64.txt
+            -Dx11-backend=false
+            -Dbroadway-backend=true
+            -Dmacos-backend=true
+            -Dmedia-gstreamer=disabled
+            -Dintrospection=disabled
+            -Dcpp_std=c++11
+            -Dpixman:tests=disabled
+            _build
+    - ninja -C _build
+  artifacts:
+    when: always
+    paths:
+      - "${CI_PROJECT_DIR}/_build/meson-logs"
+
 vs2017-x64:
   extends: .only-default
   # TODO: Uncomment this when ready to merge.
diff --git a/.gitlab-ci/cross-compile/macos-arm64.txt b/.gitlab-ci/cross-compile/macos-arm64.txt
new file mode 100644
index 0000000000..2d00e367bd
--- /dev/null
+++ b/.gitlab-ci/cross-compile/macos-arm64.txt
@@ -0,0 +1,24 @@
+[host_machine]
+system = 'darwin'
+cpu_family = 'aarch64'
+cpu = 'arm64'
+endian = 'little'
+
+[binaries]
+c = ['clang']
+cpp = ['clang++']
+objc = ['clang']
+objcpp = ['clang++']
+ar = ['ar']
+strip = ['strip']
+pkgconfig = ['pkg-config']
+
+[built-in options]
+c_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']
+cpp_args = ['-stdlib=libc++', '-arch', 'arm64', '-mmacosx-version-min=11.0']
+objc_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']
+objcpp_args = ['-stdlib=libc++', '-arch', 'arm64', '-mmacosx-version-min=11.0']
+c_link_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']
+cpp_link_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']
+objc_link_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']
+objcpp_link_args = ['-arch', 'arm64', '-mmacosx-version-min=11.0']


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]