From e5459845ad0da2ab5fc9c3ba944a2d8ed181c4ba Mon Sep 17 00:00:00 2001 From: Dmitry Marakasov Date: Thu, 28 Apr 2022 14:04:29 +0300 Subject: [PATCH] Simplify CI script --- .github/workflows/ci.yml | 54 ++++++++++++++++------------------------ 1 file changed, 22 insertions(+), 32 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a5a9600..3d66e24 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,43 +14,33 @@ jobs: name: ${{ matrix.cxx }} ${{ matrix.features }} steps: - uses: actions/checkout@v2 - - name: Set up environment - run: | - echo 'CXX=${{ matrix.cxx }}' >> $GITHUB_ENV - echo 'CXXFLAGS=-Wall -Wextra -pedantic' >> $GITHUB_ENV # XXX: Add -Werror - echo 'LDFLAGS=' >> $GITHUB_ENV - echo 'SDL_AUDIODRIVER=disk' >> $GITHUB_ENV - echo 'SDL_VIDEODRIVER=x11' >> $GITHUB_ENV - echo 'DISPLAY=:99.0' >> $GITHUB_ENV - - name: Set up environment (flags) - if: ${{ matrix.xxx == 'clang++' }} - # there are explicit self-assignment tests - run: echo "CXXFLAGS=$CXXFLAGS -Wno-self-assign-overloaded" >> $GITHUB_ENV - - name: Set up environment (coverage) - if: ${{ contains(matrix.features, 'coverage') }} - run: | - echo "CXXFLAGS=$CXXFLAGS --coverage" >> $GITHUB_ENV - echo "LDFLAGS=$LDFLAGS --coverage" >> $GITHUB_ENV - - name: Set up environment (optional libs) - if: ${{ contains(matrix.features, 'nooptlibs') }} - run: echo "CMAKE_ARGS=$CMAKE_ARGS -DSDL2PP_WITH_IMAGE=NO -DSDL2PP_WITH_MIXER=NO -DSDL2PP_WITH_TTF=NO" >> $GITHUB_ENV - - name: Set up environment (static build) - if: ${{ contains(matrix.features, 'static') }} - run: echo "CMAKE_ARGS=$CMAKE_ARGS -DSDL2PP_STATIC=YES" >> $GITHUB_ENV - name: Install dependencies + env: + DEBIAN_FRONTEND: noninteractive run: | - export DEBIAN_FRONTEND=noninteractive apt-get update -qq - apt-get install -yqq --no-install-recommends build-essential clang cmake libsdl2-dev cppcheck doxygen graphviz xvfb - - name: Install dependencies (optional libs) - if: ${{ !contains(matrix.features, 'nooptlibs') }} - run: apt-get install -qq libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-dev - - name: Install dependencies (coverage) - if: ${{ contains(matrix.features, 'coverage') }} + apt-get install -yqq --no-install-recommends build-essential clang cmake libsdl2-dev cppcheck doxygen graphviz xvfb curl + if [ ${{ !contains(matrix.features, 'nooptlibs') }} = true ]; then + apt-get install -qq --no-install-recommends libsdl2-image-dev libsdl2-ttf-dev libsdl2-mixer-dev + fi + if [ ${{ contains(matrix.features, 'coverage') }} = true ]; then + apt-get install -qq --no-install-recommends python3-pip git + pip install --user pyyaml cpp-coveralls + fi + + - name: Set up environment run: | - apt-get install -yqq --no-install-recommends python3-pip git curl - pip install --user pyyaml cpp-coveralls + curl --insecure https://raw.githubusercontent.com/AMDmi3/github_env/c8cc83d/github_env.py > e; chmod 755 e + ./e 'CXX=${{ matrix.cxx }}' + ./e 'CXXFLAGS=-Wall -Wextra -pedantic' # XXX: Add -Werror + ./e 'SDL_AUDIODRIVER=disk' + ./e 'SDL_VIDEODRIVER=x11' + ./e 'DISPLAY=:99.0' + ./e --if ${{ matrix.xxx == 'clang++' }} 'CXXFLAGS+=-Wno-self-assign-overloaded' # explicit self-assignment tests + ./e --if ${{ contains(matrix.features, 'coverage') }} 'CXXFLAGS+=--coverage' 'LDFLAGS+=--coverage' + ./e --if ${{ contains(matrix.features, 'nooptlibs') }} 'CMAKE_ARGS+=-DSDL2PP_WITH_IMAGE=NO -DSDL2PP_WITH_MIXER=NO -DSDL2PP_WITH_TTF=NO' + ./e --if ${{ contains(matrix.features, 'static') }} 'CMAKE_ARGS+=-DSDL2PP_STATIC=YES' - name: Set up environment for live tests run: |