summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* add missing if for lz4clifegpc2021-07-011-1/+3
|
* Link static library first otherwise rebuild source files.lifegpc2021-07-011-14/+6
|
* fix link problem on win32 MSVClifegpc2021-06-061-5/+18
|
* Merge pull request #996 from t-mat/gha-3Yann Collet2021-06-032-307/+574
|\ | | | | Improve CI script
| * Fix error in ci.ymlTakayuki Matsuoka2021-06-011-1/+1
| | | | | | | | | | | | | | | | Fix the following error ``` lz4 CI : .github#L1 Error when evaluating 'runs-on' for job 'lz4-check-tag'. (Line: 593, Col: 14): Unexpected value '' ```
| * Update document for .github/workflowsTakayuki Matsuoka2021-06-012-34/+39
| |
| * Merge branch 'lz4:dev' into gha-3Takayuki MATSUOKA2021-06-013-172/+181
| |\ | |/ |/|
* | Merge pull request #998 from t-mat/travis-remove-tests-2Yann Collet2021-05-311-148/+148
|\ \ | | | | | | Remove tests from .travis.yml (part 2/2)
| * | Disable "(Trusty) gcc-4.4 compilation"Takayuki Matsuoka2021-05-311-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following commands ``` make all CFLAGS=-fPIC LDFLAGS='-pie -fPIE -D_FORTIFY_SOURCE=2' make -C programs ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Trusty) scan-build + cppcheck"Takayuki Matsuoka2021-05-311-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-scan-build] contains the following command ``` make staticAnalyze ``` [lz4-cppcheck]contains the following command ``` make cppcheck ``` We ignore the exit code of cppcheck. We refer its output as a guideline. [lz4-scan-build] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L285-L302 [lz4-cppcheck] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L268-L282
| * | Disable "(Trusty) clang-3.8 compilation"Takayuki Matsuoka2021-05-311-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following command for clang-3.8. ``` make -C tests test-lz4 ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Xenial) gcc-5 compilation"Takayuki Matsuoka2021-05-311-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following commands for gcc-5 ``` make -C tests test-lz4 make -C tests test-lz4c32 ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Trusty) gcc-6 standard C compilation"Takayuki Matsuoka2021-05-311-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable "(Trusty) gcc-6 standard C compilation" [lz4-c-compilers] contains the following commands for gcc-6 ``` make c_standards make -C tests test-lz4 ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Trusty) i386 frame + fuzzer test"Takayuki Matsuoka2021-05-311-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-frame] contains the following command ``` make -C tests test-frametest32 ``` ` [lz4-fuzzer] contains the following command ``` make -C tests test-fuzzer32 ``` [lz4-frame] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L224-L237 [lz4-fuzzer] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L192-L208
| * | Disable "(Trusty) i386 benchmark + version test"Takayuki Matsuoka2021-05-311-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following command ``` make -C tests test-lz4c32 ``` [lz4-benchmark] contains the following command ``` make -C tests test-fullbench32 ``` [lz4-versions] contains the following command ``` make -C tests versionsTest ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154 [lz4-benchmark] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L167-L189 [lz4-versions] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L211-L221
| * | Disable "(Trusty) c-to-c++ test"Takayuki Matsuoka2021-05-311-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following command ``` make ctocpptest ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Trusty) valgrind test"Takayuki Matsuoka2021-05-311-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following command ``` make c_standards ``` [lz4-valgrind] contains the following command ``` make -C tests test-lz4 test-mem ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154 [lz4-valgrind] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L305-L316
| * | Disable "(Trusty) USan test"Takayuki Matsuoka2021-05-311-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-ubsan-x64] contains the following command ``` make usan MOREFLAGS=-Wcomma -Werror ``` [lz4-ubsan-x64] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L322-L336
| * | Disable "x32 compatibility test"Takayuki Matsuoka2021-05-311-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-c-compilers] contains the following command ``` make -C tests test MOREFLAGS=-mx32 ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154
| * | Disable "(Precise) g++ and clang CMake test"Takayuki Matsuoka2021-05-311-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-compilers] contains the following commands. Note that `make all` contains `make examples` ``` make cxxtest make clean make examples make clean cmake make clean clangtest ``` [lz4-build-make-travis-install] contains the following commands. ``` make travis-install ``` [lz4-c-compilers] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L17-L154 [lz4-build-make-travis-install] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L498-L510
| * | Disable "Custom LZ4_DISTANCE_MAX ; ..."Takayuki Matsuoka2021-05-311-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-custom-distance] contains the following command ``` MOREFLAGS='-DLZ4_DISTANCE_MAX=8000' make V=1 check make V=1 -C programs lz4-wlib make V=1 -C tests fullbench-wmalloc # test LZ4_USER_MEMORY_FUNCTIONS CC="c++ -Wno-deprecated" make V=1 -C tests fullbench-wmalloc # stricter function signature check ``` Actually, there're 3+1 tests (1) Test for Custom LZ4_DISTANCE_MAX. 6654c2c, #753, #755 (2) Test for dynamic link library. 3dd34df, #888 (3-1) Test for LZ4_USER_MEMORY_FUNCTIONS. 52646e8, #937, #946 (3-2) Same as (3-1), but compile it with c++. After we'll stabilize CI tests, this test should be split into 3 individual parts for clarity. [lz4-custom-distance] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L241-L255
| * | Disable "ASAN tests with fuzzer and frametest"Takayuki Matsuoka2021-05-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-asan-x64] contains the following command ``` sudo sysctl -w vm.mmap_min_addr=4096 CC=clang MOREFLAGS=-fsanitize=address make -C tests test-frametest test-fuzzer ``` [lz4-asan-x64] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L361-L376
| * | Disable "(Precise) frame and fuzzer test"Takayuki Matsuoka2021-05-311-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [lz4-frame] in ci.yml contains the following command ``` make -C tests test-frametest ``` [lz4-fuzzer] in ci.yml contains the following command ``` make -C tests test-fuzzer ```
| * | Disable "(Precise) benchmark test"Takayuki Matsuoka2021-05-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable "(Precise) benchmark test" lz4-benchmark[1] in ci.yml contains the following command ``` make -C tests test-lz4 test-lz4c test-fullbench ``` [1] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L167-L189
| * | Disable "(macOS) General Test"Takayuki Matsuoka2021-05-311-9/+9
|/ / | | | | | | | | | | | | | | | | | | | | lz4-platform-macos-latest[1] in ci.yml contains the following test command ``` make # test library build make test MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion' | tee ``` [1] https://github.com/lz4/lz4/blob/025c3ce8f994213371a4260ae932ea244d44c6fc/.github/workflows/ci.yml#L450
* | Merge pull request #993 from t-mat/fix-enum-unsigned-cmpYann Collet2021-05-301-1/+1
|\ \ | | | | | | Fix g++-4.4 warning
| * | Fix g++-4.4 warningTakayuki Matsuoka2021-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | g++-4.4 creates the following warning for this line. ``` g++-4.4 -Wno-deprecated -O3 -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror -I../lib -I../programs -DXXH_NAMESPACE=LZ4_ lz4frame.o lz4.o lz4hc.o xxhash.o checkFrame.c -o checkFrame checkFrame.c: In function ‘int frameCheck(cRess_t, FILE*, unsigned int, size_t)’: checkFrame.c:156: error: comparison between signed and unsigned integer expressions ```
* | | Merge pull request #995 from t-mat/travis-remove-qemuYann Collet2021-05-301-22/+22
|\ \ \ | | | | | | | | Remove QEMU test from .travis.yml
| * | | Remove QEMU test from .travis.ymlTakayuki Matsuoka2021-05-301-22/+22
| | | | | | | | | | | | | | | | We have same test in GitHub Actions.
* | | | Merge pull request #994 from t-mat/makefile-split-cstdsYann Collet2021-05-301-1/+10
|\ \ \ \ | |/ / / |/| | | Split c_standards into multiple Makefile targets
| * | | Split c_standards into multiple Makefile targetsTakayuki Matsuoka2021-05-301-1/+10
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To support older compiler which doesn't have explicit dialect option for C90 (gcc-4.4), this change set split "c_standards" into multiple part. Original "make c_standards" still works as intended. But this change gives extra freedom of choice for external program For example, CI can choose test for standards which is supported by specimen compiler. With this separation, we can also introduce C17 smoothly.
| | * Add label for checkTag testTakayuki Matsuoka2021-05-311-0/+1
| | |
| | * Add make -C tests checkTag to ci.ymlTakayuki Matsuoka2021-05-311-0/+16
| | |
| | * Enable c_standards as per #994Takayuki Matsuoka2021-05-311-8/+8
| | |
| | * Enable cxxtest as per #993Takayuki Matsuoka2021-05-311-3/+3
| | |
| | * Improve CI scriptTakayuki Matsuoka2021-05-302-316/+561
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ## Added compilers - gcc: 4.[4678], 5, 6, 11 - clang: 3.[56789], 4, 5, 12 ## Known issue - make -C tests test-lz4c32 - Fails with all versions of clang. See #991 for details. - CFLAGS='-O3 -mx32' make -C tests test-lz4c32 - Fails with all versions of clang - Fails with gcc-11 - `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. ## Difference with `.travis.yml` The following tests are not included yet. - name: Compile OSS-Fuzz targets - name: tag build The following tests won't be included due to lmitation of the CI environment. - name: aarch64 real-hw tests - name: PPC64LE real-hw tests - name: IBM s390x real-hw tests Except above, all other features in `.travis.yml` has been included in this change set. The following post describes details.
* | Merge pull request #992 from t-mat/fix-clang-warning-1Yann Collet2021-05-301-1/+1
|\ \ | |/ |/| Fix -Wshorten-64-to-32 warning
| * Fix -Wshorten-64-to-32 warningTakayuki Matsuoka2021-05-301-1/+1
|/ | | | | | | | | | | | | | Fix -Wshorten-64-to-32 warning The following CI test (macOS) reports "-Wshorten-64-to-32" warning make V=1 clean test MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion' ``` blockStreaming_lineByLine.c:68:54: error: implicit conversion loses integer precision: 'const size_t' (aka 'const unsigned long') to 'int' [-Werror,-Wshorten-64-to-32] lz4Stream, inpPtr, cmpBuf, inpBytes, cmpBufBytes, 1); ^~~~~~~~~~~ ```
* Merge pull request #989 from lz4/fix_nullub_lz4Yann Collet2021-05-283-34/+57
|\ | | | | Fix NULL ptr arithmetic in lz4.c
| * fix NULL ptr arithmetic at lz4:2299Yann Collet2021-05-281-2/+7
| |
| * fix NULL ptr arithmetic in lz4:1680Yann Collet2021-05-281-3/+6
| | | | | | | | only do arithmetic if offset > 0
| * Merge branch 'dev' into fix_nullub_lz4Yann Collet2021-05-282-29/+503
| |\ | |/ |/|
* | Merge pull request #987 from t-mat/tmp-disable-mesonYann Collet2021-05-281-29/+29
|\ \ | | | | | | Disable Meson + clang build at travis-ci
| * | Disable Meson + clang build at travis-ciTakayuki Matsuoka2021-05-281-29/+29
| | |
* | | Merge pull request #985 from t-mat/add-github-actionsYann Collet2021-05-281-0/+474
|\ \ \ | | | | | | | | Add GitHub Actions script ci.yml
| * | | Temporary ignore make usanTakayuki Matsuoka2021-05-281-1/+13
| | | | | | | | | | | | | | | | We must enable this test when all make usan errors will be resolved properly.
| * | | Add GitHub Actions script ci.ymlTakayuki Matsuoka2021-05-271-0/+462
| | | |
* | | | Merge pull request #986 from lz4/fixub907Yann Collet2021-05-282-59/+66
|\ \ \ \ | |_|/ / |/| | | fix UB of lz4frame:907
| | | * fix UB lz4:988 and lz4:1178Yann Collet2021-05-283-29/+44
| | | | | | | | | | | | | | | | | | | | ensure `dictBase` is only used when there is an actual dictionary content.
| | | * fix NULL ptr arithmetic of lz4:1572Yann Collet2021-05-281-5/+5
| | |/ | |/| | | | | | | was blindly adding an offset (0) to `dictionary` which could be `NULL`.