diff options
-rw-r--r-- | .travis.yml | 340 | ||||
-rw-r--r-- | Makefile | 11 | ||||
-rw-r--r-- | tests/checkFrame.c | 2 |
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 @@ -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; |