Fix linking against libiphlpapi in i686 mingw-w64 builds #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: upstream | |
on: | |
push: | |
branches: | |
- master | |
permissions: read-all | |
jobs: | |
coverage-job: | |
permissions: | |
checks: write # for coverallsapp/github-action to create new checks | |
contents: read # for actions/checkout to fetch code | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 | |
- name: Cache | |
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2 | |
with: | |
path: build | |
key: ${{ matrix.os }}-coverage-v2 | |
- name: Install Depends | |
run: sudo apt install zlib1g-dev libssl-dev build-essential lcov libmbedtls-dev | |
- name: Build | |
shell: bash | |
run: | | |
export JOBS=20 | |
mkdir -p build | |
cd build | |
cmake .. -DEVENT__COVERAGE=ON -DCMAKE_BUILD_TYPE=Debug -DEVENT__DISABLE_OPENSSL=OFF | |
make -j $JOBS | |
- name: Test | |
shell: bash | |
run: | | |
export CTEST_PARALLEL_LEVEL=$JOBS | |
export CTEST_OUTPUT_ON_FAILURE=1 | |
cd build | |
make verify_coverage | |
- name: Coveralls GitHub Action | |
uses: coverallsapp/github-action@3dfc5567390f6fa9267c0ee9c251e4c8c3f18949 # v2.2.3 | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
path-to-lcov: ./build/coverage.info.cleaned | |
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
if: failure() | |
with: | |
name: coverage-build | |
path: build | |
abi-job: | |
permissions: | |
contents: write # for Git to git push | |
# ABI check is broken [1]. | |
# [1]: https://github.com/libevent/libevent/issues/1463 | |
if: "false" | |
runs-on: ubuntu-22.04 | |
## TODO: use docker image, but for now this is not possible without hacks | |
## due to even public registry require some authentication: | |
## - https://github.com/orgs/community/discussions/25689 | |
#container: docker.pkg.github.com/azat/docker-images/lvc-debian | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 | |
- name: Install Dependencies | |
run: | |
sudo apt install | |
abi-tracker | |
abi-monitor | |
abi-dumper | |
abi-compliance-checker | |
pkgdiff | |
vtable-dumper | |
# FIXME: clone git repo or report to debian | |
- name: Patch abi-compliance-checker to avoid endless loop | |
run: sudo patch /usr/bin/abi-compliance-checker < extra/abi-check/debian.patch | |
- name: Generate | |
shell: bash | |
run: | | |
./extra/abi-check/abi_check.sh | |
env: | |
ABI_CHECK_ROOT: /tmp/le-abi-root | |
- name: Deploy | |
env: | |
LIBEVENT_DEPLOY_ABI_PRI: ${{ secrets.LIBEVENT_DEPLOY_ABI_PRI }} | |
OWNER_NAME: ${{ github.event.repository.owner.name }} | |
COMMIT_ID: ${{ github.sha }} | |
run: | | |
[[ -n $LIBEVENT_DEPLOY_ABI_PRI ]] || exit 0 | |
mkdir -p ~/.ssh | |
echo "$LIBEVENT_DEPLOY_ABI_PRI" > ~/.ssh/id_rsa | |
chmod 600 ~/.ssh/id_rsa | |
ssh-keyscan github.com >> ~/.ssh/known_hosts | |
short_commit_id="${COMMIT_ID:0:7}" | |
cd /tmp/le-abi-root/work/abi-check | |
git init | |
git config --local user.name "Libevent Github Robot" | |
git config --local user.email "robot@libevent.org" | |
git add -f . | |
git commit -m "Update ABI/API backward compatibility report (libevent/libevent@$short_commit_id)" | |
git push -f git@github.com:"$OWNER_NAME"/abi master | |
# XXX: requires container-id for docker | |
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
if: failure() | |
with: | |
name: build | |
path: /tmp/le-abi-root | |
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
with: | |
name: build | |
path: /tmp/le-abi-root/work/abi-check | |
doxygen-job: | |
permissions: | |
contents: write # for Git to git push | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 | |
- name: Install Depends | |
run: | | |
sudo apt install doxygen libmbedtls-dev | |
- name: Generate Doxygen | |
shell: bash | |
run: | | |
mkdir build | |
cd build | |
cmake -DEVENT__DOXYGEN=ON -DEVENT__DISABLE_OPENSSL=OFF .. | |
make doxygen | |
- name: Deploy Documentation | |
env: | |
LIBEVENT_DEPLOY_PRI: ${{ secrets.LIBEVENT_DEPLOY_PRI }} | |
OWNER_NAME: ${{ github.event.repository.owner.name }} | |
COMMIT_ID: ${{ github.sha }} | |
run: | | |
[[ -n $LIBEVENT_DEPLOY_PRI ]] || exit 0 | |
mkdir -p ~/.ssh | |
echo "$LIBEVENT_DEPLOY_PRI" > ~/.ssh/id_rsa | |
chmod 600 ~/.ssh/id_rsa | |
ssh-keyscan github.com >> ~/.ssh/known_hosts | |
short_commit_id="${COMMIT_ID:0:7}" | |
cd ./build/doxygen/html | |
git init | |
git config --local user.name "Libevent Github Robot" | |
git config --local user.email "robot@libevent.org" | |
git add -f . | |
git commit -m "Update documentation (libevent/libevent@$short_commit_id)" | |
git push -f git@github.com:"$OWNER_NAME"/doc master | |
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
if: failure() | |
with: | |
name: doxygen-build | |
path: build |