mirror of
https://github.com/libevent/libevent.git
synced 2025-01-20 05:02:55 +08:00
Merge branch 'github-actions-v2' (#951)
* github-actions-v2: travis: disable doxygen and coveralls, in favor of github actions github actions: test and coverage github actions: doxygen Ignore truthy in yamllint (for github-actions) test: mark common_timeout as retriable cmake: set rpath for libraries on linux test-export: compatible with all versions of visual studio coverage: 'lcov --remove' need full path
This commit is contained in:
commit
0b6f29aca6
51
.github/workflows/coverage.yml
vendored
Normal file
51
.github/workflows/coverage.yml
vendored
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
---
|
||||||
|
name: coverage
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
linux:
|
||||||
|
runs-on: ubuntu-16.04
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
- name: Cache
|
||||||
|
uses: actions/cache@v1.0.3
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-coverage
|
||||||
|
|
||||||
|
- name: Install Depends
|
||||||
|
run: sudo apt install zlib1g-dev libssl-dev build-essential lcov
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
export JOBS=20
|
||||||
|
export CTEST_PARALLEL_LEVEL=$JOBS
|
||||||
|
export CTEST_OUTPUT_ON_FAILURE=1
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
cmake .. -DEVENT__COVERAGE=ON -DCMAKE_BUILD_TYPE=Debug
|
||||||
|
make -j $JOBS
|
||||||
|
make verify_coverage
|
||||||
|
|
||||||
|
- name: Coveralls GitHub Action
|
||||||
|
uses: coverallsapp/github-action@v1.0.1
|
||||||
|
with:
|
||||||
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
path-to-lcov: ./build/coverage.info.cleaned
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: coverage-build
|
||||||
|
path: build
|
58
.github/workflows/doxygen.yml
vendored
Normal file
58
.github/workflows/doxygen.yml
vendored
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
---
|
||||||
|
name: doxygen
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Doxygen:
|
||||||
|
runs-on: ubuntu-18.04
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
- name: Install Depends
|
||||||
|
run: |
|
||||||
|
sudo apt install doxygen
|
||||||
|
|
||||||
|
- name: Generate Doxygen
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake -DEVENT__DOXYGEN=ON ..
|
||||||
|
make doxygen
|
||||||
|
|
||||||
|
- name: Deploy Documentation
|
||||||
|
env:
|
||||||
|
LIBEVENT_DEPLOY_PRI: ${{ secrets.LIBEVENT_DEPLOY_PRI }}
|
||||||
|
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
|
||||||
|
|
||||||
|
user_name="${{ github.event.head_commit.author.name }}"
|
||||||
|
user_email="${{ github.event.head_commit.author.email }}"
|
||||||
|
short_commit_id="${COMMIT_ID:0:7}"
|
||||||
|
owner_name="${{ github.event.repository.owner.name }}"
|
||||||
|
|
||||||
|
cd ./build/doxygen/html
|
||||||
|
git init
|
||||||
|
git config --local user.name $user_name
|
||||||
|
git config --local user.email $user_email
|
||||||
|
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@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: doxygen-build
|
||||||
|
path: build
|
157
.github/workflows/linux.yml
vendored
Normal file
157
.github/workflows/linux.yml
vendored
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
---
|
||||||
|
name: linux
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize]
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
push:
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cmake:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-18.04]
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- NONE
|
||||||
|
- DISABLE_OPENSSL
|
||||||
|
- DISABLE_THREAD_SUPPORT
|
||||||
|
- DISABLE_DEBUG_MODE
|
||||||
|
- DISABLE_MM_REPLACEMENT
|
||||||
|
- COMPILER_CLANG
|
||||||
|
- TEST_EXPORT_STATIC
|
||||||
|
- TEST_EXPORT_SHARED
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-cmake-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_OPENSSL" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_THREAD_SUPPORT=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_DEBUG_MODE" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_DEBUG_MODE=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_MM_REPLACEMENT" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_MM_REPLACEMENT=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "COMPILER_CLANG" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS=""
|
||||||
|
export CC=clang
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_STATIC" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_SHARED" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=SHARED -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
|
||||||
|
else
|
||||||
|
EVENT_CMAKE_OPTIONS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
#run build and test
|
||||||
|
JOBS=20
|
||||||
|
export CTEST_PARALLEL_LEVEL=$JOBS
|
||||||
|
export CTEST_OUTPUT_ON_FAILURE=1
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
echo [cmake]: cmake .. $EVENT_CMAKE_OPTIONS
|
||||||
|
cmake .. $EVENT_CMAKE_OPTIONS
|
||||||
|
cmake --build .
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_STATIC" ]; then
|
||||||
|
sudo python3 ../test-export/test-export.py static
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_SHARED" ]; then
|
||||||
|
sudo python3 ../test-export/test-export.py shared
|
||||||
|
else
|
||||||
|
cmake --build . --target verify
|
||||||
|
fi
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-cmake-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
||||||
|
|
||||||
|
autotools:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-18.04]
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- NONE
|
||||||
|
- DISABLE_OPENSSL
|
||||||
|
- DISABLE_THREAD_SUPPORT
|
||||||
|
- DISABLE_DEBUG_MODE
|
||||||
|
- DISABLE_MM_REPLACEMENT
|
||||||
|
- COMPILER_CLANG
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-autotools-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_OPENSSL" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-openssl"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-thread-support"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_DEBUG_MODE" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-debug-mode"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_MM_REPLACEMENT" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-malloc-replacement"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "COMPILER_CLANG" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS=""
|
||||||
|
export CC=clang
|
||||||
|
|
||||||
|
else
|
||||||
|
EVENT_CONFIGURE_OPTIONS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
#run build and test
|
||||||
|
JOBS=20
|
||||||
|
./autogen.sh
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
echo [configure]: ../configure $EVENT_CONFIGURE_OPTIONS
|
||||||
|
../configure $EVENT_CONFIGURE_OPTIONS
|
||||||
|
make
|
||||||
|
make -j $JOBS verify
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-autotools-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
166
.github/workflows/macos.yml
vendored
Normal file
166
.github/workflows/macos.yml
vendored
Normal file
@ -0,0 +1,166 @@
|
|||||||
|
---
|
||||||
|
name: macos
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize]
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
push:
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cmake:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [macos-latest]
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- NONE
|
||||||
|
- DISABLE_OPENSSL
|
||||||
|
- DISABLE_THREAD_SUPPORT
|
||||||
|
- DISABLE_DEBUG_MODE
|
||||||
|
- DISABLE_MM_REPLACEMENT
|
||||||
|
- TEST_EXPORT_STATIC
|
||||||
|
- TEST_EXPORT_SHARED
|
||||||
|
- OPENSSL_1_1
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: macos-10.15-cmake-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_1_1" ]; then
|
||||||
|
export OPENSSL_ROOT_DIR=/usr/local/opt/openssl@1.1
|
||||||
|
else
|
||||||
|
export OPENSSL_ROOT_DIR=/usr/local/opt/openssl
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_OPENSSL" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_THREAD_SUPPORT=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_DEBUG_MODE" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_DEBUG_MODE=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_MM_REPLACEMENT" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_MM_REPLACEMENT=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_STATIC" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_SHARED" ]; then
|
||||||
|
EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=SHARED -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
|
||||||
|
else
|
||||||
|
EVENT_CMAKE_OPTIONS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
#run build and test
|
||||||
|
JOBS=1
|
||||||
|
export CTEST_PARALLEL_LEVEL=$JOBS
|
||||||
|
export CTEST_OUTPUT_ON_FAILURE=1
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
echo [cmake]: cmake .. $EVENT_CMAKE_OPTIONS
|
||||||
|
cmake .. $EVENT_CMAKE_OPTIONS
|
||||||
|
cmake --build .
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_STATIC" ]; then
|
||||||
|
sudo python3 ../test-export/test-export.py static
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "TEST_EXPORT_SHARED" ]; then
|
||||||
|
sudo python3 ../test-export/test-export.py shared
|
||||||
|
else
|
||||||
|
cmake --build . --target verify
|
||||||
|
fi
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-cmake-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
||||||
|
|
||||||
|
autotools:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [macos-latest]
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- NONE
|
||||||
|
- DISABLE_OPENSSL
|
||||||
|
- DISABLE_THREAD_SUPPORT
|
||||||
|
- DISABLE_DEBUG_MODE
|
||||||
|
- DISABLE_MM_REPLACEMENT
|
||||||
|
- OPENSSL_1_1
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-autotools-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- name: Install Depends
|
||||||
|
run: brew install autoconf automake libtool pkg-config
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_1_1" ]; then
|
||||||
|
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||||
|
else
|
||||||
|
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_OPENSSL" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-openssl"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-thread-support"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_DEBUG_MODE" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-debug-mode"
|
||||||
|
|
||||||
|
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_MM_REPLACEMENT" ]; then
|
||||||
|
EVENT_CONFIGURE_OPTIONS="--disable-malloc-replacement"
|
||||||
|
|
||||||
|
else
|
||||||
|
EVENT_CONFIGURE_OPTIONS=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
#run build and test
|
||||||
|
JOBS=1
|
||||||
|
./autogen.sh
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
echo [configure]: ../configure $EVENT_CONFIGURE_OPTIONS
|
||||||
|
../configure $EVENT_CONFIGURE_OPTIONS
|
||||||
|
make
|
||||||
|
make -j $JOBS verify
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-autotools-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
88
.github/workflows/mingw.yml
vendored
Normal file
88
.github/workflows/mingw.yml
vendored
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
---
|
||||||
|
name: mingw
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize]
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
push:
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
windows:
|
||||||
|
runs-on: windows-2016
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- none
|
||||||
|
- disable-openssl
|
||||||
|
- disable-thread-support
|
||||||
|
- disable-debug-mode
|
||||||
|
- disable-malloc-replacement
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
|
||||||
|
- name: Cache MingW
|
||||||
|
id: cache-mingw
|
||||||
|
uses: actions/cache@v1.0.3
|
||||||
|
with:
|
||||||
|
path: D:\a\_temp\msys
|
||||||
|
key: windows-mingw
|
||||||
|
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.0.3
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: mingw-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- uses: numworks/setup-msys2@v1
|
||||||
|
if: steps.cache-mingw.outputs.cache-hit != 'true'
|
||||||
|
with:
|
||||||
|
msystem: MINGW64
|
||||||
|
|
||||||
|
- name: Install Dependes
|
||||||
|
if: steps.cache-mingw.outputs.cache-hit != 'true'
|
||||||
|
run: |
|
||||||
|
msys2do pacman -S --noconfirm mingw-w64-x86_64-gcc make autoconf automake libtool openssl-devel
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
$env:EVENT_CONFIGURE_OPTIONS=""
|
||||||
|
if ( "${{ matrix.EVENT_MATRIX }}" -ne "none" ) {
|
||||||
|
$env:EVENT_CONFIGURE_OPTIONS="--${{ matrix.EVENT_MATRIX }}"
|
||||||
|
}
|
||||||
|
$env:EVENT_TESTS_PARALLEL=1
|
||||||
|
$env:EVENT_BUILD_PARALLEL=10
|
||||||
|
|
||||||
|
$script='
|
||||||
|
export PATH="/mingw64/bin:/usr/bin:/bin:/usr/local/bin:/opt/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:$PATH"
|
||||||
|
./autogen.sh 2>&1 3>&1
|
||||||
|
[[ $? -ne 0 ]] && exit 1
|
||||||
|
mkdir -p build
|
||||||
|
cd build
|
||||||
|
[[ $? -ne 0 ]] && exit 1
|
||||||
|
LDFLAGS="-L/usr/lib" CFLAGS="-I/usr/include" ../configure $EVENT_CONFIGURE_OPTIONS 2>&1
|
||||||
|
[[ $? -ne 0 ]] && exit 1
|
||||||
|
make -j $EVENT_BUILD_PARALLEL 2>&1
|
||||||
|
[[ $? -ne 0 ]] && exit 1
|
||||||
|
make verify -j $EVENT_TESTS_PARALLEL 2>&1 '
|
||||||
|
D:\a\_temp\msys\msys64\usr\bin\bash.exe -c $script
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: mingw-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
233
.github/workflows/windows.yml
vendored
Normal file
233
.github/workflows/windows.yml
vendored
Normal file
@ -0,0 +1,233 @@
|
|||||||
|
---
|
||||||
|
name: windows
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize]
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
push:
|
||||||
|
paths-ignore:
|
||||||
|
- '**.md'
|
||||||
|
- '.mailmap'
|
||||||
|
- 'ChangeLog*'
|
||||||
|
- 'whatsnew*'
|
||||||
|
- 'LICENSE'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
vs2017:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [windows-2016]
|
||||||
|
EVENT_MATRIX: [NONE]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
|
||||||
|
- name: Cache Depends
|
||||||
|
id: cache-depends
|
||||||
|
uses: actions/cache@v1.0.3
|
||||||
|
with:
|
||||||
|
path: C:\vcpkg\installed
|
||||||
|
key: ${{ matrix.os }}-vcpkg
|
||||||
|
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.0.3
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-${{ matrix.EVENT_MATRIX }}
|
||||||
|
|
||||||
|
- name: Install Depends
|
||||||
|
if: steps.cache-depends.outputs.cache-hit != 'true'
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
vcpkg install openssl:x64-windows
|
||||||
|
vcpkg install zlib:x64-windows
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
$OPENSSL_ROOT_DIR="C:\vcpkg\installed\x64-windows"
|
||||||
|
$EVENT_BUILD_PARALLEL=10
|
||||||
|
$EVENT_TESTS_PARALLEL=1
|
||||||
|
$env:PATH="$OPENSSL_ROOT_DIR/bin;$env:PATH"
|
||||||
|
|
||||||
|
if ( "${{ matrix.EVENT_MATRIX }}" -eq "LIBRARY_TYPE_STATIC" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_OPENSSL" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_THREAD_SUPPORT" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_THREAD_SUPPORT=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_DEBUG_MODE" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_DEBUG_MODE=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_MM_REPLACEMENT" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_MM_REPLACEMENT=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "UNICODE" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DCMAKE_C_FLAGS='-DUNICODE -D_UNICODE'"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_SHARED" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_STATIC" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$EVENT_CMAKE_OPTIONS=""
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-not (Test-Path -Path "./build")){
|
||||||
|
mkdir build
|
||||||
|
}
|
||||||
|
cd build
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
if ("${{ matrix.os }}" -eq "windows-2016") {
|
||||||
|
$CMAKE_CMD="cmake -G 'Visual Studio 15 2017 Win64' .. $EVENT_CMAKE_OPTIONS"
|
||||||
|
}
|
||||||
|
else { # windows-2019
|
||||||
|
$CMAKE_CMD="cmake -G 'Visual Studio 16 2019' -A x64 .. $EVENT_CMAKE_OPTIONS"
|
||||||
|
}
|
||||||
|
echo "[cmake] $CMAKE_CMD"
|
||||||
|
Invoke-Expression $CMAKE_CMD
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
cmake --build . -j $EVENT_BUILD_PARALLEL -- /nologo /verbosity:minimal
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
if ("${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_STATIC") {
|
||||||
|
python ../test-export/test-export.py static
|
||||||
|
}
|
||||||
|
elseif ("${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_SHARED") {
|
||||||
|
python ../test-export/test-export.py shared
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
ctest --output-on-failure -j $EVENT_TESTS_PARALLEL
|
||||||
|
}
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
||||||
|
|
||||||
|
vs2019:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
os: [windows-2019]
|
||||||
|
EVENT_MATRIX:
|
||||||
|
- NONE
|
||||||
|
- LIBRARY_TYPE_STATIC
|
||||||
|
- DISABLE_OPENSSL
|
||||||
|
- DISABLE_THREAD_SUPPORT
|
||||||
|
- DISABLE_DEBUG_MODE
|
||||||
|
- DISABLE_MM_REPLACEMENT
|
||||||
|
- DUNICODE
|
||||||
|
- TEST_EXPORT_SHARED
|
||||||
|
- TEST_EXPORT_STATIC
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2.0.0
|
||||||
|
|
||||||
|
- name: Cache Depends
|
||||||
|
id: cache-depends
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: C:\vcpkg\installed
|
||||||
|
key: ${{ matrix.os }}-vcpkg
|
||||||
|
|
||||||
|
- name: Cache Build
|
||||||
|
uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: build
|
||||||
|
key: ${{ matrix.os }}-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
|
||||||
|
- name: Install Depends
|
||||||
|
if: steps.cache-depends.outputs.cache-hit != 'true'
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
vcpkg install openssl:x64-windows
|
||||||
|
vcpkg install zlib:x64-windows
|
||||||
|
|
||||||
|
- name: Build And Test
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
$OPENSSL_ROOT_DIR="C:\vcpkg\installed\x64-windows"
|
||||||
|
$EVENT_BUILD_PARALLEL=10
|
||||||
|
$EVENT_TESTS_PARALLEL=1
|
||||||
|
$env:PATH="$OPENSSL_ROOT_DIR/bin;$env:PATH"
|
||||||
|
|
||||||
|
if ( "${{ matrix.EVENT_MATRIX }}" -eq "LIBRARY_TYPE_STATIC" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_OPENSSL" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_THREAD_SUPPORT" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_THREAD_SUPPORT=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_DEBUG_MODE" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_DEBUG_MODE=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "DISABLE_MM_REPLACEMENT" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_MM_REPLACEMENT=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "UNICODE" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DCMAKE_C_FLAGS='-DUNICODE -D_UNICODE'"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_SHARED" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
}
|
||||||
|
elseif ( "${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_STATIC" ) {
|
||||||
|
$EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON"
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$EVENT_CMAKE_OPTIONS=""
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-not (Test-Path -Path "./build")){
|
||||||
|
mkdir build
|
||||||
|
}
|
||||||
|
cd build
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
if ("${{ matrix.os }}" -eq "windows-2016") {
|
||||||
|
$CMAKE_CMD="cmake -G 'Visual Studio 15 2017 Win64' .. $EVENT_CMAKE_OPTIONS"
|
||||||
|
}
|
||||||
|
else { # windows-2019
|
||||||
|
$CMAKE_CMD="cmake -G 'Visual Studio 16 2019' -A x64 .. $EVENT_CMAKE_OPTIONS"
|
||||||
|
}
|
||||||
|
echo "[cmake] $CMAKE_CMD"
|
||||||
|
Invoke-Expression $CMAKE_CMD
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
cmake --build . -j $EVENT_BUILD_PARALLEL -- /nologo /verbosity:minimal
|
||||||
|
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
|
||||||
|
|
||||||
|
if ("${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_STATIC") {
|
||||||
|
python ../test-export/test-export.py static
|
||||||
|
}
|
||||||
|
elseif ("${{ matrix.EVENT_MATRIX }}" -eq "TEST_EXPORT_SHARED") {
|
||||||
|
python ../test-export/test-export.py shared
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
ctest --output-on-failure -j $EVENT_TESTS_PARALLEL
|
||||||
|
}
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
if: failure()
|
||||||
|
with:
|
||||||
|
name: ${{ matrix.os }}-${{ matrix.EVENT_MATRIX }}-build
|
||||||
|
path: build
|
38
.travis.yml
38
.travis.yml
@ -39,9 +39,9 @@ matrix:
|
|||||||
- os: linux
|
- os: linux
|
||||||
env: EVENT_BUILD_METHOD=autotools EVENT_CONFIGURE_OPTIONS=""
|
env: EVENT_BUILD_METHOD=autotools EVENT_CONFIGURE_OPTIONS=""
|
||||||
compiler: clang
|
compiler: clang
|
||||||
# coveralls
|
## coveralls
|
||||||
- os: linux
|
#- os: linux
|
||||||
env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="-DEVENT__COVERAGE=ON -DCMAKE_BUILD_TYPE=debug" COVERALLS=yes
|
# env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="-DEVENT__COVERAGE=ON -DCMAKE_BUILD_TYPE=debug" COVERALLS=yes
|
||||||
# test-export
|
# test-export
|
||||||
- os: linux
|
- os: linux
|
||||||
env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON" TEST_EXPORT=STATIC
|
env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="-DEVENT__LIBRARY_TYPE=STATIC -DEVENT__DISABLE_TESTS=ON -DEVENT__DISABLE_SAMPLES=ON" TEST_EXPORT=STATIC
|
||||||
@ -51,22 +51,22 @@ matrix:
|
|||||||
- os: linux
|
- os: linux
|
||||||
dist: bionic
|
dist: bionic
|
||||||
env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="" OPENSSL_1_1=yes
|
env: EVENT_BUILD_METHOD=cmake EVENT_CMAKE_OPTIONS="" OPENSSL_1_1=yes
|
||||||
# deploy documentation to github pages
|
## deploy documentation to github pages
|
||||||
- os: linux
|
#- os: linux
|
||||||
env: TOOL=doxygen
|
# env: TOOL=doxygen
|
||||||
addons:
|
# addons:
|
||||||
apt:
|
# apt:
|
||||||
packages:
|
# packages:
|
||||||
- doxygen
|
# - doxygen
|
||||||
- doxygen-doc
|
# - doxygen-doc
|
||||||
- doxygen-latex
|
# - doxygen-latex
|
||||||
- doxygen-gui
|
# - doxygen-gui
|
||||||
- graphviz
|
# - graphviz
|
||||||
- cmake
|
# - cmake
|
||||||
branches:
|
# branches:
|
||||||
only:
|
# only:
|
||||||
- master
|
# - master
|
||||||
if: repo = libevent/libevent AND branch = master AND type != pull_request
|
# if: repo = libevent/libevent AND branch = master AND type != pull_request
|
||||||
fast_finish: true
|
fast_finish: true
|
||||||
|
|
||||||
language: c
|
language: c
|
||||||
|
@ -7,3 +7,5 @@ rules:
|
|||||||
level: warning
|
level: warning
|
||||||
indent-sequences: consistent
|
indent-sequences: consistent
|
||||||
line-length: disable
|
line-length: disable
|
||||||
|
# github-actions "on:"
|
||||||
|
truthy: disable
|
||||||
|
@ -158,7 +158,8 @@ macro(add_event_library LIB_NAME)
|
|||||||
"${LIB_NAME}_shared" PROPERTIES
|
"${LIB_NAME}_shared" PROPERTIES
|
||||||
OUTPUT_NAME "${LIB_NAME}-${EVENT_PACKAGE_RELEASE}"
|
OUTPUT_NAME "${LIB_NAME}-${EVENT_PACKAGE_RELEASE}"
|
||||||
VERSION "${CURRENT_MINUS_AGE}.${EVENT_ABI_LIBVERSION_AGE}.${EVENT_ABI_LIBVERSION_REVISION}"
|
VERSION "${CURRENT_MINUS_AGE}.${EVENT_ABI_LIBVERSION_AGE}.${EVENT_ABI_LIBVERSION_REVISION}"
|
||||||
SOVERSION "${CURRENT_MINUS_AGE}")
|
SOVERSION "${CURRENT_MINUS_AGE}"
|
||||||
|
INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (NOT WIN32)
|
if (NOT WIN32)
|
||||||
|
@ -74,16 +74,11 @@ ENDIF() # NOT GCOV_PATH
|
|||||||
IF(NOT CMAKE_COMPILER_IS_GNUCC)
|
IF(NOT CMAKE_COMPILER_IS_GNUCC)
|
||||||
# Clang version 3.0.0 and greater now supports gcov as well.
|
# Clang version 3.0.0 and greater now supports gcov as well.
|
||||||
MESSAGE(WARNING "Compiler is not GNU gcc! Clang Version 3.0.0 and greater supports gcov as well, but older versions don't.")
|
MESSAGE(WARNING "Compiler is not GNU gcc! Clang Version 3.0.0 and greater supports gcov as well, but older versions don't.")
|
||||||
|
IF(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" AND NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
|
||||||
IF(NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
|
||||||
MESSAGE(FATAL_ERROR "Compiler is not GNU gcc! Aborting...")
|
MESSAGE(FATAL_ERROR "Compiler is not GNU gcc! Aborting...")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
ENDIF() # NOT CMAKE_COMPILER_IS_GNUCC
|
ENDIF() # NOT CMAKE_COMPILER_IS_GNUCC
|
||||||
|
|
||||||
IF ( NOT CMAKE_BUILD_TYPE STREQUAL "Debug" )
|
|
||||||
MESSAGE( WARNING "Code coverage results with an optimized (non-Debug) build may be misleading" )
|
|
||||||
ENDIF() # NOT CMAKE_BUILD_TYPE STREQUAL "Debug"
|
|
||||||
|
|
||||||
|
|
||||||
# Param _targetname The name of new the custom make target
|
# Param _targetname The name of new the custom make target
|
||||||
# Param _testrunner The name of the target which runs the tests.
|
# Param _testrunner The name of the target which runs the tests.
|
||||||
@ -108,15 +103,15 @@ FUNCTION(SETUP_TARGET_FOR_COVERAGE _targetname _testrunner _outputname)
|
|||||||
|
|
||||||
# Cleanup lcov
|
# Cleanup lcov
|
||||||
${LCOV_PATH} --directory . --zerocounters
|
${LCOV_PATH} --directory . --zerocounters
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove ${_outputname}.info ${_outputname}.info.cleaned
|
||||||
|
|
||||||
# Run tests
|
# Run tests
|
||||||
COMMAND ${_testrunner} ${ARGV3}
|
COMMAND ${_testrunner} ${ARGV3}
|
||||||
|
|
||||||
# Capturing lcov counters and generating report
|
# Capturing lcov counters and generating report
|
||||||
COMMAND ${LCOV_PATH} --directory . --capture --output-file ${_outputname}.info
|
COMMAND ${LCOV_PATH} --directory . --capture --output-file ${_outputname}.info
|
||||||
COMMAND ${LCOV_PATH} --remove ${_outputname}.info 'tests/*' '/usr/*' --output-file ${_outputname}.info.cleaned
|
COMMAND ${LCOV_PATH} --remove ${_outputname}.info '*/test/*' '/usr/*' --output-file ${CMAKE_BINARY_DIR}/${_outputname}.info.cleaned
|
||||||
COMMAND ${GENHTML_PATH} -o ${_outputname} ${_outputname}.info.cleaned
|
COMMAND ${GENHTML_PATH} -o ${_outputname} ${_outputname}.info.cleaned
|
||||||
COMMAND ${CMAKE_COMMAND} -E remove ${_outputname}.info ${_outputname}.info.cleaned
|
|
||||||
|
|
||||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||||
COMMENT "Resetting code coverage counters to zero.\nProcessing code coverage counters and generating report."
|
COMMENT "Resetting code coverage counters to zero.\nProcessing code coverage counters and generating report."
|
||||||
|
@ -48,11 +48,11 @@ def link_and_run(link, code):
|
|||||||
Returns 0 if links and runs successfully, otherwise 1.
|
Returns 0 if links and runs successfully, otherwise 1.
|
||||||
"""
|
"""
|
||||||
exec_cmd("cmake --build . --target clean", True)
|
exec_cmd("cmake --build . --target clean", True)
|
||||||
generator = ''
|
arch = ''
|
||||||
if platform.system() == "Windows":
|
if platform.system() == "Windows":
|
||||||
generator = '-G "Visual Studio 15 2017 Win64"'
|
arch = '-A x64'
|
||||||
cmd = 'cmake .. %s -DEVENT__LINK_COMPONENT=%s -DEVENT__CODE_COMPONENT=%s' % (
|
cmd = 'cmake .. %s -DEVENT__LINK_COMPONENT=%s -DEVENT__CODE_COMPONENT=%s' % (
|
||||||
generator, link, code)
|
arch, link, code)
|
||||||
if link_type == "static":
|
if link_type == "static":
|
||||||
cmd = "".join([cmd, " -DLIBEVENT_STATIC_LINK=1"])
|
cmd = "".join([cmd, " -DLIBEVENT_STATIC_LINK=1"])
|
||||||
r = exec_cmd(cmd, True)
|
r = exec_cmd(cmd, True)
|
||||||
|
@ -3454,7 +3454,7 @@ struct testcase_t main_testcases[] = {
|
|||||||
TT_FORK|TT_NEED_BASE|TT_RETRIABLE, &basic_setup, NULL },
|
TT_FORK|TT_NEED_BASE|TT_RETRIABLE, &basic_setup, NULL },
|
||||||
LEGACY(priorities, TT_FORK|TT_NEED_BASE),
|
LEGACY(priorities, TT_FORK|TT_NEED_BASE),
|
||||||
BASIC(priority_active_inversion, TT_FORK|TT_NEED_BASE),
|
BASIC(priority_active_inversion, TT_FORK|TT_NEED_BASE),
|
||||||
{ "common_timeout", test_common_timeout, TT_FORK|TT_NEED_BASE,
|
{ "common_timeout", test_common_timeout, TT_FORK|TT_NEED_BASE|TT_RETRIABLE,
|
||||||
&basic_setup, NULL },
|
&basic_setup, NULL },
|
||||||
|
|
||||||
/* These legacy tests may not all need all of these flags. */
|
/* These legacy tests may not all need all of these flags. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user