Feature #1776 » 0039-CI-Build-clang-debug-job-with-meson.patch
| .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)
|
||