Skip to content

Commit 2a5332c

Browse files
committed
Add macos-14 crossbow job
1 parent 8204552 commit 2a5332c

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

dev/tasks/matlab/github.yml

+43
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,47 @@ jobs:
9595
name: matlab-arrow-macos.tar.gz
9696
path: matlab-arrow-macos.tar.gz
9797

98+
macos-arm64:
99+
name: ARM64 macOS 14 MATLAB
100+
runs-on: macos-14
101+
steps:
102+
{{ macros.github_checkout_arrow()|indent }}
103+
- name: Install ninja-build
104+
run: brew install ninja
105+
- name: Install MATLAB
106+
uses: matlab-actions/setup-matlab@v2
107+
with:
108+
release: R2024a
109+
- name: Build MATLAB Interface
110+
env:
111+
{{ macros.github_set_sccache_envvars()|indent(8) }}
112+
run: arrow/ci/scripts/matlab_build.sh $(pwd)/arrow
113+
- name: Add arm64 suffix
114+
run: |
115+
pushd arrow/matlab/install/arrow_matlab/+libmexclass/+proxy
116+
LIBARROW_MAJOR_MINOR_PATCH_DYLIB="$(echo libarrow.*.*.dylib)"
117+
LIBARROW_MAJOR_DYLIB="$(find . -name 'libarrow.*.dylib' -type l | xargs basename)"
118+
rm ${LIBARROW_MAJOR_DYLIB}
119+
rm libarrow.dylib
120+
mv ${LIBARROW_MAJOR_MINOR_PATCH_DYLIB} libarrow_arm64.${MAJOR_MINOR_PATCH_VERSION}.dylib
121+
mv libarrowproxy.dylib libarrowproxy_arm64.dylib
122+
mv libmexclass.dylib libmexclass_arm64.dylib
123+
install_name_tool -id @rpath/libmexclass_arm64.dylib libmexclass_arm64.dylib
124+
install_name_tool -id @rpath/libarrowproxy_arm64.dylib libarrowproxy_arm64.dylib
125+
install_name_tool -id @rpath/libarrow_arm64.${MAJOR_MINOR_PATCH_VERSION}.dylib libarrow_arm64.${MAJOR_MINOR_PATCH_VERSION}.dylib
126+
install_name_tool -change @rpath/${LIBARROW_MAJOR_DYLIB} @rpath/libarrow_arm64.${MAJOR_MINOR_PATCH_VERSION}.dylib libarrowproxy_arm64.dylib
127+
install_name_tool -change @rpath/libmexclass.dylib @rpath/libmexclass_arm64.dylib libarrowproxy_arm64.dylib
128+
install_name_tool -change @rpath/libmexclass.dylib @rpath/libmexclass_arm64.dylib gateway.maca64
129+
install_name_tool -change @rpath/libarrowproxy.dylib @rpath/libarrowproxy_arm64.dylib gateway.maca64
130+
popd
131+
- name: Compress into single artifact
132+
run: tar -cvzf matlab-arrow-macos-arm64.tar.gz arrow/matlab/install/arrow_matlab
133+
- name: Upload artifacts
134+
uses: actions/upload-artifact@v4
135+
with:
136+
name: matlab-arrow-macos.tar.gz
137+
path: matlab-arrow-macos.tar.gz
138+
98139
windows:
99140
name: AMD64 Windows 2022 MATLAB
100141
runs-on: windows-2022
@@ -130,6 +171,7 @@ jobs:
130171
- ubuntu
131172
- macos
132173
- windows
174+
- macos-arm64
133175
steps:
134176
{{ macros.github_checkout_arrow(fetch_depth=0)|indent }}
135177
- name: Download Artifacts
@@ -142,6 +184,7 @@ jobs:
142184
tar -xzvf matlab-arrow-ubuntu.tar.gz
143185
tar -xzvf matlab-arrow-macos.tar.gz
144186
tar -xzvf matlab-arrow-windows.tar.gz
187+
tar -xzvf matlab-arrow-macos-arm64.tar.gz
145188
- name: Copy LICENSE.txt and NOTICE.txt for packaging
146189
run: |
147190
cp arrow/LICENSE.txt arrow/matlab/install/arrow_matlab/LICENSE.txt

0 commit comments

Comments
 (0)