@@ -26,12 +26,12 @@ jobs:
2626 sudo apt-get install -y --no-install-recommends \
2727 build-essential \
2828 gcc-14-riscv64-linux-gnu \
29- g++-14-riscv64-linux-gnu \
30- libcurl4-openssl-dev:riscv64
29+ g++-14-riscv64-linux-gnu
3130
3231 - name : Build
3332 run : |
34- cmake -B build -DCMAKE_BUILD_TYPE=Release \
33+ cmake -B build -DLLAMA_CURL=OFF \
34+ -DCMAKE_BUILD_TYPE=Release \
3535 -DGGML_OPENMP=OFF \
3636 -DLLAMA_BUILD_EXAMPLES=ON \
3737 -DLLAMA_BUILD_TOOLS=ON \
@@ -72,12 +72,12 @@ jobs:
7272 glslc \
7373 gcc-14-riscv64-linux-gnu \
7474 g++-14-riscv64-linux-gnu \
75- libvulkan-dev:riscv64 \
76- libcurl4-openssl-dev:riscv64
75+ libvulkan-dev:riscv64
7776
7877 - name : Build
7978 run : |
80- cmake -B build -DCMAKE_BUILD_TYPE=Release \
79+ cmake -B build -DLLAMA_CURL=OFF \
80+ -DCMAKE_BUILD_TYPE=Release \
8181 -DGGML_VULKAN=ON \
8282 -DGGML_OPENMP=OFF \
8383 -DLLAMA_BUILD_EXAMPLES=ON \
@@ -118,12 +118,12 @@ jobs:
118118 build-essential \
119119 glslc \
120120 crossbuild-essential-arm64 \
121- libvulkan-dev:arm64 \
122- libcurl4-openssl-dev:arm64
121+ libvulkan-dev:arm64
123122
124123 - name : Build
125124 run : |
126- cmake -B build -DCMAKE_BUILD_TYPE=Release \
125+ cmake -B build -DLLAMA_CURL=OFF \
126+ -DCMAKE_BUILD_TYPE=Release \
127127 -DGGML_VULKAN=ON \
128128 -DGGML_OPENMP=OFF \
129129 -DLLAMA_BUILD_EXAMPLES=ON \
@@ -140,3 +140,94 @@ jobs:
140140 -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH
141141
142142 cmake --build build --config Release -j $(nproc)
143+
144+ ubuntu-24-ppc64el-cpu-cross :
145+ runs-on : ubuntu-24.04
146+
147+ steps :
148+ - uses : actions/checkout@v4
149+ - name : Setup PowerPC64le
150+ run : |
151+ sudo dpkg --add-architecture ppc64el
152+
153+ # Add arch-specific repositories for non-amd64 architectures
154+ cat << EOF | sudo tee /etc/apt/sources.list.d/ppc64el-ports.list
155+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble main universe
156+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-updates main universe
157+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-security main universe
158+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-backports main universe
159+ EOF
160+
161+ sudo apt-get update || true ;# Prevent failure due to missing URLs.
162+
163+ sudo apt-get install -y --no-install-recommends \
164+ build-essential \
165+ gcc-14-powerpc64le-linux-gnu \
166+ g++-14-powerpc64le-linux-gnu
167+
168+ - name : Build
169+ run : |
170+ cmake -B build -DLLAMA_CURL=OFF \
171+ -DCMAKE_BUILD_TYPE=Release \
172+ -DGGML_OPENMP=OFF \
173+ -DLLAMA_BUILD_EXAMPLES=ON \
174+ -DLLAMA_BUILD_TOOLS=ON \
175+ -DLLAMA_BUILD_TESTS=OFF \
176+ -DCMAKE_SYSTEM_NAME=Linux \
177+ -DCMAKE_SYSTEM_PROCESSOR=ppc64 \
178+ -DCMAKE_C_COMPILER=powerpc64le-linux-gnu-gcc-14 \
179+ -DCMAKE_CXX_COMPILER=powerpc64le-linux-gnu-g++-14 \
180+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
181+ -DCMAKE_FIND_ROOT_PATH=/usr/lib/powerpc64le-linux-gnu \
182+ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
183+ -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
184+ -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH
185+
186+ cmake --build build --config Release -j $(nproc)
187+
188+ ubuntu-24-ppc64el-vulkan-cross :
189+ runs-on : ubuntu-24.04
190+
191+ steps :
192+ - uses : actions/checkout@v4
193+ - name : Setup PowerPC64le
194+ run : |
195+ sudo dpkg --add-architecture ppc64el
196+
197+ # Add arch-specific repositories for non-amd64 architectures
198+ cat << EOF | sudo tee /etc/apt/sources.list.d/ppc64el-ports.list
199+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble main universe
200+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-updates main universe
201+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-security main universe
202+ deb [arch=ppc64el] http://ports.ubuntu.com/ubuntu-ports/ noble-backports main universe
203+ EOF
204+
205+ sudo apt-get update || true ;# Prevent failure due to missing URLs.
206+
207+ sudo apt-get install -y --no-install-recommends \
208+ build-essential \
209+ glslc \
210+ gcc-14-powerpc64le-linux-gnu \
211+ g++-14-powerpc64le-linux-gnu \
212+ libvulkan-dev:ppc64el
213+
214+ - name : Build
215+ run : |
216+ cmake -B build -DLLAMA_CURL=OFF \
217+ -DCMAKE_BUILD_TYPE=Release \
218+ -DGGML_VULKAN=ON \
219+ -DGGML_OPENMP=OFF \
220+ -DLLAMA_BUILD_EXAMPLES=ON \
221+ -DLLAMA_BUILD_TOOLS=ON \
222+ -DLLAMA_BUILD_TESTS=OFF \
223+ -DCMAKE_SYSTEM_NAME=Linux \
224+ -DCMAKE_SYSTEM_PROCESSOR=ppc64 \
225+ -DCMAKE_C_COMPILER=powerpc64le-linux-gnu-gcc-14 \
226+ -DCMAKE_CXX_COMPILER=powerpc64le-linux-gnu-g++-14 \
227+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
228+ -DCMAKE_FIND_ROOT_PATH=/usr/lib/powerpc64le-linux-gnu \
229+ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
230+ -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
231+ -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH
232+
233+ cmake --build build --config Release -j $(nproc)
0 commit comments