summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakayuki MATSUOKA <t-mat@users.noreply.github.com>2021-06-01 03:00:00 (GMT)
committerTakayuki MATSUOKA <t-mat@users.noreply.github.com>2021-06-01 03:00:00 (GMT)
commit02a41178b7457a3c3806170858715d87cd86e612 (patch)
tree48301294970239ea85328831b995f7438a547e26
parent8d4005a1cafe824f978761668e14e57ae8f31579 (diff)
parent145a92bcc51a2b3256710a1788baf70a74275274 (diff)
downloadlz4-02a41178b7457a3c3806170858715d87cd86e612.zip
lz4-02a41178b7457a3c3806170858715d87cd86e612.tar.gz
lz4-02a41178b7457a3c3806170858715d87cd86e612.tar.bz2
Merge branch 'lz4:dev' into gha-3
-rw-r--r--.travis.yml340
-rw-r--r--Makefile11
-rw-r--r--tests/checkFrame.c2
3 files changed, 181 insertions, 172 deletions
diff --git a/.travis.yml b/.travis.yml
index d5918a2..0616021 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,126 +3,126 @@ language: c
matrix:
fast_finish: true
include:
- # OS X Mavericks
- - name: (macOS) General Test
- os: osx
- compiler: clang
- script:
- - make # test library build
- - make clean
- - make test MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion' | tee # test scenario where `stdout` is not the console
-
- # Container-based 12.04 LTS Server Edition 64 bit (doesn't support 32-bit includes)
- - name: (Precise) benchmark test
- dist: precise
- script:
- - make -C tests test-lz4 test-lz4c test-fullbench
-
- - name: (Precise) frame and fuzzer test
- dist: precise
- install:
- - sudo sysctl -w vm.mmap_min_addr=4096
- script:
- - make -C tests test-frametest test-fuzzer
-
- - name: ASAN tests with fuzzer and frametest
- install:
- - sudo sysctl -w vm.mmap_min_addr=4096
- script:
- - CC=clang MOREFLAGS=-fsanitize=address make -C tests test-frametest test-fuzzer
-
- - name: Custom LZ4_DISTANCE_MAX ; lz4-wlib (CLI linked to dynamic library); LZ4_USER_MEMORY_FUNCTIONS
- script:
- - MOREFLAGS=-DLZ4_DISTANCE_MAX=8000 make check
- - make clean
- - make -C programs lz4-wlib
- - make clean
- - make -C tests fullbench-wmalloc # test LZ4_USER_MEMORY_FUNCTIONS
- - make clean
- - CC="c++ -Wno-deprecated" make -C tests fullbench-wmalloc # stricter function signature check
-
- - name: (Precise) g++ and clang CMake test
- dist: precise
- script:
- - make cxxtest
- - make clean
- - make examples
- - make clean cmake
- - make clean travis-install
- - make clean clangtest
-
- - name: x32 compatibility test
- addons:
- apt:
- packages:
- - gcc-multilib
- script:
- - make -C tests test MOREFLAGS=-mx32
-
- # 14.04 LTS Server Edition 64 bit
- # presume clang >= v3.9.0
- - name: (Trusty) USan test
- dist: trusty
- compiler: clang
- script:
- - make usan MOREFLAGS=-Wcomma -Werror
-
- - name: (Trusty) valgrind test
- dist: trusty
- install:
- - sudo apt-get install -qq valgrind
- script:
- - make c_standards
- - make -C tests test-lz4 test-mem
-
- - name: (Trusty) c-to-c++ test
- dist: trusty
- script:
- - make ctocpptest
-
- - name: (Trusty) i386 benchmark + version test
- dist: trusty
- install:
- - sudo apt-get install -qq python3 libc6-dev-i386 gcc-multilib
- script:
- - make -C tests test-lz4c32 test-fullbench32 versionsTest
-
- - name: (Trusty) i386 frame + fuzzer test
- dist: trusty
- install:
- - sudo apt-get install -qq libc6-dev-i386 gcc-multilib
- - sudo sysctl -w vm.mmap_min_addr=4096
- script:
- - make -C tests test-frametest32 test-fuzzer32
-
- - name: (Trusty) gcc-6 standard C compilation
- dist: trusty
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - gcc-6
- env:
- - CC=gcc-6
- script:
- - make c_standards
- - make -C tests test-lz4 MOREFLAGS=-Werror
-
- - name: (Trusty) arm + aarch64 compilation
- dist: trusty
- install:
- - sudo apt-get install -qq
- qemu-system-arm
- qemu-user-static
- gcc-arm-linux-gnueabi
- libc6-dev-armel-cross
- gcc-aarch64-linux-gnu
- libc6-dev-arm64-cross
- script:
- - make platformTest CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static
- - make platformTest CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static
-
+# # OS X Mavericks
+# - name: (macOS) General Test
+# os: osx
+# compiler: clang
+# script:
+# - make # test library build
+# - make clean
+# - make test MOREFLAGS='-Werror -Wconversion -Wno-sign-conversion' | tee # test scenario where `stdout` is not the console
+#
+# # Container-based 12.04 LTS Server Edition 64 bit (doesn't support 32-bit includes)
+# - name: (Precise) benchmark test
+# dist: precise
+# script:
+# - make -C tests test-lz4 test-lz4c test-fullbench
+#
+# - name: (Precise) frame and fuzzer test
+# dist: precise
+# install:
+# - sudo sysctl -w vm.mmap_min_addr=4096
+# script:
+# - make -C tests test-frametest test-fuzzer
+#
+# - name: ASAN tests with fuzzer and frametest
+# install:
+# - sudo sysctl -w vm.mmap_min_addr=4096
+# script:
+# - CC=clang MOREFLAGS=-fsanitize=address make -C tests test-frametest test-fuzzer
+#
+# - name: Custom LZ4_DISTANCE_MAX ; lz4-wlib (CLI linked to dynamic library); LZ4_USER_MEMORY_FUNCTIONS
+# script:
+# - MOREFLAGS=-DLZ4_DISTANCE_MAX=8000 make check
+# - make clean
+# - make -C programs lz4-wlib
+# - make clean
+# - make -C tests fullbench-wmalloc # test LZ4_USER_MEMORY_FUNCTIONS
+# - make clean
+# - CC="c++ -Wno-deprecated" make -C tests fullbench-wmalloc # stricter function signature check
+#
+# - name: (Precise) g++ and clang CMake test
+# dist: precise
+# script:
+# - make cxxtest
+# - make clean
+# - make examples
+# - make clean cmake
+# - make clean travis-install
+# - make clean clangtest
+#
+# - name: x32 compatibility test
+# addons:
+# apt:
+# packages:
+# - gcc-multilib
+# script:
+# - make -C tests test MOREFLAGS=-mx32
+#
+# # 14.04 LTS Server Edition 64 bit
+# # presume clang >= v3.9.0
+# - name: (Trusty) USan test
+# dist: trusty
+# compiler: clang
+# script:
+# - make usan MOREFLAGS=-Wcomma -Werror
+#
+# - name: (Trusty) valgrind test
+# dist: trusty
+# install:
+# - sudo apt-get install -qq valgrind
+# script:
+# - make c_standards
+# - make -C tests test-lz4 test-mem
+#
+# - name: (Trusty) c-to-c++ test
+# dist: trusty
+# script:
+# - make ctocpptest
+#
+# - name: (Trusty) i386 benchmark + version test
+# dist: trusty
+# install:
+# - sudo apt-get install -qq python3 libc6-dev-i386 gcc-multilib
+# script:
+# - make -C tests test-lz4c32 test-fullbench32 versionsTest
+#
+# - name: (Trusty) i386 frame + fuzzer test
+# dist: trusty
+# install:
+# - sudo apt-get install -qq libc6-dev-i386 gcc-multilib
+# - sudo sysctl -w vm.mmap_min_addr=4096
+# script:
+# - make -C tests test-frametest32 test-fuzzer32
+#
+# - name: (Trusty) gcc-6 standard C compilation
+# dist: trusty
+# addons:
+# apt:
+# sources:
+# - ubuntu-toolchain-r-test
+# packages:
+# - gcc-6
+# env:
+# - CC=gcc-6
+# script:
+# - make c_standards
+# - make -C tests test-lz4 MOREFLAGS=-Werror
+#
+# - name: (Trusty) arm + aarch64 compilation
+# dist: trusty
+# install:
+# - sudo apt-get install -qq
+# qemu-system-arm
+# qemu-user-static
+# gcc-arm-linux-gnueabi
+# libc6-dev-armel-cross
+# gcc-aarch64-linux-gnu
+# libc6-dev-arm64-cross
+# script:
+# - make platformTest CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static
+# - make platformTest CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static
+#
- name: aarch64 real-hw tests
arch: arm64
script:
@@ -138,56 +138,56 @@ matrix:
script:
- make test
- - name: (Xenial) gcc-5 compilation
- dist: xenial
- install:
- - sudo apt-get install -qq libc6-dev-i386 gcc-multilib
- script:
- - make -C tests test-lz4 clean test-lz4c32 MOREFLAGS=-Werror
-
- - name: (Trusty) clang-3.8 compilation
- dist: trusty
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- - llvm-toolchain-precise-3.8
- packages:
- - clang-3.8
- script:
- - make -C tests test-lz4 CC=clang-3.8
-
- - name: (Trusty) PowerPC + PPC64 compilation
- dist: trusty
- install:
- - sudo apt-get install -qq qemu-system-ppc qemu-user-static gcc-powerpc-linux-gnu
- script:
- - make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static
- - make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static MOREFLAGS=-m64
-
- - name: (Trusty) scan-build + cppcheck
- dist: trusty
- compiler: clang
- install:
- - sudo apt-get install -qq cppcheck
- script:
- - make staticAnalyze
- - make cppcheck
-
- - name: (Trusty) gcc-4.4 compilation
- dist: trusty
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - libc6-dev-i386
- - gcc-multilib
- - gcc-4.4
- script:
- - make clean all CC=gcc-4.4 MOREFLAGS=-Werror
- - make clean
- - CFLAGS=-fPIC LDFLAGS='-pie -fPIE -D_FORTIFY_SOURCE=2' make -C programs
+# - name: (Xenial) gcc-5 compilation
+# dist: xenial
+# install:
+# - sudo apt-get install -qq libc6-dev-i386 gcc-multilib
+# script:
+# - make -C tests test-lz4 clean test-lz4c32 MOREFLAGS=-Werror
+#
+# - name: (Trusty) clang-3.8 compilation
+# dist: trusty
+# addons:
+# apt:
+# sources:
+# - ubuntu-toolchain-r-test
+# - llvm-toolchain-precise-3.8
+# packages:
+# - clang-3.8
+# script:
+# - make -C tests test-lz4 CC=clang-3.8
+#
+# - name: (Trusty) PowerPC + PPC64 compilation
+# dist: trusty
+# install:
+# - sudo apt-get install -qq qemu-system-ppc qemu-user-static gcc-powerpc-linux-gnu
+# script:
+# - make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static
+# - make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static MOREFLAGS=-m64
+#
+# - name: (Trusty) scan-build + cppcheck
+# dist: trusty
+# compiler: clang
+# install:
+# - sudo apt-get install -qq cppcheck
+# script:
+# - make staticAnalyze
+# - make cppcheck
+#
+# - name: (Trusty) gcc-4.4 compilation
+# dist: trusty
+# addons:
+# apt:
+# sources:
+# - ubuntu-toolchain-r-test
+# packages:
+# - libc6-dev-i386
+# - gcc-multilib
+# - gcc-4.4
+# script:
+# - make clean all CC=gcc-4.4 MOREFLAGS=-Werror
+# - make clean
+# - CFLAGS=-fPIC LDFLAGS='-pie -fPIE -D_FORTIFY_SOURCE=2' make -C programs
# tag-specific test
- name: tag build
diff --git a/Makefile b/Makefile
index 04c0ef4..b98bb68 100644
--- a/Makefile
+++ b/Makefile
@@ -215,11 +215,20 @@ ctocpptest: clean
CC=$(TESTCC) $(MAKE) -C $(TESTDIR) CFLAGS="$(CFLAGS)" all
.PHONY: c_standards
-c_standards: clean
+c_standards: clean c_standards_c11 c_standards_c99 c_standards_c90
+
+.PHONY: c_standards_c90
+c_standards_c90: clean
$(MAKE) clean; CFLAGS="-std=c90 -Werror -pedantic -Wno-long-long -Wno-variadic-macros" $(MAKE) allmost
$(MAKE) clean; CFLAGS="-std=gnu90 -Werror -pedantic -Wno-long-long -Wno-variadic-macros" $(MAKE) allmost
+
+.PHONY: c_standards_c99
+c_standards_c99: clean
$(MAKE) clean; CFLAGS="-std=c99 -Werror -pedantic" $(MAKE) all
$(MAKE) clean; CFLAGS="-std=gnu99 -Werror -pedantic" $(MAKE) all
+
+.PHONY: c_standards_c11
+c_standards_c11: clean
$(MAKE) clean; CFLAGS="-std=c11 -Werror" $(MAKE) all
endif # MSYS POSIX
diff --git a/tests/checkFrame.c b/tests/checkFrame.c
index 2b50bae..946805f 100644
--- a/tests/checkFrame.c
+++ b/tests/checkFrame.c
@@ -153,7 +153,7 @@ int frameCheck(cRess_t ress, FILE* const srcFile, unsigned bsid, size_t blockSiz
if (LZ4F_isError(nextToLoad))
EXM_THROW(22, "Error getting frame info: %s",
LZ4F_getErrorName(nextToLoad));
- if (frameInfo.blockSizeID != bsid)
+ if (frameInfo.blockSizeID != (LZ4F_blockSizeID_t) bsid)
EXM_THROW(23, "Block size ID %u != expected %u",
frameInfo.blockSizeID, bsid);
pos += remaining;