TESTARTEFACT := versionsTest namespaceTest
-CPPFLAGS= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -I$(PRGDIR)
+CPPFLAGS= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -I$(ZSTDDIR)/deprecated -I$(PRGDIR)
CFLAGS ?= -O3
CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
-Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
longmatch : $(ZSTD_FILES) longmatch.c
$(CC) $(FLAGS) $^ -o $@$(EXT)
+symbols : symbols.c
+ $(MAKE) -C $(ZSTDDIR) libzstd
+ifneq (,$(filter Windows%,$(OS)))
+ cp $(ZSTDDIR)/dll/libzstd.dll .
+ $(CC) $(FLAGS) $^ -o $@$(EXT) -DZSTD_DLL_IMPORT=1 libzstd.dll
+else
+ $(CC) $(FLAGS) $^ -o $@$(EXT) -Wl,-rpath=$(ZSTDDIR) $(ZSTDDIR)/libzstd.so
+endif
+
namespaceTest:
if $(CC) namespaceTest.c ../lib/common/xxhash.c -o $@ ; then echo compilation should fail; exit 1 ; fi
$(RM) $@
fullbench$(EXT) fullbench32$(EXT) \
fullbench-lib$(EXT) fullbench-dll$(EXT) \
fuzzer$(EXT) fuzzer32$(EXT) zbufftest$(EXT) zbufftest32$(EXT) \
- zstreamtest$(EXT) zstreamtest32$(EXT) \
- datagen$(EXT) paramgrill$(EXT) roundTripCrash$(EXT) longmatch$(EXT)
+ zstreamtest$(EXT) zstreamtest32$(EXT) \
+ datagen$(EXT) paramgrill$(EXT) roundTripCrash$(EXT) longmatch$(EXT) \
+ symbols$(EXT)
@echo Cleaning completed
test-longmatch: longmatch
$(QEMU_SYS) ./longmatch
+test-symbols: symbols
+ $(QEMU_SYS) ./symbols
+
endif
--- /dev/null
+#include <stdio.h>
+#include "zstd_errors.h"
+#define ZSTD_STATIC_LINKING_ONLY
+#include "zstd.h"
+#define ZBUFF_DISABLE_DEPRECATE_WARNINGS
+#define ZBUFF_STATIC_LINKING_ONLY
+#include "zbuff.h"
+#define ZDICT_STATIC_LINKING_ONLY
+#include "zdict.h"
+
+static const void *symbols[] = {
+/* zstd.h */
+ &ZSTD_versionNumber,
+ &ZSTD_compress,
+ &ZSTD_decompress,
+ &ZSTD_getDecompressedSize,
+ &ZSTD_maxCLevel,
+ &ZSTD_compressBound,
+ &ZSTD_isError,
+ &ZSTD_getErrorName,
+ &ZSTD_createCCtx,
+ &ZSTD_freeCCtx,
+ &ZSTD_compressCCtx,
+ &ZSTD_createDCtx,
+ &ZSTD_freeDCtx,
+ &ZSTD_decompressDCtx,
+ &ZSTD_compress_usingDict,
+ &ZSTD_decompress_usingDict,
+ &ZSTD_createCDict,
+ &ZSTD_freeCDict,
+ &ZSTD_compress_usingCDict,
+ &ZSTD_createDDict,
+ &ZSTD_freeDDict,
+ &ZSTD_decompress_usingDDict,
+ &ZSTD_createCStream,
+ &ZSTD_freeCStream,
+ &ZSTD_initCStream,
+ &ZSTD_compressStream,
+ &ZSTD_flushStream,
+ &ZSTD_endStream,
+ &ZSTD_CStreamInSize,
+ &ZSTD_CStreamOutSize,
+ &ZSTD_createDStream,
+ &ZSTD_freeDStream,
+ &ZSTD_initDStream,
+ &ZSTD_decompressStream,
+ &ZSTD_DStreamInSize,
+ &ZSTD_DStreamOutSize,
+/* zstd.h: advanced functions */
+ &ZSTD_estimateCCtxSize,
+ &ZSTD_createCCtx_advanced,
+ &ZSTD_sizeof_CCtx,
+ &ZSTD_createCDict_advanced,
+ &ZSTD_sizeof_CDict,
+ &ZSTD_getCParams,
+ &ZSTD_getParams,
+ &ZSTD_checkCParams,
+ &ZSTD_adjustCParams,
+ &ZSTD_compress_advanced,
+ &ZSTD_isFrame,
+ &ZSTD_estimateDCtxSize,
+ &ZSTD_createDCtx_advanced,
+ &ZSTD_sizeof_DCtx,
+ &ZSTD_sizeof_DDict,
+ &ZSTD_getDictID_fromDict,
+ &ZSTD_getDictID_fromDDict,
+ &ZSTD_getDictID_fromFrame,
+ &ZSTD_createCStream_advanced,
+ &ZSTD_initCStream_srcSize,
+ &ZSTD_initCStream_usingDict,
+ &ZSTD_initCStream_advanced,
+ &ZSTD_initCStream_usingCDict,
+ &ZSTD_resetCStream,
+ &ZSTD_sizeof_CStream,
+ &ZSTD_createDStream_advanced,
+ &ZSTD_initDStream_usingDict,
+ &ZSTD_setDStreamParameter,
+ &ZSTD_initDStream_usingDDict,
+ &ZSTD_resetDStream,
+ &ZSTD_sizeof_DStream,
+ &ZSTD_compressBegin,
+ &ZSTD_compressBegin_usingDict,
+ &ZSTD_compressBegin_advanced,
+ &ZSTD_copyCCtx,
+ &ZSTD_compressContinue,
+ &ZSTD_compressEnd,
+ &ZSTD_getFrameParams,
+ &ZSTD_decompressBegin,
+ &ZSTD_decompressBegin_usingDict,
+ &ZSTD_copyDCtx,
+ &ZSTD_nextSrcSizeToDecompress,
+ &ZSTD_decompressContinue,
+ &ZSTD_nextInputType,
+ &ZSTD_getBlockSizeMax,
+ &ZSTD_compressBlock,
+ &ZSTD_decompressBlock,
+ &ZSTD_insertBlock,
+/* zstd_errors.h */
+ &ZSTD_getErrorCode,
+ &ZSTD_getErrorString,
+/* zbuff.h */
+ &ZBUFF_createCCtx,
+ &ZBUFF_freeCCtx,
+ &ZBUFF_compressInit,
+ &ZBUFF_compressInitDictionary,
+ &ZBUFF_compressContinue,
+ &ZBUFF_compressFlush,
+ &ZBUFF_compressEnd,
+ &ZBUFF_createDCtx,
+ &ZBUFF_freeDCtx,
+ &ZBUFF_decompressInit,
+ &ZBUFF_decompressInitDictionary,
+ &ZBUFF_decompressContinue,
+ &ZBUFF_isError,
+ &ZBUFF_getErrorName,
+ &ZBUFF_recommendedCInSize,
+ &ZBUFF_recommendedCOutSize,
+ &ZBUFF_recommendedDInSize,
+ &ZBUFF_recommendedDOutSize,
+/* zbuff.h: advanced functions */
+ &ZBUFF_createCCtx_advanced,
+ &ZBUFF_createDCtx_advanced,
+ &ZBUFF_compressInit_advanced,
+/* zdict.h */
+ &ZDICT_trainFromBuffer,
+ &ZDICT_getDictID,
+ &ZDICT_isError,
+ &ZDICT_getErrorName,
+/* zdict.h: advanced functions */
+ &ZDICT_trainFromBuffer_advanced,
+ &ZDICT_addEntropyTablesFromBuffer,
+ NULL,
+};
+
+int main(int argc, const char** argv) {
+ const void **symbol;
+ (void)argc;
+ (void)argv;
+
+ for (symbol = symbols; *symbol != NULL; ++symbol) {
+ printf("%p\n", *symbol);
+ }
+ return 0;
+}