zstd-ruby 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +19 -0
- data/.gitmodules +3 -0
- data/.rspec +2 -0
- data/.travis.yml +11 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +29 -0
- data/README.md +63 -0
- data/Rakefile +22 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/ext/zstdruby/extconf.rb +23 -0
- data/ext/zstdruby/libzstd/.gitignore +2 -0
- data/ext/zstdruby/libzstd/Makefile +133 -0
- data/ext/zstdruby/libzstd/README.md +77 -0
- data/ext/zstdruby/libzstd/common/bitstream.h +414 -0
- data/ext/zstdruby/libzstd/common/entropy_common.c +227 -0
- data/ext/zstdruby/libzstd/common/error_private.c +43 -0
- data/ext/zstdruby/libzstd/common/error_private.h +76 -0
- data/ext/zstdruby/libzstd/common/fse.h +668 -0
- data/ext/zstdruby/libzstd/common/fse_decompress.c +329 -0
- data/ext/zstdruby/libzstd/common/huf.h +238 -0
- data/ext/zstdruby/libzstd/common/mem.h +372 -0
- data/ext/zstdruby/libzstd/common/xxhash.c +867 -0
- data/ext/zstdruby/libzstd/common/xxhash.h +309 -0
- data/ext/zstdruby/libzstd/common/zstd_common.c +77 -0
- data/ext/zstdruby/libzstd/common/zstd_errors.h +60 -0
- data/ext/zstdruby/libzstd/common/zstd_internal.h +270 -0
- data/ext/zstdruby/libzstd/compress/fse_compress.c +850 -0
- data/ext/zstdruby/libzstd/compress/huf_compress.c +609 -0
- data/ext/zstdruby/libzstd/compress/zstd_compress.c +3291 -0
- data/ext/zstdruby/libzstd/compress/zstd_opt.h +919 -0
- data/ext/zstdruby/libzstd/decompress/huf_decompress.c +885 -0
- data/ext/zstdruby/libzstd/decompress/zstd_decompress.c +2154 -0
- data/ext/zstdruby/libzstd/deprecated/zbuff.h +210 -0
- data/ext/zstdruby/libzstd/deprecated/zbuff_compress.c +145 -0
- data/ext/zstdruby/libzstd/deprecated/zbuff_decompress.c +74 -0
- data/ext/zstdruby/libzstd/dictBuilder/divsufsort.c +1913 -0
- data/ext/zstdruby/libzstd/dictBuilder/divsufsort.h +67 -0
- data/ext/zstdruby/libzstd/dictBuilder/zdict.c +1012 -0
- data/ext/zstdruby/libzstd/dictBuilder/zdict.h +111 -0
- data/ext/zstdruby/libzstd/dll/example/Makefile +47 -0
- data/ext/zstdruby/libzstd/dll/example/README.md +69 -0
- data/ext/zstdruby/libzstd/dll/example/build_package.bat +17 -0
- data/ext/zstdruby/libzstd/dll/example/fullbench-dll.sln +25 -0
- data/ext/zstdruby/libzstd/dll/example/fullbench-dll.vcxproj +179 -0
- data/ext/zstdruby/libzstd/dll/libzstd.def +86 -0
- data/ext/zstdruby/libzstd/legacy/zstd_legacy.h +259 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v01.c +2095 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v01.h +80 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v02.c +3518 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v02.h +79 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v03.c +3159 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v03.h +79 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v04.c +3795 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v04.h +128 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v05.c +4056 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v05.h +149 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v06.c +4167 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v06.h +159 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v07.c +4540 -0
- data/ext/zstdruby/libzstd/legacy/zstd_v07.h +173 -0
- data/ext/zstdruby/libzstd/libzstd.pc.in +14 -0
- data/ext/zstdruby/libzstd/zstd.h +673 -0
- data/ext/zstdruby/zstdruby.c +117 -0
- data/ext/zstdruby/zstdruby.h +6 -0
- data/lib/zstd-ruby.rb +6 -0
- data/lib/zstd-ruby/version.rb +3 -0
- data/zstd-ruby.gemspec +37 -0
- metadata +170 -0
@@ -0,0 +1,111 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright (c) 2016-present, Yann Collet, Facebook, Inc.
|
3
|
+
* All rights reserved.
|
4
|
+
*
|
5
|
+
* This source code is licensed under the BSD-style license found in the
|
6
|
+
* LICENSE file in the root directory of this source tree. An additional grant
|
7
|
+
* of patent rights can be found in the PATENTS file in the same directory.
|
8
|
+
*/
|
9
|
+
|
10
|
+
#ifndef DICTBUILDER_H_001
|
11
|
+
#define DICTBUILDER_H_001
|
12
|
+
|
13
|
+
#if defined (__cplusplus)
|
14
|
+
extern "C" {
|
15
|
+
#endif
|
16
|
+
|
17
|
+
|
18
|
+
/*====== Dependencies ======*/
|
19
|
+
#include <stddef.h> /* size_t */
|
20
|
+
|
21
|
+
|
22
|
+
/*====== Export for Windows ======*/
|
23
|
+
/*!
|
24
|
+
* ZSTD_DLL_EXPORT :
|
25
|
+
* Enable exporting of functions when building a Windows DLL
|
26
|
+
*/
|
27
|
+
#if defined(_WIN32) && defined(ZSTD_DLL_EXPORT) && (ZSTD_DLL_EXPORT==1)
|
28
|
+
# define ZDICTLIB_API __declspec(dllexport)
|
29
|
+
#else
|
30
|
+
# define ZDICTLIB_API
|
31
|
+
#endif
|
32
|
+
|
33
|
+
|
34
|
+
/*! ZDICT_trainFromBuffer() :
|
35
|
+
Train a dictionary from an array of samples.
|
36
|
+
Samples must be stored concatenated in a single flat buffer `samplesBuffer`,
|
37
|
+
supplied with an array of sizes `samplesSizes`, providing the size of each sample, in order.
|
38
|
+
The resulting dictionary will be saved into `dictBuffer`.
|
39
|
+
@return : size of dictionary stored into `dictBuffer` (<= `dictBufferCapacity`)
|
40
|
+
or an error code, which can be tested with ZDICT_isError().
|
41
|
+
Tips : In general, a reasonable dictionary has a size of ~ 100 KB.
|
42
|
+
It's obviously possible to target smaller or larger ones, just by specifying different `dictBufferCapacity`.
|
43
|
+
In general, it's recommended to provide a few thousands samples, but this can vary a lot.
|
44
|
+
It's recommended that total size of all samples be about ~x100 times the target size of dictionary.
|
45
|
+
*/
|
46
|
+
ZDICTLIB_API size_t ZDICT_trainFromBuffer(void* dictBuffer, size_t dictBufferCapacity,
|
47
|
+
const void* samplesBuffer, const size_t* samplesSizes, unsigned nbSamples);
|
48
|
+
|
49
|
+
|
50
|
+
/*====== Helper functions ======*/
|
51
|
+
ZDICTLIB_API unsigned ZDICT_getDictID(const void* dictBuffer, size_t dictSize); /**< extracts dictID; @return zero if error (not a valid dictionary) */
|
52
|
+
ZDICTLIB_API unsigned ZDICT_isError(size_t errorCode);
|
53
|
+
ZDICTLIB_API const char* ZDICT_getErrorName(size_t errorCode);
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
#ifdef ZDICT_STATIC_LINKING_ONLY
|
58
|
+
|
59
|
+
/* ====================================================================================
|
60
|
+
* The definitions in this section are considered experimental.
|
61
|
+
* They should never be used with a dynamic library, as they may change in the future.
|
62
|
+
* They are provided for advanced usages.
|
63
|
+
* Use them only in association with static linking.
|
64
|
+
* ==================================================================================== */
|
65
|
+
|
66
|
+
typedef struct {
|
67
|
+
unsigned selectivityLevel; /* 0 means default; larger => select more => larger dictionary */
|
68
|
+
int compressionLevel; /* 0 means default; target a specific zstd compression level */
|
69
|
+
unsigned notificationLevel; /* Write to stderr; 0 = none (default); 1 = errors; 2 = progression; 3 = details; 4 = debug; */
|
70
|
+
unsigned dictID; /* 0 means auto mode (32-bits random value); other : force dictID value */
|
71
|
+
unsigned reserved[2]; /* reserved space for future parameters */
|
72
|
+
} ZDICT_params_t;
|
73
|
+
|
74
|
+
|
75
|
+
/*! ZDICT_trainFromBuffer_advanced() :
|
76
|
+
Same as ZDICT_trainFromBuffer() with control over more parameters.
|
77
|
+
`parameters` is optional and can be provided with values set to 0 to mean "default".
|
78
|
+
@return : size of dictionary stored into `dictBuffer` (<= `dictBufferSize`),
|
79
|
+
or an error code, which can be tested by ZDICT_isError().
|
80
|
+
note : ZDICT_trainFromBuffer_advanced() will send notifications into stderr if instructed to, using notificationLevel>0.
|
81
|
+
*/
|
82
|
+
size_t ZDICT_trainFromBuffer_advanced(void* dictBuffer, size_t dictBufferCapacity,
|
83
|
+
const void* samplesBuffer, const size_t* samplesSizes, unsigned nbSamples,
|
84
|
+
ZDICT_params_t parameters);
|
85
|
+
|
86
|
+
|
87
|
+
/*! ZDICT_addEntropyTablesFromBuffer() :
|
88
|
+
|
89
|
+
Given a content-only dictionary (built using any 3rd party algorithm),
|
90
|
+
add entropy tables computed from an array of samples.
|
91
|
+
Samples must be stored concatenated in a flat buffer `samplesBuffer`,
|
92
|
+
supplied with an array of sizes `samplesSizes`, providing the size of each sample in order.
|
93
|
+
|
94
|
+
The input dictionary content must be stored *at the end* of `dictBuffer`.
|
95
|
+
Its size is `dictContentSize`.
|
96
|
+
The resulting dictionary with added entropy tables will be *written back to `dictBuffer`*,
|
97
|
+
starting from its beginning.
|
98
|
+
@return : size of dictionary stored into `dictBuffer` (<= `dictBufferCapacity`).
|
99
|
+
*/
|
100
|
+
size_t ZDICT_addEntropyTablesFromBuffer(void* dictBuffer, size_t dictContentSize, size_t dictBufferCapacity,
|
101
|
+
const void* samplesBuffer, const size_t* samplesSizes, unsigned nbSamples);
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
#endif /* ZDICT_STATIC_LINKING_ONLY */
|
106
|
+
|
107
|
+
#if defined (__cplusplus)
|
108
|
+
}
|
109
|
+
#endif
|
110
|
+
|
111
|
+
#endif /* DICTBUILDER_H_001 */
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# ##########################################################################
|
2
|
+
# Copyright (c) 2016-present, Yann Collet, Facebook, Inc.
|
3
|
+
# All rights reserved.
|
4
|
+
#
|
5
|
+
# This source code is licensed under the BSD-style license found in the
|
6
|
+
# LICENSE file in the root directory of this source tree. An additional grant
|
7
|
+
# of patent rights can be found in the PATENTS file in the same directory.
|
8
|
+
# ##########################################################################
|
9
|
+
|
10
|
+
VOID := /dev/null
|
11
|
+
ZSTDDIR := ../include
|
12
|
+
LIBDIR := ../static
|
13
|
+
DLLDIR := ../dll
|
14
|
+
|
15
|
+
CFLAGS ?= -O3 # can select custom flags. For example : CFLAGS="-O2 -g" make
|
16
|
+
CFLAGS += -Wall -Wextra -Wundef -Wcast-qual -Wcast-align -Wshadow -Wswitch-enum \
|
17
|
+
-Wdeclaration-after-statement -Wstrict-prototypes \
|
18
|
+
-Wpointer-arith -Wstrict-aliasing=1
|
19
|
+
CFLAGS += $(MOREFLAGS)
|
20
|
+
CPPFLAGS:= -I$(ZSTDDIR) -DXXH_NAMESPACE=ZSTD_
|
21
|
+
FLAGS := $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)
|
22
|
+
|
23
|
+
|
24
|
+
# Define *.exe as extension for Windows systems
|
25
|
+
ifneq (,$(filter Windows%,$(OS)))
|
26
|
+
EXT =.exe
|
27
|
+
else
|
28
|
+
EXT =
|
29
|
+
endif
|
30
|
+
|
31
|
+
.PHONY: default fullbench-dll fullbench-lib
|
32
|
+
|
33
|
+
|
34
|
+
default: all
|
35
|
+
|
36
|
+
all: fullbench-dll fullbench-lib
|
37
|
+
|
38
|
+
|
39
|
+
fullbench-lib: fullbench.c datagen.c
|
40
|
+
$(CC) $(FLAGS) $^ -o $@$(EXT) $(LIBDIR)/libzstd_static.lib
|
41
|
+
|
42
|
+
fullbench-dll: fullbench.c datagen.c
|
43
|
+
$(CC) $(FLAGS) $^ -o $@$(EXT) -DZSTD_DLL_IMPORT=1 $(DLLDIR)/libzstd.dll
|
44
|
+
|
45
|
+
clean:
|
46
|
+
@$(RM) fullbench-dll$(EXT) fullbench-lib$(EXT) \
|
47
|
+
@echo Cleaning completed
|
@@ -0,0 +1,69 @@
|
|
1
|
+
ZSTD Windows binary package
|
2
|
+
====================================
|
3
|
+
|
4
|
+
#### The package contents
|
5
|
+
|
6
|
+
- `zstd.exe` : Command Line Utility, supporting gzip-like arguments
|
7
|
+
- `dll\libzstd.dll` : The DLL of ZSTD library
|
8
|
+
- `dll\libzstd.lib` : The import library of ZSTD library for Visual C++
|
9
|
+
- `example\` : The example of usage of ZSTD library
|
10
|
+
- `include\` : Header files required with ZSTD library
|
11
|
+
- `static\libzstd_static.lib` : The static ZSTD library
|
12
|
+
|
13
|
+
|
14
|
+
#### Usage of Command Line Interface
|
15
|
+
|
16
|
+
Command Line Interface (CLI) supports gzip-like arguments.
|
17
|
+
By default CLI takes an input file and compresses it to an output file:
|
18
|
+
```
|
19
|
+
Usage: zstd [arg] [input] [output]
|
20
|
+
```
|
21
|
+
The full list of commands for CLI can be obtained with `-h` or `-H`. The ratio can
|
22
|
+
be improved with commands from `-3` to `-16` but higher levels also have slower
|
23
|
+
compression. CLI includes in-memory compression benchmark module with compression
|
24
|
+
levels starting from `-b` and ending with `-e` with iteration time of `-i` seconds.
|
25
|
+
CLI supports aggregation of parameters i.e. `-b1`, `-e18`, and `-i1` can be joined
|
26
|
+
into `-b1e18i1`.
|
27
|
+
|
28
|
+
|
29
|
+
#### The example of usage of static and dynamic ZSTD libraries with gcc/MinGW
|
30
|
+
|
31
|
+
Use `cd example` and `make` to build `fullbench-dll` and `fullbench-lib`.
|
32
|
+
`fullbench-dll` uses a dynamic ZSTD library from the `dll` directory.
|
33
|
+
`fullbench-lib` uses a static ZSTD library from the `lib` directory.
|
34
|
+
|
35
|
+
|
36
|
+
#### Using ZSTD DLL with gcc/MinGW
|
37
|
+
|
38
|
+
The header files from `include\` and the dynamic library `dll\libzstd.dll`
|
39
|
+
are required to compile a project using gcc/MinGW.
|
40
|
+
The dynamic library has to be added to linking options.
|
41
|
+
It means that if a project that uses ZSTD consists of a single `test-dll.c`
|
42
|
+
file it should be linked with `dll\libzstd.dll`. For example:
|
43
|
+
```
|
44
|
+
gcc $(CFLAGS) -Iinclude\ test-dll.c -o test-dll dll\libzstd.dll
|
45
|
+
```
|
46
|
+
The compiled executable will require ZSTD DLL which is available at `dll\libzstd.dll`.
|
47
|
+
|
48
|
+
|
49
|
+
#### The example of usage of static and dynamic ZSTD libraries with Visual C++
|
50
|
+
|
51
|
+
Open `example\fullbench-dll.sln` to compile `fullbench-dll` that uses a
|
52
|
+
dynamic ZSTD library from the `dll` directory. The solution works with Visual C++
|
53
|
+
2010 or newer. When one will open the solution with Visual C++ newer than 2010
|
54
|
+
then the solution will upgraded to the current version.
|
55
|
+
|
56
|
+
|
57
|
+
#### Using ZSTD DLL with Visual C++
|
58
|
+
|
59
|
+
The header files from `include\` and the import library `dll\libzstd.lib`
|
60
|
+
are required to compile a project using Visual C++.
|
61
|
+
|
62
|
+
1. The path to header files should be added to `Additional Include Directories` that can
|
63
|
+
be found in project properties `C/C++` then `General`.
|
64
|
+
2. The import library has to be added to `Additional Dependencies` that can
|
65
|
+
be found in project properties `Linker` then `Input`.
|
66
|
+
If one will provide only the name `libzstd.lib` without a full path to the library
|
67
|
+
the directory has to be added to `Linker\General\Additional Library Directories`.
|
68
|
+
|
69
|
+
The compiled executable will require ZSTD DLL which is available at `dll\libzstd.dll`.
|
@@ -0,0 +1,17 @@
|
|
1
|
+
@ECHO OFF
|
2
|
+
MKDIR bin\dll bin\static bin\example bin\include
|
3
|
+
COPY tests\fullbench.c bin\example\
|
4
|
+
COPY programs\datagen.c bin\example\
|
5
|
+
COPY programs\datagen.h bin\example\
|
6
|
+
COPY programs\util.h bin\example\
|
7
|
+
COPY lib\common\mem.h bin\example\
|
8
|
+
COPY lib\common\zstd_errors.h bin\example\
|
9
|
+
COPY lib\common\zstd_internal.h bin\example\
|
10
|
+
COPY lib\common\error_private.h bin\example\
|
11
|
+
COPY lib\zstd.h bin\include\
|
12
|
+
COPY lib\libzstd.a bin\static\libzstd_static.lib
|
13
|
+
COPY lib\dll\libzstd.* bin\dll\
|
14
|
+
COPY lib\dll\example\Makefile bin\example\
|
15
|
+
COPY lib\dll\example\fullbench-dll.* bin\example\
|
16
|
+
COPY lib\dll\example\README.md bin\
|
17
|
+
COPY programs\zstd.exe bin\zstd.exe
|
@@ -0,0 +1,25 @@
|
|
1
|
+
Microsoft Visual Studio Solution File, Format Version 12.00
|
2
|
+
# Visual Studio Express 2012 for Windows Desktop
|
3
|
+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fullbench-dll", "fullbench-dll.vcxproj", "{13992FD2-077E-4954-B065-A428198201A9}"
|
4
|
+
EndProject
|
5
|
+
Global
|
6
|
+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
7
|
+
Debug|Win32 = Debug|Win32
|
8
|
+
Debug|x64 = Debug|x64
|
9
|
+
Release|Win32 = Release|Win32
|
10
|
+
Release|x64 = Release|x64
|
11
|
+
EndGlobalSection
|
12
|
+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
13
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Debug|Win32.ActiveCfg = Debug|Win32
|
14
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Debug|Win32.Build.0 = Debug|Win32
|
15
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Debug|x64.ActiveCfg = Debug|x64
|
16
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Debug|x64.Build.0 = Debug|x64
|
17
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Release|Win32.ActiveCfg = Release|Win32
|
18
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Release|Win32.Build.0 = Release|Win32
|
19
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Release|x64.ActiveCfg = Release|x64
|
20
|
+
{13992FD2-077E-4954-B065-A428198201A9}.Release|x64.Build.0 = Release|x64
|
21
|
+
EndGlobalSection
|
22
|
+
GlobalSection(SolutionProperties) = preSolution
|
23
|
+
HideSolutionNode = FALSE
|
24
|
+
EndGlobalSection
|
25
|
+
EndGlobal
|
@@ -0,0 +1,179 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
3
|
+
<ItemGroup Label="ProjectConfigurations">
|
4
|
+
<ProjectConfiguration Include="Debug|Win32">
|
5
|
+
<Configuration>Debug</Configuration>
|
6
|
+
<Platform>Win32</Platform>
|
7
|
+
</ProjectConfiguration>
|
8
|
+
<ProjectConfiguration Include="Debug|x64">
|
9
|
+
<Configuration>Debug</Configuration>
|
10
|
+
<Platform>x64</Platform>
|
11
|
+
</ProjectConfiguration>
|
12
|
+
<ProjectConfiguration Include="Release|Win32">
|
13
|
+
<Configuration>Release</Configuration>
|
14
|
+
<Platform>Win32</Platform>
|
15
|
+
</ProjectConfiguration>
|
16
|
+
<ProjectConfiguration Include="Release|x64">
|
17
|
+
<Configuration>Release</Configuration>
|
18
|
+
<Platform>x64</Platform>
|
19
|
+
</ProjectConfiguration>
|
20
|
+
</ItemGroup>
|
21
|
+
<PropertyGroup Label="Globals">
|
22
|
+
<ProjectGuid>{00000000-1CC8-4FD7-9281-6B8DBB9D3DF8}</ProjectGuid>
|
23
|
+
<Keyword>Win32Proj</Keyword>
|
24
|
+
<RootNamespace>fullbench-dll</RootNamespace>
|
25
|
+
<OutDir>$(SolutionDir)bin\$(Platform)_$(Configuration)\</OutDir>
|
26
|
+
<IntDir>$(SolutionDir)bin\obj\$(RootNamespace)_$(Platform)_$(Configuration)\</IntDir>
|
27
|
+
</PropertyGroup>
|
28
|
+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
29
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
30
|
+
<ConfigurationType>Application</ConfigurationType>
|
31
|
+
<UseDebugLibraries>true</UseDebugLibraries>
|
32
|
+
<CharacterSet>MultiByte</CharacterSet>
|
33
|
+
</PropertyGroup>
|
34
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
35
|
+
<ConfigurationType>Application</ConfigurationType>
|
36
|
+
<UseDebugLibraries>true</UseDebugLibraries>
|
37
|
+
<CharacterSet>MultiByte</CharacterSet>
|
38
|
+
</PropertyGroup>
|
39
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
40
|
+
<ConfigurationType>Application</ConfigurationType>
|
41
|
+
<UseDebugLibraries>false</UseDebugLibraries>
|
42
|
+
<WholeProgramOptimization>true</WholeProgramOptimization>
|
43
|
+
<CharacterSet>MultiByte</CharacterSet>
|
44
|
+
</PropertyGroup>
|
45
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
46
|
+
<ConfigurationType>Application</ConfigurationType>
|
47
|
+
<UseDebugLibraries>false</UseDebugLibraries>
|
48
|
+
<WholeProgramOptimization>true</WholeProgramOptimization>
|
49
|
+
<CharacterSet>MultiByte</CharacterSet>
|
50
|
+
</PropertyGroup>
|
51
|
+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
52
|
+
<ImportGroup Label="ExtensionSettings">
|
53
|
+
</ImportGroup>
|
54
|
+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
55
|
+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
56
|
+
</ImportGroup>
|
57
|
+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
58
|
+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
59
|
+
</ImportGroup>
|
60
|
+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
61
|
+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
62
|
+
</ImportGroup>
|
63
|
+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
64
|
+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
65
|
+
</ImportGroup>
|
66
|
+
<PropertyGroup Label="UserMacros" />
|
67
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
68
|
+
<LinkIncremental>true</LinkIncremental>
|
69
|
+
<IncludePath>$(IncludePath);$(SolutionDir)..\..\lib;$(SolutionDir)..\..\programs;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\lib\common;$(UniversalCRT_IncludePath);</IncludePath>
|
70
|
+
<RunCodeAnalysis>false</RunCodeAnalysis>
|
71
|
+
</PropertyGroup>
|
72
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
73
|
+
<LinkIncremental>true</LinkIncremental>
|
74
|
+
<IncludePath>$(IncludePath);$(SolutionDir)..\..\lib;$(SolutionDir)..\..\programs;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\lib\common;$(UniversalCRT_IncludePath);</IncludePath>
|
75
|
+
<RunCodeAnalysis>false</RunCodeAnalysis>
|
76
|
+
</PropertyGroup>
|
77
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
78
|
+
<LinkIncremental>false</LinkIncremental>
|
79
|
+
<IncludePath>$(IncludePath);$(SolutionDir)..\..\lib;$(SolutionDir)..\..\programs;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\lib\common;$(UniversalCRT_IncludePath);</IncludePath>
|
80
|
+
<RunCodeAnalysis>false</RunCodeAnalysis>
|
81
|
+
</PropertyGroup>
|
82
|
+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
83
|
+
<LinkIncremental>false</LinkIncremental>
|
84
|
+
<IncludePath>$(IncludePath);$(SolutionDir)..\..\lib;$(SolutionDir)..\..\programs;$(SolutionDir)..\..\lib\legacy;$(SolutionDir)..\..\lib\common;$(UniversalCRT_IncludePath);</IncludePath>
|
85
|
+
<RunCodeAnalysis>false</RunCodeAnalysis>
|
86
|
+
</PropertyGroup>
|
87
|
+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
88
|
+
<ClCompile>
|
89
|
+
<PrecompiledHeader>
|
90
|
+
</PrecompiledHeader>
|
91
|
+
<WarningLevel>Level4</WarningLevel>
|
92
|
+
<Optimization>Disabled</Optimization>
|
93
|
+
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;ZSTD_DLL_IMPORT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
94
|
+
<TreatWarningAsError>true</TreatWarningAsError>
|
95
|
+
<EnablePREfast>false</EnablePREfast>
|
96
|
+
<AdditionalIncludeDirectories>..\include</AdditionalIncludeDirectories>
|
97
|
+
</ClCompile>
|
98
|
+
<Link>
|
99
|
+
<SubSystem>Console</SubSystem>
|
100
|
+
<GenerateDebugInformation>true</GenerateDebugInformation>
|
101
|
+
<AdditionalLibraryDirectories>$(SolutionDir)..\dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
102
|
+
<AdditionalDependencies>libzstd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
103
|
+
</Link>
|
104
|
+
</ItemDefinitionGroup>
|
105
|
+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
106
|
+
<ClCompile>
|
107
|
+
<PrecompiledHeader>
|
108
|
+
</PrecompiledHeader>
|
109
|
+
<WarningLevel>Level4</WarningLevel>
|
110
|
+
<Optimization>Disabled</Optimization>
|
111
|
+
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;ZSTD_DLL_IMPORT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
112
|
+
<TreatWarningAsError>true</TreatWarningAsError>
|
113
|
+
<EnablePREfast>false</EnablePREfast>
|
114
|
+
<AdditionalIncludeDirectories>..\include</AdditionalIncludeDirectories>
|
115
|
+
</ClCompile>
|
116
|
+
<Link>
|
117
|
+
<SubSystem>Console</SubSystem>
|
118
|
+
<GenerateDebugInformation>true</GenerateDebugInformation>
|
119
|
+
<AdditionalLibraryDirectories>$(SolutionDir)..\dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
120
|
+
<AdditionalDependencies>libzstd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
121
|
+
</Link>
|
122
|
+
</ItemDefinitionGroup>
|
123
|
+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
124
|
+
<ClCompile>
|
125
|
+
<WarningLevel>Level4</WarningLevel>
|
126
|
+
<PrecompiledHeader>
|
127
|
+
</PrecompiledHeader>
|
128
|
+
<Optimization>MaxSpeed</Optimization>
|
129
|
+
<FunctionLevelLinking>true</FunctionLevelLinking>
|
130
|
+
<IntrinsicFunctions>true</IntrinsicFunctions>
|
131
|
+
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;ZSTD_DLL_IMPORT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
132
|
+
<EnablePREfast>false</EnablePREfast>
|
133
|
+
<AdditionalIncludeDirectories>..\include</AdditionalIncludeDirectories>
|
134
|
+
<TreatWarningAsError>false</TreatWarningAsError>
|
135
|
+
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
136
|
+
</ClCompile>
|
137
|
+
<Link>
|
138
|
+
<SubSystem>Console</SubSystem>
|
139
|
+
<GenerateDebugInformation>true</GenerateDebugInformation>
|
140
|
+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
141
|
+
<OptimizeReferences>true</OptimizeReferences>
|
142
|
+
<AdditionalLibraryDirectories>$(SolutionDir)..\dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
143
|
+
<AdditionalDependencies>libzstd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
144
|
+
</Link>
|
145
|
+
</ItemDefinitionGroup>
|
146
|
+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
147
|
+
<ClCompile>
|
148
|
+
<WarningLevel>Level4</WarningLevel>
|
149
|
+
<PrecompiledHeader>
|
150
|
+
</PrecompiledHeader>
|
151
|
+
<Optimization>MaxSpeed</Optimization>
|
152
|
+
<FunctionLevelLinking>true</FunctionLevelLinking>
|
153
|
+
<IntrinsicFunctions>true</IntrinsicFunctions>
|
154
|
+
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;ZSTD_DLL_IMPORT=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
155
|
+
<TreatWarningAsError>false</TreatWarningAsError>
|
156
|
+
<EnablePREfast>false</EnablePREfast>
|
157
|
+
<AdditionalIncludeDirectories>..\include</AdditionalIncludeDirectories>
|
158
|
+
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
159
|
+
</ClCompile>
|
160
|
+
<Link>
|
161
|
+
<SubSystem>Console</SubSystem>
|
162
|
+
<GenerateDebugInformation>true</GenerateDebugInformation>
|
163
|
+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
164
|
+
<OptimizeReferences>true</OptimizeReferences>
|
165
|
+
<AdditionalLibraryDirectories>$(SolutionDir)..\dll;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
166
|
+
<AdditionalDependencies>libzstd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
167
|
+
</Link>
|
168
|
+
</ItemDefinitionGroup>
|
169
|
+
<ItemGroup>
|
170
|
+
<ClCompile Include="datagen.c" />
|
171
|
+
<ClCompile Include="fullbench.c" />
|
172
|
+
</ItemGroup>
|
173
|
+
<ItemGroup>
|
174
|
+
<ClInclude Include="..\include\zstd.h" />
|
175
|
+
</ItemGroup>
|
176
|
+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
177
|
+
<ImportGroup Label="ExtensionTargets">
|
178
|
+
</ImportGroup>
|
179
|
+
</Project>
|