-
Notifications
You must be signed in to change notification settings - Fork 0
I2358 meson rc msvc #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Changes from all commits
70370d8
82a7b75
9408d8b
b7bfbe0
f32d693
d0e1a71
c9c5552
ec5852b
71b22ce
c916fc4
5f629f6
0b50f69
05efc6d
f78d483
cb9f5a7
ead8677
25a8205
f4f3898
06beca3
a57e2c6
6a7c9ed
8986517
8e02728
8eb682b
142e4a1
c7c032e
37fc2e8
cfe36d1
e4fd1dd
82cdc2e
da49c18
c8d8d95
003c034
66582ab
ee00cb4
376b61d
2790328
fc2656b
36fe8af
21a6f8a
95de0f0
0e7c168
547c24d
cb7cd62
354d6f7
5bac83b
f8d3a2e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -22,184 +22,55 @@ jobs: | |
| # The master branch exclusive jobs will be in a separate | ||
| # workflow file (the osx tests and meson build that is) | ||
|
|
||
| benchmarking: | ||
| runs-on: ubuntu-latest | ||
| meson-msvc: | ||
| name: 'Meson on Windows MSVC' | ||
| runs-on: windows-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: make benchmarking | ||
| run: make benchmarking | ||
|
|
||
| test: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: make test | ||
| run: make test | ||
| # Some replacements: | ||
| # * https://renenyffenegger.ch/notes/Windows/development/Visual-Studio/environment-variables/index | ||
| # * https://github.com/microsoft/vswhere/wiki/Start-Developer-Command-Prompt | ||
| - uses: ilammy/msvc-dev-cmd@v1 | ||
|
|
||
| gcc-6-7-libzstd: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: gcc-6 + gcc-7 + libzstdmt compilation | ||
| - name: install meson | ||
| run: | | ||
| make gcc6install gcc7install | ||
| CC=gcc-6 CFLAGS=-Werror make -j all | ||
| make clean | ||
| CC=gcc-7 CFLAGS=-Werror make -j all | ||
| make clean | ||
| LDFLAGS=-Wl,--no-undefined make -C lib libzstd-mt | ||
| make -C tests zbufftest-dll | ||
|
|
||
| gcc-8-asan-ubsan-testzstd: | ||
| runs-on: ubuntu-16.04 # fails on 18.04 | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: gcc-8 + ASan + UBSan + Test Zstd | ||
| pip install -U meson | ||
|
|
||
| - run: | | ||
| git clone https://github.com/lzutao/lz4/ third-party\lz4 | ||
| cd third-party\lz4 | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think lz4 is in vcpkg, like zlib below. Will be great to use the same approach for the dependencies |
||
| git switch std | ||
| meson setup ` | ||
| --buildtype=release ` | ||
| -Ddefault_library=shared ` | ||
| -Dprefix=C:\lz4 ` | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Some machines may not have disk |
||
| contrib\meson builddir | ||
| cd builddir | ||
| meson compile | ||
| meson install | ||
|
|
||
| - name: install zlib | ||
| run: | | ||
| make gcc8install | ||
| CC=gcc-8 CFLAGS="-Werror" make -j all | ||
| make clean | ||
| CC=gcc-8 make -j uasan-test-zstd </dev/null | ||
| vcpkg integrate install | ||
| vcpkg install --triplet x64-windows zlib | ||
|
|
||
| gcc-6-asan-ubsan-testzstd-32bit: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: gcc-6 + ASan + UBSan + Test Zstd, 32bit mode | ||
| run: | | ||
| make gcc6install libc6install | ||
| CC=gcc-6 CFLAGS="-Werror -m32" make -j all32 | ||
| make clean | ||
| CC=gcc-6 make -j uasan-test-zstd32 | ||
|
|
||
| clang-38-msan-testzstd: | ||
| runs-on: ubuntu-16.04 # fails on 18.04 | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: clang-3.8 + MSan + Test Zstd | ||
| - name: install liblzma | ||
| run: | | ||
| # make clang38install (doesn't work) | ||
| sudo apt-add-repository "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.8 main" | ||
| sudo apt-get update | ||
| sudo apt-get install clang-3.8 | ||
| CC=clang-3.8 make clean msan-test-zstd HAVE_ZLIB=0 HAVE_LZ4=0 HAVE_LZMA=0 | ||
| vcpkg install --triplet x64-windows liblzma | ||
| Tree C:\vcpkg\packages\liblzma_x64-windows /F | ||
|
|
||
| cmake-build-and-test-check: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: cmake build and test check | ||
| run: make cmakebuild | ||
|
|
||
| gcc-8-asan-ubsan-fuzz: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: gcc-8 + ASan + UBSan + Fuzz Test | ||
| run: | | ||
| make gcc8install | ||
| CC=gcc-8 FUZZER_FLAGS="--long-tests" make clean uasan-fuzztest | ||
|
|
||
| gcc-6-asan-ubsan-fuzz32: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: gcc-6 + ASan + UBSan + Fuzz Test 32bit | ||
| run: | | ||
| make gcc6install libc6install | ||
| CC=gcc-6 CFLAGS="-O2 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest | ||
|
|
||
| clang-38-msan-fuzz: | ||
| runs-on: ubuntu-16.04 # fails on 18.04 | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: clang-3.8 + MSan + Fuzz Test | ||
| run: | | ||
| # make clang38install (doesn't work) | ||
| sudo apt-add-repository "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.8 main" | ||
| sudo apt-get update | ||
| sudo apt-get install clang-3.8 | ||
| CC=clang-3.8 make clean msan-fuzztest | ||
|
|
||
| asan-ubsan-msan-regression: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: ASan + UBSan + MSan + Regression Test | ||
| run: | | ||
| make -j uasanregressiontest | ||
| make clean | ||
| make -j msanregressiontest | ||
|
|
||
| cpp-gnu90-c99-compatibility: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: C++, gnu90 and c99 compatibility | ||
| run: | | ||
| make cxxtest | ||
| make clean | ||
| make gnu90build | ||
| make clean | ||
| make c99build | ||
| make clean | ||
| make travis-install | ||
|
|
||
| mingw-cross-compilation: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: mingw cross-compilation | ||
| run: | | ||
| # sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix; (doesn't work) | ||
| sudo apt-get install gcc-mingw-w64 | ||
| CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CFLAGS="-Werror -O1" make zstd | ||
|
|
||
| # TODO: Broken test - fix and uncomment | ||
| # armbuild: | ||
| # runs-on: ubuntu-16.04 # doesn't work on latest | ||
| # steps: | ||
| # - uses: actions/checkout@v2 | ||
| # - name: ARM Build Test | ||
| # run: | | ||
| # make arminstall | ||
| # make armbuild | ||
|
|
||
| # TODO: Broken test - fix and uncomment | ||
| # armfuzz: | ||
| # runs-on: ubuntu-16.04 # doesn't work on latest | ||
| # steps: | ||
| # - uses: actions/checkout@v2 | ||
| # - name: Qemu ARM emulation + Fuzz Test | ||
| # run: | | ||
| # make arminstall | ||
| # make armfuzz | ||
|
|
||
| bourne-shell: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v2 | ||
| - name: Bourne shell compatibility (shellcheck) | ||
| run: | | ||
| wget https://github.com/koalaman/shellcheck/releases/download/v0.7.1/shellcheck-v0.7.1.linux.x86_64.tar.xz | ||
| tar -xf shellcheck-v0.7.1.linux.x86_64.tar.xz | ||
| shellcheck-v0.7.1/shellcheck --shell=sh --severity=warning --exclude=SC2010 tests/playTests.sh | ||
|
|
||
| icc: | ||
| name: icc-check | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: install icc | ||
| run: | | ||
| export DEBIAN_FRONTEND=noninteractive | ||
| sudo apt-get -qqq update | ||
| sudo apt-get install -y wget build-essential pkg-config cmake ca-certificates gnupg | ||
| sudo wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB | ||
| sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB | ||
| echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list | ||
| sudo apt-get update | ||
| sudo apt-get install -y intel-oneapi-icc | ||
| - uses: actions/checkout@v2 | ||
| - name: make check | ||
| - name: test | ||
| run: | | ||
| make CC=/opt/intel/oneapi/compiler/latest/linux/bin/intel64/icc check | ||
| cd build\meson | ||
| meson setup ` | ||
| --buildtype=debug ` | ||
| -Db_lundef=false ` | ||
| -Dauto_features=enabled ` | ||
| -Dbin_programs=true ` | ||
| -Dbin_contrib=true ` | ||
| -Ddefault_library=shared ` | ||
| -Dpkg_config_path="C:\vcpkg\packages\zlib_x64-windows\lib\pkgconfig;C:\lz4\lib\pkgconfig" ` | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Relying on hard coded paths, may not work on all the systems. Consider replacing with ENV variable, or there's a way vcpkg installs things |
||
| -Dc_args="-IC:\vcpkg\packages\liblzma_x64-windows\include " ` | ||
| builddir | ||
| meson compile -C builddir | ||
This file was deleted.
This file was deleted.
This file was deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just checking, do we want to use your version of lz4 and not the official one? In case your version becomes out of date?