]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev070
authorinikep <inikep@gmail.com>
Tue, 31 May 2016 22:07:09 +0000 (00:07 +0200)
committerinikep <inikep@gmail.com>
Tue, 31 May 2016 22:07:09 +0000 (00:07 +0200)
# Conflicts:
# .travis.yml
# Makefile
# lib/common/zstd_static.h
# programs/Makefile
# projects/VS2008/zstd/zstd.vcproj
# projects/VS2008/zstdlib/zstdlib.vcproj
# projects/cmake/lib/CMakeLists.txt
# projects/cmake/programs/CMakeLists.txt

16 files changed:
1  2 
.travis.yml
Makefile
lib/common/zstd_internal.h
lib/common/zstd_static.h
lib/decompress/zstd_decompress.c
programs/Makefile
programs/fileio.c
programs/playTests.sh
programs/zbufftest.c
programs/zstdcli.c
projects/VS2008/zstd/zstd.vcproj
projects/VS2008/zstdlib/zstdlib.vcproj
projects/VS2010/zstd/zstd.vcxproj
projects/VS2010/zstdlib/zstdlib.vcxproj
projects/cmake/lib/CMakeLists.txt
projects/cmake/programs/CMakeLists.txt

diff --cc .travis.yml
index 573a77e574435c6f876e341f0a42e77caeb6b8a0,f130978b1237916a58af953b77cf9edb185d83fd..e6a32c255b690a43c46e9511d4ffd56a55d03b81
@@@ -1,34 -1,96 +1,97 @@@
  language: c
+ compiler: gcc
+ matrix:
+   fast_finish: true
+   include: 
+     # Container-based Ubuntu 12.04 LTS Server Edition 64 bit (doesn't support 32-bit includes)
+     - os: linux  
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM=travis-install
+     - os: linux
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM=cmaketest
+     - os: linux
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM=test
+     - os: linux
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM="-C programs test-zstd_nolegacy"
+     - os: linux
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM=usan
+     - os: linux
+       sudo: false
+       env: PLATFORM="Ubuntu 12.04 container" MAKE_PARAM=asan
+     # Standard Ubuntu 12.04 LTS Server Edition 64 bit
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=clangtest
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=gpptest
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=gnu90test
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=c99test
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=gnu99test
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=armtest-w-install
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM="-C programs test32"
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM="-C versionsTest"
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=asan32
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM="-C programs valgrindTest"
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=gnu90test
+     - os: linux
+       sudo: required
+       env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=c99test
+     #- os: linux
+     #  sudo: required
+     #  env: PLATFORM="Ubuntu 12.04" MAKE_PARAM=zlibwrapper
+     # Ubuntu 14.04 LTS Server Edition 64 bit
+     - os: linux
+       dist: trusty
+       sudo: required
+       env: PLATFORM="Ubuntu 14.04" MAKE_PARAM=ppctest-w-install
+     - os: linux
+       dist: trusty
+       sudo: required
+       env: PLATFORM="Ubuntu 14.04" MAKE_PARAM=zlibwrapper
+     # OS X Mavericks
+     - os: osx  
+       env: PLATFORM="OS X Mavericks" MAKE_PARAM=travis-install
+     - os: osx
+       env: PLATFORM="OS X Mavericks" MAKE_PARAM=gnu90test
+     - os: osx
+       env: PLATFORM="OS X Mavericks" MAKE_PARAM=test
+   exclude:
+     - compiler: gcc
  
  before_install:
