Project

General

Profile

Feature #1776 » 0039-CI-Build-clang-debug-job-with-meson.patch

main - Marko Lindqvist, 02/06/2026 04:42 AM

View differences:

.github/workflows/ci.yml
run: |
sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install \
meson \
clang \
libtolua-dev \
liblua5.4-dev \
......
libgtk-3-dev \
libgtk-4-dev \
libcurl4-openssl-dev \
libtool \
automake \
autoconf \
autotools-dev \
language-pack-en \
python3.10 \
liblzma-dev \
......
libsqlite3-dev \
qt6-base-dev \
libsdl2-mixer-dev \
libsdl2-gfx-dev \
libsdl2-image-dev \
libsdl2-ttf-dev \
libmysqlclient-dev \
libmariadb-dev \
unixodbc-dev
- name: build
shell: bash
scripts/ci-build.sh
# Configure and build Freeciv
mkdir build
cd build
../autogen.sh \
CC="clang" \
CXX="clang++" \
CFLAGS="-Wno-error" \
--enable-ack-legacy \
--enable-debug \
--enable-sys-tolua-cmd \
--disable-fcdb \
--with-qtver=qt6 \
--enable-client=gtk3.22,qt,sdl2,gtk4,stub \
--enable-fcmp=cli,gtk3,qt,gtk4 \
--enable-fcdb=sqlite3,mysql,postgres,odbc \
--enable-freeciv-manual \
--enable-ai-static=classic,tex,stub \
--prefix=${HOME}/freeciv/clang \
|| (let config_exit_status=$? \
&& echo "Config exit status: $config_exit_status" \
&& cat config.log \
&& exit $config_exit_status)
make -s -j$(nproc)
make install
CC="clang" \
CXX="clang++" \
meson setup .. \
-Ddebug=true \
-Dqtver=qt6 \
-Dclients=gtk3.22,gtk4,qt,sdl2,stub \
-Dfcmp=gtk3,gtk4,qt,cli \
-Dfcdb=sqlite3,mariadb,odbc \
-Daimodules=classic,tex,stub \
-Dprefix=${HOME}/freeciv/clang \
|| (let meson_exit_status=$? \
&& echo "meson.log:" \
&& cat meson-logs/meson-log.txt \
&& exit ${meson_exit_status})
ninja
ninja install
echo "Freeciv build successful!"
;;
tcc)
(1-1/2)