Skip to content

Commit dc251db

Browse files
committed
Enable arm64 builds for linux
1 parent 15ed529 commit dc251db

File tree

3 files changed

+106
-7
lines changed

3 files changed

+106
-7
lines changed

.github/workflows/dev-desktop-builds.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,52 @@ jobs:
9292
with:
9393
name: linux_snapshot
9494
path: build/${{ env.EXPORT_NAME }}_${{ env.MM_RELEASE }}_linux.tar.gz
95+
export_linux_arm64:
96+
name: Linux Export (arm64) 🗔
97+
needs: export_windows_linux
98+
runs-on: ubuntu-24.04-arm
99+
steps:
100+
- name: Checkout 🛎️
101+
uses: actions/checkout@v1
102+
with:
103+
submodules: true
104+
- name: Setup 💻
105+
run: |
106+
cp -f material_maker/theme/default_theme_icons.svg material_maker/theme/default_theme_icons_export.svg
107+
wget -q ${GODOT_DOWNLOAD_DIR}/Godot_v${GODOT_VERSION}-${GODOT_SUB}_linux.arm64.zip
108+
unzip Godot_v${GODOT_VERSION}-${GODOT_SUB}_linux.arm64.zip
109+
wget -q ${GODOT_DOWNLOAD_DIR}/Godot_v${GODOT_VERSION}-${GODOT_SUB}_export_templates.tpz
110+
unzip -a Godot_v${GODOT_VERSION}-${GODOT_SUB}_export_templates.tpz
111+
mkdir -v -p ~/.local/share/godot/export_templates/${GODOT_VERSION}.${GODOT_SUB}
112+
mv ./templates/* ~/.local/share/godot/export_templates/${GODOT_VERSION}.${GODOT_SUB}
113+
mkdir -v -p build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
114+
- name: Linux Build (arm64) 🐧
115+
run: |
116+
./Godot_v${GODOT_VERSION}-${GODOT_SUB}_linux.arm64 --headless -v --export-release "Linux/X11 ARM64" ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64/$EXPORT_NAME.arm64
117+
- name: Get documentation 🚀
118+
if: ${{ github.event.inputs.gen_doc == 'true' }}
119+
uses: actions/download-artifact@v8
120+
with:
121+
name: documentation
122+
path: doc
123+
- name: Copy Material Maker data 📁
124+
run: |
125+
cp -R ./addons/material_maker/nodes ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
126+
cp -R ./material_maker/environments ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
127+
cp -R ./material_maker/examples ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
128+
cp -R ./material_maker/library ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
129+
cp -R ./material_maker/meshes ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
130+
cp -R ./material_maker/misc/export ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
131+
cp -R ./material_maker/doc/_build/html ./build/${EXPORT_NAME}_${MM_RELEASE}_linux_arm64/doc || :
132+
- name: Create archives 📁
133+
run: |
134+
cd build
135+
tar zcvf ${EXPORT_NAME}_${MM_RELEASE}_linux_arm64.tar.gz ${EXPORT_NAME}_${MM_RELEASE}_linux_arm64
136+
- name: Upload Linux (arm64) Artifact 🚀
137+
uses: actions/upload-artifact@v6
138+
with:
139+
name: linux_arm64_snapshot
140+
path: build/${{ env.EXPORT_NAME }}_${{ env.MM_RELEASE }}_linux_arm64.tar.gz
95141
export-mac:
96142
name: Mac Export 🍎
97143
needs: export_windows_linux

0 commit comments

Comments
 (0)