-   - sudo apt-get update  -qq
-   - sudo apt-get install -qq clang
-   - sudo apt-get install -qq g++-multilib
-   - sudo apt-get install -qq gcc-multilib
-   - sudo apt-get install -qq valgrind
- env:
-   - ZSTD_TRAVIS_CI_ENV=travis-install
-   - ZSTD_TRAVIS_CI_ENV=cmaketest
-   - ZSTD_TRAVIS_CI_ENV=clangtest
-   - ZSTD_TRAVIS_CI_ENV=gpptest
-   - ZSTD_TRAVIS_CI_ENV=gnu90test
-   - ZSTD_TRAVIS_CI_ENV=c99test
-   - ZSTD_TRAVIS_CI_ENV=gnu99test
-   - ZSTD_TRAVIS_CI_ENV=armtest-w-install
-   - ZSTD_TRAVIS_CI_ENV=test
-   - ZSTD_TRAVIS_CI_ENV="-C programs test32"
-   - ZSTD_TRAVIS_CI_ENV="-C programs test-zstd_nolegacy"
-   #- ZSTD_TRAVIS_CI_ENV="-C versionsTest"  
-   - ZSTD_TRAVIS_CI_ENV=usan
-   - ZSTD_TRAVIS_CI_ENV=asan
-   - ZSTD_TRAVIS_CI_ENV=asan32
-   - ZSTD_TRAVIS_CI_ENV="-C programs valgrindTest"
+   - set -e
+   - |
+     if [ "$TRAVIS_OS_NAME" == "linux" ]; then
+       CAN_I_RUN_SUDO=$(sudo -n uptime 2>&1|grep "load"|wc -l)
+       echo "CAN_I_RUN_SUDO=$CAN_I_RUN_SUDO\n"
+       if [ ${CAN_I_RUN_SUDO} -gt 0 ]; then
+         sudo apt-get install -y -qq clang g++-multilib gcc-multilib valgrind
+       fi
+     fi
  
- compiler: gcc
- script:
-   - make $ZSTD_TRAVIS_CI_ENV
+ script: 
+   - make $MAKE_PARAM
 +
