summaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/README.md53
-rw-r--r--.github/workflows/ci.yml20
2 files changed, 39 insertions, 34 deletions
diff --git a/.github/workflows/README.md b/.github/workflows/README.md
index 0045d1e..eddfd3f 100644
--- a/.github/workflows/README.md
+++ b/.github/workflows/README.md
@@ -1,36 +1,15 @@
This directory contains [GitHub Actions](https://github.com/features/actions) workflow files.
-# Known issue which will be resolved soon
-
-- `make cxxtest`
- - Disabled for now. Will be enabled after #993.
-- `make c_standards_c90`, `make c_standards_c11`
- - Disabled for now. Will be enabled after #994.
-
-
# Maintenance Schedule
-`ubuntu-16.04` environment will be removed at September, 2021.
---------------------------------------------------------------
+[`ubuntu-16.04` environment will be removed at September, 2021.]((https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021/).
+----------------------------------------------------------------
-It also will remove test for the following compilers:
+We also will remove test for the following compilers.
- gcc: 4.4, 4.6, 4.7
- clang: 3.5, 3.6, 3.7, 3.8
-See also GitHub official announcement :
-["Ubuntu 16.04 LTS will be removed on September 20, 2021"](https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021/).
-
-
-# Difference with `.travis.yml`
-
-The following tests are not included yet.
-
-- name: Compile OSS-Fuzz targets
-- name: tag build
-- name: aarch64 real-hw tests
-- name: PPC64LE real-hw tests
-- name: IBM s390x real-hw tests
# Known issues
@@ -42,7 +21,7 @@ Because there're several issues which may take relatively long time to resolve.
We'll fully enable it when we ensure `make usan` is ready for all commits and PRs.
-See https://github.com/lz4/lz4/pull/983 for details.
+See [#983](https://github.com/lz4/lz4/pull/983) for details.
## C Compilers (`lz4-c-compilers`)
@@ -55,17 +34,19 @@ See https://github.com/lz4/lz4/pull/983 for details.
- See [#991](https://github.com/lz4/lz4/issues/991) for details.
- Currently, the following 32bit executable tests fail with `gcc-11`
- - `CC=clang-X CFLAGS='-O3' make V=1 -C tests clean test-lz4c32`
- - `CC=clang-X CFLAGS='-O3 -mx32' make V=1 -C tests clean test-lz4c32`
+ - `CC=gcc-11 CFLAGS='-O3' make V=1 -C tests clean test-lz4c32`
+ - `CC=gcc-11 CFLAGS='-O3 -mx32' make V=1 -C tests clean test-lz4c32`
+ - See [#991](https://github.com/lz4/lz4/issues/991) for details.
-## cppcheck.yml
+## cppcheck (`lz4-cppcheck`)
This test script ignores the exit code of `make cppcheck`.
Because this project doesn't 100% follow their recommendation.
Also sometimes it reports false positives.
+
# Notes
- You can investigate various information at the right pane of GitHub
@@ -75,4 +56,18 @@ Also sometimes it reports false positives.
| ------------------------- | ------------------------------------- |
| OS, VM | Set up job |
| git repo, commit hash | Run actions/checkout@v2 |
-| gcc, tools | Environment info |
+| Version of tools | Environment info |
+
+
+
+# Difference with `.travis.yml`
+
+The following tests are not included yet.
+
+- name: Compile OSS-Fuzz targets
+
+The following tests will not be included due to limitation of GH-Actions.
+
+- name: aarch64 real-hw tests
+- name: PPC64LE real-hw tests
+- name: IBM s390x real-hw tests
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 041168b..c23e0a8 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -8,8 +8,8 @@
#
# Known Issue
# - All test cases which described as 'fail' must be fixed and replaced with 'true'.
-# - gcc-11 x32, x86 asserts.
-# - all clangs: x32, x86 asserts.
+# - gcc-11 (x32, x86) : "../lib/lz4hc.c:148: LZ4HC_countBack: Assertion `(size_t)(match - mMin) < (1U<<31)' failed."
+# - all clangs (x32, x86) : "../lib/lz4hc.c:282: int LZ4HC_InsertAndGetWiderMatch(...): Assertion `matchPtr >= lowPrefixPtr' failed."
#
name: lz4 CI
on: [push, pull_request]
@@ -39,7 +39,7 @@ jobs:
# gcc
{ pkgs: '', cc: gcc, cxx: g++, stdc11: 'true', stdc90: 'true', x32: 'true', x86: 'true', cxxtest: 'true', os: ubuntu-latest, },
- { pkgs: 'gcc-11 lib32gcc-11-dev libx32gcc-11-dev', cc: gcc-11, cxx: g++-11, stdc11: 'true', stdc90: 'true', x32: 'fail', x86: 'fail', cxxtest: 'true', os: ubuntu-20.04, }, # x32:assert(lz4hc.c:148), x86:assert(lz4hc.c:148)
+ { pkgs: 'gcc-11 lib32gcc-11-dev libx32gcc-11-dev', cc: gcc-11, cxx: g++-11, stdc11: 'true', stdc90: 'true', x32: 'fail', x86: 'fail', cxxtest: 'true', os: ubuntu-20.04, },
{ pkgs: 'gcc-10 lib32gcc-10-dev libx32gcc-10-dev', cc: gcc-10, cxx: g++-10, stdc11: 'true', stdc90: 'true', x32: 'true', x86: 'true', cxxtest: 'true', os: ubuntu-20.04, },
{ pkgs: 'gcc-9 lib32gcc-9-dev libx32gcc-9-dev', cc: gcc-9, cxx: g++-9, stdc11: 'true', stdc90: 'true', x32: 'true', x86: 'true', cxxtest: 'true', os: ubuntu-20.04, },
{ pkgs: 'gcc-8 g++-8 lib32gcc-8-dev libx32gcc-8-dev', cc: gcc-8, cxx: g++-8, stdc11: 'true', stdc90: 'true', x32: 'true', x86: 'true', cxxtest: 'true', os: ubuntu-20.04, },
@@ -330,7 +330,7 @@ jobs:
- name: ubsan
#########################################################
# For now, we ignore the exit code of `make usan`.
- # See "Known issues / lz4-ubsan" in README.md
+ # See "Known issues / lz4-ubsan-x64" in README.md
# When we'll resolve this issue, remove "|| $FIXME__LZ4_CI_IGNORE"
#########################################################
run: make V=1 clean usan MOREFLAGS='-Wcomma -Werror' || $FIXME__LZ4_CI_IGNORE
@@ -352,7 +352,7 @@ jobs:
- name: ubsan32
#########################################################
# For now, we ignore the exit code of `make usan32`.
- # See "Known issues / ubsan.yml" in README.md.
+ # See "Known issues / lz4-ubsaan-x86" in README.md.
# When we'll resolve this issue, remove "|| $FIXME__LZ4_CI_IGNORE"
#########################################################
run: CC=clang make V=1 clean usan32 MOREFLAGS='-Wcomma -Werror' || $FIXME__LZ4_CI_IGNORE
@@ -386,6 +386,16 @@ jobs:
# QEMU
# All tests use QEMU (static) and gcc cross compiler.
+ #
+ # note:
+ # We don't employ completely matrix method which provides `MOREFLAGS`
+ # etc in the matrix. Because some platform may need its special
+ # compiler options and test.
+ # For example, xxHash already has tests for scalar and SIMD version of
+ # it. But compiler options are quite different between platforms.
+ #
+ # So, please keep them simple and independent.
+ #
lz4-qemu-platforms:
name: QEMU ${{ matrix.type }}
strategy: