wxWidgets/.circleci/config.yml
Vadim Zeitlin 467d96c03d Add a Fedora CI build using Circle CI
This is a backport of the following commits from master:

934aa20d69 Build and run tests on Circle CI too
9f1bf3982d Install RPM required for Shift-JIS support in Fedora
64aefb5f4e Install locales used by the tests under Fedora
84120664ca Make Circe CI script more consistent with Cirrus CI
bf3951866c Install Git before checking out the sources
3eb78a328e Use ccache in Circle CI job
e63fe497ab Install more optional libraries under Fedora
a527b2714d Allow installing extra packages in before_install.sh
b430a6104c Add a minimal Fedora build using Circle CI
382db6439b Install required packages on RedHat-like systems
2022-08-14 17:17:50 +02:00

82 lines
2.3 KiB
YAML

# Config file for CI jobs on CircleCI (circleci.com).
version: 2.1
jobs:
build-fedora:
docker:
- image: fedora
steps:
- run:
name: Install Git
command: dnf install -y git
- checkout
- run:
name: Install dependencies
command: |
echo LD_LIBRARY_PATH=`pwd`/lib >> $BASH_ENV
# Do _not_ use the CPU count returned by build/tools/proc_count.sh
# for building, it is too high (36 logical CPUs) and results in
# running out of memory, so limit ourselves to just 2 CPUs we're
# supposed to be using in Docker Medium resource class.
wxPROC_COUNT=2
echo wxBUILD_ARGS=-j$wxPROC_COUNT >> $BASH_ENV
# Get extra conversions for iconv used by the tests and langpacks
# to run the tests using the corresponding locales that would be
# skipped otherwise.
export WX_EXTRA_PACKAGES='ccache glibc-gconv-extra langpacks-core-de langpacks-core-en langpacks-core-fr langpacks-core-sv'
./build/tools/before_install.sh
echo "PATH=/usr/lib64/ccache:$PATH" >> $BASH_ENV
- run:
name: Checkout required submodules
command: |
git submodule update --init 3rdparty/catch 3rdparty/nanosvg
- restore_cache:
name: Restore ccache
keys:
- ccache-v1-{{ arch }}-{{ .Branch }}
- ccache-v1-{{ arch }}
- run:
name: Configure
command: ./configure --disable-debug-info
- run:
name: Build libraries
command: |
make -k $wxBUILD_ARGS CXXFLAGS='-Werror -Wno-error=cpp'
- run:
name: Build tests
command: |
make -k $wxBUILD_ARGS CXXFLAGS='-Werror -Wno-error=cpp' -C tests
- run:
name: Run tests
command: |
cd tests
WX_TEST_WEBREQUEST_URL="0" ./test
- run:
name: Show ccache statistics
when: always
command: ccache -vv -s
- save_cache:
name: Save ccache
when: always
key: ccache-v1-{{ arch }}-{{ .Branch }}-{{ .BuildNum }}
paths:
- ~/.cache/ccache
workflows:
build:
jobs:
- build-fedora