Skip to content

Unreviewed. Post-release version bump. #126

Unreviewed. Post-release version bump.

Unreviewed. Post-release version bump. #126

Workflow file for this run

---
name: CI Build
on:
push:
branches:
- master
- 'libwpe-*'
pull_request:
branches:
- master
jobs:
linux:
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Debian Packages
run: |
sudo apt update
sudo apt install -y cmake flex libjson-glib-dev libxkbcommon-dev \
libegl1-mesa-dev libxml2-dev libxslt1-dev libyaml-dev llvm-dev \
libclang-dev libglib2.0-dev ninja-build
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.6'
- name: Python Package Cache
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/ci.yml') }}
restore-keys: ${{ runner.os }}-pip-
- name: Install Python Packages
run: |
python -m pip install --upgrade pip setuptools wheel
HOTDOC_BUILD_C_EXTENSION=enabled pip install hotdoc meson==0.55
- name: Meson - Configure
run: |
mkdir -p _work/meson
meson _work/meson/build --prefix /usr -Dbuild-docs=true
- name: Meson - Build
run: |
ninja -C _work/meson/build
- name: Meson - Install
run: |
DESTDIR="$(pwd)/_work/meson/prefix" ninja -C _work/meson/build install
nm -D -P _work/meson/build/libwpe-1.0.so \
| awk '$2 == "T" || $2 == "U" {print $2 " " $1}' \
> _work/meson/symbols
(cd _work/meson/prefix && find lib -type f | sort) > _work/meson/files
- name: Meson - Archive Artifacts
uses: actions/upload-artifact@v3
with:
name: build-meson
path: _work/meson/prefix
- name: CMake - Configure
run: |
mkdir -p _work/cmake/build && cd $_
cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_DOCS=ON ../../..
- name: CMake - Build
run: |
make -C _work/cmake/build -j$(nproc)
- name: CMake - Install
run: |
DESTDIR="$(pwd)/_work/cmake/prefix" make -C _work/cmake/build install
nm -D -P _work/cmake/build/libwpe-1.0.so \
| awk '$2 == "T" || $2 == "U" {print $2 " " $1}' \
> _work/cmake/symbols
(cd _work/cmake/prefix && find lib -type f | sort) > _work/cmake/files
- name: CMake - Archive Artifacts
uses: actions/upload-artifact@v3
with:
name: build-cmake
path: _work/cmake/prefix
- name: Check Installations
run: |
diff -u _work/{cmake,meson}/files
diff -u _work/{cmake,meson}/symbols
diff -Naur _work/{cmake,meson}/prefix/usr/include/
- name: Archive Documentation
uses: actions/upload-artifact@v3
with:
name: docs
path: _work/cmake/build/Documentation/html
publish:
if: ${{ github.ref == 'refs/heads/master' }}
needs: linux
runs-on: ubuntu-20.04
steps:
- name: Fetch Documentation
uses: actions/download-artifact@v3
with:
name: docs
path: html
- name: Deploy Documentation
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
force_orphan: true
publish_dir: html
windows:
runs-on: windows-latest
env:
PYTHONIOENCODING: "utf-8"
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.6'
- name: Setup MSVC
uses: seanmiddleditch/gha-setup-vsdevenv@v4
- name: Install Tools
run: |
choco install winflexbison3 ninja -y --no-progress --stop-on-first-failure
- name: Install Python Packages
run: |
python -m pip install --upgrade pip setuptools wheel
python -m pip install meson==0.56
- name: Meson - Configure
run: >+
meson _build
-Dbuild-docs=false
-Dlibxkbcommon:enable-docs=false
-Dlibxkbcommon:enable-wayland=false
-Dlibxkbcommon:enable-x11=false
-Dlibxkbcommon:enable-xkbregistry=false
- name: Meson - Build
run: |
ninja -C _build
analyze:
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Dependencies
run: |
curl -sL https://apt.llvm.org/llvm-snapshot.gpg.key | \
sudo apt-key add -
sudo add-apt-repository \
'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main'
sudo apt update
sudo apt install -y flex libjson-glib-dev libxkbcommon-dev \
libegl1-mesa-dev libxml2-dev libxslt1-dev libyaml-dev llvm-14-dev \
libclang-14-dev libglib2.0-dev ninja-build clang-tools-14
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.6'
- name: Python Package Cache
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/ci.yml') }}
restore-keys: ${{ runner.os }}-pip-
- name: Install Python Packages
run: |
python -m pip install --upgrade pip setuptools wheel
pip install scan-build meson==0.55
- name: Configure
run: |
meson _work --prefix /usr -Dbuild-docs=false
- name: Analyze
run: |
analyze-build \
--enable-checker nullability.NullablePassedToNonnull \
--enable-checker optin.cplusplus.UninitializedObject \
--enable-checker optin.cplusplus.VirtualCall \
--enable-checker optin.performance.Padding \
--enable-checker optin.portability.UnixAPI \
--enable-checker valist.CopyToSelf \
--enable-checker valist.Uninitialized \
--enable-checker valist.Unterminated \
--cdb _work/compile_commands.json \
-o _work/report