- matrix:
-   fast_finish: true
diff --cc Makefile
Simple merge
Simple merge
index d9f619f26eeaf5f6f4fcc5601531d1235bc15913,126d6cf5c6271b748b6191781af6abbf7005d6f2..596ca03ea48c80331db3ad2df6feb7d7af931db7
@@@ -192,15 -192,12 +193,16 @@@ ZSTDLIB_API size_t ZSTD_compressEnd(ZST
    You can then reuse ZSTD_CCtx to compress some new frame.
  */
  
 -typedef struct { U64 frameContentSize; U32 windowLog; } ZSTD_frameParams;
 +typedef struct {
 +    U64 frameContentSize;
 +    U32 windowLog;
 +    U32 dictID;
 +} ZSTD_frameParams;
  
 -#define ZSTD_FRAMEHEADERSIZE_MAX 13    /* for static allocation */
 -static const size_t ZSTD_frameHeaderSize_min = 5;
 +#define ZSTD_FRAMEHEADERSIZE_MAX 18    /* for static allocation */
 +static const size_t ZSTD_frameHeaderSize_min = 6;
  static const size_t ZSTD_frameHeaderSize_max = ZSTD_FRAMEHEADERSIZE_MAX;
+ static const size_t ZSTD_skippableHeaderSize = 8; /* magic number + skippable frame length */
  ZSTDLIB_API size_t ZSTD_getFrameParams(ZSTD_frameParams* fparamsPtr, const void* src, size_t srcSize);   /**< doesn't consume input */
  
  ZSTDLIB_API size_t ZSTD_decompressBegin(ZSTD_DCtx* dctx);
Simple merge
index 377e494759b3aec940250719133aacafc5ce84c9,c57d8ec16f80ab8d8bca2786f91284a5fc68d0b3..1e8a7f268ebac8ac28f1e7d31e2c574685b09fac
  
  DESTDIR?=
  PREFIX ?= /usr/local
 -CPPFLAGS= -I../lib/common -I../lib/dictBuilder
 +BINDIR  = $(PREFIX)/bin
 +MANDIR  = $(PREFIX)/share/man/man1
 +
 +ZSTDDIR = ../lib
 +
- CPPFLAGS= -I$(ZSTDDIR)/common -DXXH_NAMESPACE=ZSTD_
++CPPFLAGS= -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -DXXH_NAMESPACE=ZSTD_
  CFLAGS ?= -O3  # -falign-loops=32   # not always beneficial
  CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 -Wswitch-enum -Wstrict-prototypes -Wundef
  FLAGS   = $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(MOREFLAGS)
Simple merge
index 42abc3a81f6d2f63eeafc787aadbb0a21a7ddea5,189d169f58cd97e011e1df9885d7718c7dd3def4..46e2fb6a411c2a0ea737d3ed637df7492198a5c2
mode 100755,100755..100644
@@@ -120,26 -128,13 +128,26 @@@ rm tmpSparse
  $ECHO "\n**** dictionary tests **** "
  
  ./datagen > tmpDict
- ./datagen -g1M | md5sum > tmp1
- ./datagen -g1M | $ZSTD -D tmpDict | $ZSTD -D tmpDict -dvq | md5sum > tmp2
+ ./datagen -g1M | $MD5SUM > tmp1
+ ./datagen -g1M | $ZSTD -D tmpDict | $ZSTD -D tmpDict -dvq | $MD5SUM > tmp2
  diff -q tmp1 tmp2
 -$ZSTD --train *.c *.h -o tmpDict
 -$ZSTD xxhash.c -D tmpDict -of tmp
 -$ZSTD -d tmp -D tmpDict -of result
 -diff xxhash.c result
 +$ECHO "Create first dictionary"
 +$ZSTD --train *.c -o tmpDict
 +cp zstdcli.c tmp
 +$ZSTD -f tmp -D tmpDict
 +$ZSTD -d tmp.zst -D tmpDict -of result
 +diff zstdcli.c result
 +$ECHO "Create second (different) dictionary"
 +$ZSTD --train *.c *.h -o tmpDictC
 +$ZSTD -d tmp.zst -D tmpDictC -of result && die "wrong dictionary not detected!"
 +$ECHO "Create dictionary with short dictID"
 +$ZSTD --train *.c --dictID 1 -o tmpDict1
 +cmp tmpDict tmpDict1 && die "dictionaries should have different ID !"
 +$ECHO "Compress without dictID"
 +$ZSTD -f tmp -D tmpDict1 --no-dictID
 +$ZSTD -d tmp.zst -D tmpDict -of result
 +diff zstdcli.c result
 +rm tmp*
  
  
  $ECHO "\n**** multiple files tests **** "
Simple merge
Simple merge
index 64949899ca8c7db5939adfe974c14395fb23faef,f84fbc93fcc9be1d0f8bb09fddb5491f6804a09c..38b7693497559c9262e11d6875e8ce75c90ce998
                        />
                        <Tool
                                Name="VCCLCompilerTool"
 -                              Optimization="0"
 +                              Optimization="2"
 +                              EnableIntrinsicFunctions="true"
 +                              OmitFramePointers="true"
-                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy"
+                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy;$(SolutionDir)..\..\lib\dictBuilder"
 -                              PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
 -                              MinimalRebuild="true"
 -                              BasicRuntimeChecks="3"
 -                              RuntimeLibrary="3"
 +                              PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
 +                              RuntimeLibrary="0"
 +                              EnableFunctionLevelLinking="true"
                                UsePrecompiledHeader="0"
                                WarningLevel="4"
 -                              WarnAsError="true"
                                DebugInformationFormat="3"
                        />
                        <Tool
                        />
                        <Tool
                                Name="VCCLCompilerTool"
 -                              Optimization="2"
 -                              EnableIntrinsicFunctions="true"
 -                              OmitFramePointers="true"
 +                              Optimization="0"
-                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy"
+                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy;$(SolutionDir)..\..\lib\dictBuilder"
 -                              PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
 -                              RuntimeLibrary="0"
 -                              EnableFunctionLevelLinking="true"
 +                              PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
 +                              MinimalRebuild="true"
 +                              BasicRuntimeChecks="3"
 +                              RuntimeLibrary="3"
                                UsePrecompiledHeader="0"
                                WarningLevel="4"
 +                              WarnAsError="true"
                                DebugInformationFormat="3"
                        />
                        <Tool
index 1bb1c3b99f9b7b73a68be317d49d18362cac8ded,7c1603460c8985c0bc0a47b9268a8278d213242a..2051da585bd8eccd00f9b11a568bd7f942aa48a9
                        />
                        <Tool
                                Name="VCCLCompilerTool"
 -                              Optimization="0"
 +                              Optimization="2"
 +                              EnableIntrinsicFunctions="true"
 +                              OmitFramePointers="true"
-                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy"
+                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy;$(SolutionDir)..\..\lib\dictBuilder"
 -                              PreprocessorDefinitions="ZSTD_DLL_EXPORT=1;ZSTD_HEAPMODE=0;ZSTD_LEGACY_SUPPORT=0;WIN32;_DEBUG;_CONSOLE"
 -                              MinimalRebuild="true"
 -                              BasicRuntimeChecks="3"
 -                              RuntimeLibrary="3"
 +                              PreprocessorDefinitions="ZSTD_DLL_EXPORT=1;ZSTD_HEAPMODE=0;ZSTD_LEGACY_SUPPORT=0;WIN32;NDEBUG;_CONSOLE"
 +                              RuntimeLibrary="0"
 +                              EnableFunctionLevelLinking="true"
                                UsePrecompiledHeader="0"
                                WarningLevel="4"
 -                              WarnAsError="true"
                                DebugInformationFormat="3"
                        />
                        <Tool
                        />
                        <Tool
                                Name="VCCLCompilerTool"
 -                              Optimization="2"
 -                              EnableIntrinsicFunctions="true"
 -                              OmitFramePointers="true"
 +                              Optimization="0"
-                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy"
+                               AdditionalIncludeDirectories="$(SolutionDir)..\..\lib\common;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\programs\legacy;$(SolutionDir)..\..\lib\dictBuilder"
 -                              PreprocessorDefinitions="ZSTD_DLL_EXPORT=1;ZSTD_HEAPMODE=0;ZSTD_LEGACY_SUPPORT=0;WIN32;NDEBUG;_CONSOLE"
 -                              RuntimeLibrary="0"
 -                              EnableFunctionLevelLinking="true"
 +                              PreprocessorDefinitions="ZSTD_DLL_EXPORT=1;ZSTD_HEAPMODE=0;ZSTD_LEGACY_SUPPORT=0;WIN32;_DEBUG;_CONSOLE"
 +                              MinimalRebuild="true"
 +                              BasicRuntimeChecks="3"
 +                              RuntimeLibrary="3"
                                UsePrecompiledHeader="0"
                                WarningLevel="4"
 +                              WarnAsError="true"
                                DebugInformationFormat="3"
                        />
                        <Tool
Simple merge
Simple merge
index ef5f0eafd3da00344aa66a66a1460ef6e4fd5746,1cf1b69e3c5aae6d1536b53a404bc66522d3fcc0..c8fe5d2a81f0b12115b46e97c096f512408862a8
@@@ -42,14 -42,10 +42,9 @@@ SET(LIBRARY_DIR ${ROOT_DIR}/lib
  SET(PROGRAMS_DIR ${ROOT_DIR}/programs)
  INCLUDE_DIRECTORIES(${PROGRAMS_DIR} ${LIBRARY_DIR}/common ${LIBRARY_DIR}/dictBuilder)
  
 -
  IF (ZSTD_LEGACY_SUPPORT)
      SET(PROGRAMS_LEGACY_DIR ${PROGRAMS_DIR}/legacy)
-     INCLUDE_DIRECTORIES(${PROGRAMS_LEGACY_DIR})
-     IF (WORKAROUND_OUTDATED_CODE_STYLE)
-         INCLUDE_DIRECTORIES(${LIBRARY_DIR}/legacy)
-     ENDIF (WORKAROUND_OUTDATED_CODE_STYLE)
+     INCLUDE_DIRECTORIES(${PROGRAMS_LEGACY_DIR} ${LIBRARY_DIR}/legacy)
      SET(ZSTD_FILEIO_LEGACY ${PROGRAMS_LEGACY_DIR}/fileio_legacy.c)
  ENDIF (ZSTD_LEGACY_SUPPORT)