Skip to content

Commit 3b26dac

Browse files
committed
Add CI check for PowerPC IBM long double ABI
1 parent c5125b5 commit 3b26dac

1 file changed

Lines changed: 48 additions & 0 deletions

File tree

.github/workflows/linux.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,3 +141,51 @@ jobs:
141141
-DFluidSynth_DIR="$INSTALL_LOCATION/lib/cmake/fluidsynth" \
142142
-DCMAKE_BUILD_TYPE=$BUILD_TYPE
143143
cmake --build consume-install
144+
145+
# Tests to see if FluidSynth will build with GCC for PowerPC targets that use the IBM long double ABI
146+
build-ibm-long-double:
147+
runs-on: ubuntu-22.04
148+
container: debian:trixie
149+
150+
steps:
151+
- uses: actions/checkout@v5
152+
with:
153+
submodules: recursive
154+
155+
- name: Update apt
156+
run: |
157+
dpkg --add-architecture ppc64el
158+
apt-get update -y
159+
160+
- name: Install Dependencies
161+
run: |
162+
apt-get -yq --no-install-suggests --no-install-recommends install \
163+
gcc-ppc64el \
164+
g++-ppc64el \
165+
cmake \
166+
cmake-data \
167+
ninja-build
168+
169+
- name: Configure CMake
170+
run: |
171+
export CC=${{ matrix.CC }}
172+
export CXX=${{ matrix.CXX }}
173+
export CFLAGS="$CFLAGS -mabi=ibmlongdouble -Wno-psabi"
174+
export CXXFLAGS="$CXXFLAGS -mabi=ibmlongdouble -Wno-psabi"
175+
cmake -S . \
176+
-B build \
177+
-G Ninja \
178+
-DCMAKE_SYSTEM_NAME=Linux \
179+
-DCMAKE_SYSTEM_PROCESSOR=ppc64le \
180+
-DCMAKE_C_COMPILER=powerpc64le-linux-gnu-gcc \
181+
-DCMAKE_CXX_COMPILER=powerpc64le-linux-gnu-g++ \
182+
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
183+
-DCMAKE_VERBOSE_MAKEFILE=1 \
184+
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
185+
-Werror=dev \
186+
-DCMAKE_INSTALL_PREFIX=$INSTALL_LOCATION \
187+
-DNO_GUI=1 \
188+
${{ matrix.CMAKE_FLAGS }}
189+
190+
- name: Build
191+
run: cmake --build build

0 commit comments

Comments
 (0)