diff --git a/uppsrc/plugin/zstd_legacy/Compress.cpp b/uppsrc/plugin/zstd_legacy/Compress.cpp index 07d93ad9f..10b39f246 100644 --- a/uppsrc/plugin/zstd_legacy/Compress.cpp +++ b/uppsrc/plugin/zstd_legacy/Compress.cpp @@ -2,6 +2,8 @@ namespace Upp { +namespace Legacy { + // we simply store data as series of complete Zstd frames, as library gives us no easy way // to do it in MT @@ -133,3 +135,5 @@ ZstdCompressStream::~ZstdCompressStream() } }; + +}; diff --git a/uppsrc/plugin/zstd_legacy/Decompress.cpp b/uppsrc/plugin/zstd_legacy/Decompress.cpp index 7742ccefc..c7bd26231 100644 --- a/uppsrc/plugin/zstd_legacy/Decompress.cpp +++ b/uppsrc/plugin/zstd_legacy/Decompress.cpp @@ -4,6 +4,7 @@ namespace Upp { +namespace Legacy { void ZstdDecompressStream::Init() { @@ -271,3 +272,5 @@ bool IsZstd(Stream& s) } }; + +}; diff --git a/uppsrc/plugin/zstd_legacy/Lib.cpp b/uppsrc/plugin/zstd_legacy/Lib.cpp new file mode 100644 index 000000000..a26bc1563 --- /dev/null +++ b/uppsrc/plugin/zstd_legacy/Lib.cpp @@ -0,0 +1,18 @@ +namespace Upp { + +namespace Legacy { + +#include "lib/entropy_common.c" +#include "lib/fse_compress.c" +#include "lib/fse_decompress.c" +#include "lib/huf_compress.c" +#include "lib/huf_decompress.c" +#include "lib/zbuff_compress.c" +#include "lib/zbuff_decompress.c" +#include "lib/zstd_common.c" +#include "lib/zstd_compress.c" +#include "lib/zstd_decompress.c" + +}; + +}; diff --git a/uppsrc/plugin/zstd_legacy/Util.cpp b/uppsrc/plugin/zstd_legacy/Util.cpp index 95a7a92b9..e01856e46 100644 --- a/uppsrc/plugin/zstd_legacy/Util.cpp +++ b/uppsrc/plugin/zstd_legacy/Util.cpp @@ -1,9 +1,11 @@ #include "zstd.h" namespace Upp { - -void sCompressStreamCopy_(Stream& out, Stream& in, Gate progress, Stream& orig_in, int64 insz); +void sCompressStreamCopy_(Stream& out, Stream& in, Gate progress, Stream& orig_in, int64 insz); + +namespace Legacy { + static int64 sZstdCompress(Stream& out, Stream& in, int64 size, Gate progress, bool co) { ZstdCompressStream outs(out); @@ -104,4 +106,6 @@ String CoZstdDecompress(const String& s, Gate progress) #endif +}; + }; \ No newline at end of file diff --git a/uppsrc/plugin/zstd_legacy/lib/bitstream.h b/uppsrc/plugin/zstd_legacy/lib/bitstream.h index e96798fe4..89812b4b6 100644 --- a/uppsrc/plugin/zstd_legacy/lib/bitstream.h +++ b/uppsrc/plugin/zstd_legacy/lib/bitstream.h @@ -35,11 +35,6 @@ #ifndef BITSTREAM_H_MODULE #define BITSTREAM_H_MODULE -#if defined (__cplusplus) -extern "C" { -#endif - - /* * This API consists of small unitary functions, which must be inlined for best performance. * Since link-time-optimization is not available for all compilers, @@ -407,8 +402,4 @@ MEM_STATIC unsigned BIT_endOfDStream(const BIT_DStream_t* DStream) return ((DStream->ptr == DStream->start) && (DStream->bitsConsumed == sizeof(DStream->bitContainer)*8)); } -#if defined (__cplusplus) -} -#endif - #endif /* BITSTREAM_H_MODULE */ diff --git a/uppsrc/plugin/zstd_legacy/lib/error_private.h b/uppsrc/plugin/zstd_legacy/lib/error_private.h index 889061496..e1c73c368 100644 --- a/uppsrc/plugin/zstd_legacy/lib/error_private.h +++ b/uppsrc/plugin/zstd_legacy/lib/error_private.h @@ -35,11 +35,6 @@ #ifndef ERROR_H_MODULE #define ERROR_H_MODULE -#if defined (__cplusplus) -extern "C" { -#endif - - /* **************************************** * Dependencies ******************************************/ @@ -118,8 +113,4 @@ ERR_STATIC const char* ERR_getErrorName(size_t code) return ERR_getErrorString(ERR_getErrorCode(code)); } -#if defined (__cplusplus) -} -#endif - #endif /* ERROR_H_MODULE */ diff --git a/uppsrc/plugin/zstd_legacy/lib/error_public.h b/uppsrc/plugin/zstd_legacy/lib/error_public.h index 29050b3b3..5ec8aaf5e 100644 --- a/uppsrc/plugin/zstd_legacy/lib/error_public.h +++ b/uppsrc/plugin/zstd_legacy/lib/error_public.h @@ -33,11 +33,6 @@ #ifndef ERROR_PUBLIC_H_MODULE #define ERROR_PUBLIC_H_MODULE -#if defined (__cplusplus) -extern "C" { -#endif - - /* **************************************** * error codes list ******************************************/ @@ -69,9 +64,4 @@ typedef enum { ZSTD_ErrorCode ZSTD_getErrorCode(size_t functionResult); const char* ZSTD_getErrorString(ZSTD_ErrorCode code); - -#if defined (__cplusplus) -} -#endif - #endif /* ERROR_PUBLIC_H_MODULE */ diff --git a/uppsrc/plugin/zstd_legacy/lib/fse.h b/uppsrc/plugin/zstd_legacy/lib/fse.h index e711d0135..ef81a8979 100644 --- a/uppsrc/plugin/zstd_legacy/lib/fse.h +++ b/uppsrc/plugin/zstd_legacy/lib/fse.h @@ -34,11 +34,6 @@ #ifndef FSE_H #define FSE_H -#if defined (__cplusplus) -extern "C" { -#endif - - /*-***************************************** * Dependencies ******************************************/ @@ -620,9 +615,4 @@ MEM_STATIC unsigned FSE_endOfDState(const FSE_DState_t* DStatePtr) #endif /* FSE_STATIC_LINKING_ONLY */ - -#if defined (__cplusplus) -} -#endif - #endif /* FSE_H */ diff --git a/uppsrc/plugin/zstd_legacy/lib/fse_compress.c b/uppsrc/plugin/zstd_legacy/lib/fse_compress.c index 192d55026..53592d767 100644 --- a/uppsrc/plugin/zstd_legacy/lib/fse_compress.c +++ b/uppsrc/plugin/zstd_legacy/lib/fse_compress.c @@ -190,8 +190,6 @@ size_t FSE_NCountWriteBound(unsigned maxSymbolValue, unsigned tableLog) return maxSymbolValue ? maxHeaderSize : FSE_NCOUNTBOUND; /* maxSymbolValue==0 ? use default */ } -static short FSE_abs(short a) { return a<0 ? -a : a; } - static size_t FSE_writeNCount_generic (void* header, size_t headerBufferSize, const short* normalizedCounter, unsigned maxSymbolValue, unsigned tableLog, unsigned writeIsSafe) diff --git a/uppsrc/plugin/zstd_legacy/lib/huf.h b/uppsrc/plugin/zstd_legacy/lib/huf.h index 3b837f101..911e952af 100644 --- a/uppsrc/plugin/zstd_legacy/lib/huf.h +++ b/uppsrc/plugin/zstd_legacy/lib/huf.h @@ -34,11 +34,6 @@ #ifndef HUF_H_298734234 #define HUF_H_298734234 -#if defined (__cplusplus) -extern "C" { -#endif - - /* *** Dependencies *** */ #include /* size_t */ @@ -220,9 +215,4 @@ size_t HUF_decompress1X4_usingDTable(void* dst, size_t maxDstSize, const void* c #endif /* HUF_STATIC_LINKING_ONLY */ - -#if defined (__cplusplus) -} -#endif - #endif /* HUF_H_298734234 */ diff --git a/uppsrc/plugin/zstd_legacy/lib/mem.h b/uppsrc/plugin/zstd_legacy/lib/mem.h index 9156bfda9..1d3ca4371 100644 --- a/uppsrc/plugin/zstd_legacy/lib/mem.h +++ b/uppsrc/plugin/zstd_legacy/lib/mem.h @@ -35,10 +35,6 @@ #ifndef MEM_H_MODULE #define MEM_H_MODULE -#if defined (__cplusplus) -extern "C" { -#endif - /*-**************************************** * Dependencies ******************************************/ @@ -369,9 +365,5 @@ MEM_STATIC U32 MEM_readMINMATCH(const void* memPtr, U32 length) } } -#if defined (__cplusplus) -} -#endif - #endif /* MEM_H_MODULE */ diff --git a/uppsrc/plugin/zstd_legacy/lib/zbuff.h b/uppsrc/plugin/zstd_legacy/lib/zbuff.h index 7820db26d..09571fc85 100644 --- a/uppsrc/plugin/zstd_legacy/lib/zbuff.h +++ b/uppsrc/plugin/zstd_legacy/lib/zbuff.h @@ -31,10 +31,6 @@ #ifndef ZSTD_BUFFERED_H_23987 #define ZSTD_BUFFERED_H_23987 -#if defined (__cplusplus) -extern "C" { -#endif - /* ************************************* * Dependencies ***************************************/ @@ -189,9 +185,4 @@ ZSTDLIB_API size_t ZBUFF_compressInit_advanced(ZBUFF_CCtx* zbc, #endif /* ZBUFF_STATIC_LINKING_ONLY */ - -#if defined (__cplusplus) -} -#endif - #endif /* ZSTD_BUFFERED_H_23987 */ diff --git a/uppsrc/plugin/zstd_legacy/lib/zbuff_decompress.c b/uppsrc/plugin/zstd_legacy/lib/zbuff_decompress.c index e74fb5d1f..ca1185944 100644 --- a/uppsrc/plugin/zstd_legacy/lib/zbuff_decompress.c +++ b/uppsrc/plugin/zstd_legacy/lib/zbuff_decompress.c @@ -137,15 +137,6 @@ size_t ZBUFF_decompressInit(ZBUFF_DCtx* zbd) } -/* internal util function */ -MEM_STATIC size_t ZBUFF_limitCopy(void* dst, size_t dstCapacity, const void* src, size_t srcSize) -{ - size_t const length = MIN(dstCapacity, srcSize); - memcpy(dst, src, length); - return length; -} - - /* *** Decompression *** */ size_t ZBUFF_decompressContinue(ZBUFF_DCtx* zbd, diff --git a/uppsrc/plugin/zstd_legacy/lib/zstd.h b/uppsrc/plugin/zstd_legacy/lib/zstd.h index 47bae1157..eefdb95a8 100644 --- a/uppsrc/plugin/zstd_legacy/lib/zstd.h +++ b/uppsrc/plugin/zstd_legacy/lib/zstd.h @@ -32,10 +32,6 @@ #ifndef ZSTD_H_235446 #define ZSTD_H_235446 -#if defined (__cplusplus) -extern "C" { -#endif - /*-************************************* * Dependencies ***************************************/ @@ -468,8 +464,4 @@ ZSTDLIB_API size_t ZSTD_insertBlock(ZSTD_DCtx* dctx, const void* blockStart, siz #endif /* ZSTD_STATIC_LINKING_ONLY */ -#if defined (__cplusplus) -} -#endif - #endif /* ZSTD_H_235446 */ diff --git a/uppsrc/plugin/zstd_legacy/zstd.h b/uppsrc/plugin/zstd_legacy/zstd.h index 03d95d938..9c80e4f6a 100644 --- a/uppsrc/plugin/zstd_legacy/zstd.h +++ b/uppsrc/plugin/zstd_legacy/zstd.h @@ -1,13 +1,15 @@ -#ifndef _plugin_zstd_zstd_h_ -#define _plugin_zstd_zstd_h_ +#ifndef _plugin_zstd_zstd_legacy_h_ +#define _plugin_zstd_zstd_legacy_h_ #include +namespace Upp { + +namespace Legacy { + #define ZSTD_STATIC_LINKING_ONLY #include "lib/zstd.h" -namespace Upp { - class ZstdCompressStream : public Stream { public: virtual void Close(); @@ -103,17 +105,17 @@ String ZstdCompress(const String& s, Gate progress = Null); String ZstdDecompress(const void *data, int64 len, Gate progress = Null); String ZstdDecompress(const String& s, Gate progress = Null); -#ifdef _MULTITHREADED int64 CoZstdCompress(Stream& out, Stream& in, Gate progress = Null); int64 CoZstdDecompress(Stream& out, Stream& in, Gate progress = Null); String CoZstdCompress(const void *data, int64 len, Gate progress = Null); String CoZstdCompress(const String& s, Gate progress = Null); String CoZstdDecompress(const void *data, int64 len, Gate progress = Null); String CoZstdDecompress(const String& s, Gate progress = Null); -#endif bool IsZstd(Stream& s); } +} + #endif diff --git a/uppsrc/plugin/zstd_legacy/zstd_legacy.upp b/uppsrc/plugin/zstd_legacy/zstd_legacy.upp index 395d6cea5..52a0db9ab 100644 --- a/uppsrc/plugin/zstd_legacy/zstd_legacy.upp +++ b/uppsrc/plugin/zstd_legacy/zstd_legacy.upp @@ -5,18 +5,8 @@ file Compress.cpp, Decompress.cpp, Util.cpp, + Lib.cpp, lib\zstd.h, src.tpp, - Copying, - lib readonly separator, - lib\entropy_common.c, - lib\fse_compress.c, - lib\fse_decompress.c, - lib\huf_compress.c, - lib\huf_decompress.c, - lib\zbuff_compress.c, - lib\zbuff_decompress.c, - lib\zstd_common.c, - lib\zstd_compress.c, - lib\zstd_decompress.c; + Copying;