Test that all API symbols are exported
parent
8de46ab51a
commit
61e62c014f
|
@ -12,7 +12,7 @@ matrix:
|
||||||
os: linux
|
os: linux
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
- env: Ubu=12.04cont Cmd="make zlibwrapper && make clean && make -C tests test-zstd-nolegacy && make clean && make cmaketest && make clean && make -C contrib/pzstd googletest pzstd tests check && make -C contrib/pzstd clean"
|
- env: Ubu=12.04cont Cmd="make zlibwrapper && make clean && make -C tests test-symbols && make clean && make -C tests test-zstd-nolegacy && make clean && make cmaketest && make clean && make -C contrib/pzstd googletest pzstd tests check && make -C contrib/pzstd clean"
|
||||||
os: linux
|
os: linux
|
||||||
sudo: false
|
sudo: false
|
||||||
language: cpp
|
language: cpp
|
||||||
|
|
|
@ -63,7 +63,8 @@ build_script:
|
||||||
make -v &&
|
make -v &&
|
||||||
cc -v &&
|
cc -v &&
|
||||||
ECHO make %MAKE_PARAMS% &&
|
ECHO make %MAKE_PARAMS% &&
|
||||||
make %MAKE_PARAMS%
|
make %MAKE_PARAMS% &&
|
||||||
|
make -C tests test-symbols
|
||||||
)
|
)
|
||||||
- if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw64] (
|
- if [%COMPILER%]==[gcc] if [%PLATFORM%]==[mingw64] (
|
||||||
COPY programs\zstd.exe bin\zstd.exe &&
|
COPY programs\zstd.exe bin\zstd.exe &&
|
||||||
|
|
|
@ -12,6 +12,7 @@ paramgrill
|
||||||
paramgrill32
|
paramgrill32
|
||||||
roundTripCrash
|
roundTripCrash
|
||||||
longmatch
|
longmatch
|
||||||
|
symbols
|
||||||
|
|
||||||
# Tmp test directory
|
# Tmp test directory
|
||||||
zstdtest
|
zstdtest
|
||||||
|
|
|
@ -28,7 +28,7 @@ PYTHON ?= python3
|
||||||
TESTARTEFACT := versionsTest namespaceTest
|
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 ?= -O3
|
||||||
CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
|
CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
|
||||||
-Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
|
-Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
|
||||||
|
@ -127,6 +127,15 @@ roundTripCrash : $(ZSTD_FILES) roundTripCrash.c
|
||||||
longmatch : $(ZSTD_FILES) longmatch.c
|
longmatch : $(ZSTD_FILES) longmatch.c
|
||||||
$(CC) $(FLAGS) $^ -o $@$(EXT)
|
$(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:
|
namespaceTest:
|
||||||
if $(CC) namespaceTest.c ../lib/common/xxhash.c -o $@ ; then echo compilation should fail; exit 1 ; fi
|
if $(CC) namespaceTest.c ../lib/common/xxhash.c -o $@ ; then echo compilation should fail; exit 1 ; fi
|
||||||
$(RM) $@
|
$(RM) $@
|
||||||
|
@ -142,8 +151,9 @@ clean:
|
||||||
fullbench$(EXT) fullbench32$(EXT) \
|
fullbench$(EXT) fullbench32$(EXT) \
|
||||||
fullbench-lib$(EXT) fullbench-dll$(EXT) \
|
fullbench-lib$(EXT) fullbench-dll$(EXT) \
|
||||||
fuzzer$(EXT) fuzzer32$(EXT) zbufftest$(EXT) zbufftest32$(EXT) \
|
fuzzer$(EXT) fuzzer32$(EXT) zbufftest$(EXT) zbufftest32$(EXT) \
|
||||||
zstreamtest$(EXT) zstreamtest32$(EXT) \
|
zstreamtest$(EXT) zstreamtest32$(EXT) \
|
||||||
datagen$(EXT) paramgrill$(EXT) roundTripCrash$(EXT) longmatch$(EXT)
|
datagen$(EXT) paramgrill$(EXT) roundTripCrash$(EXT) longmatch$(EXT) \
|
||||||
|
symbols$(EXT)
|
||||||
@echo Cleaning completed
|
@echo Cleaning completed
|
||||||
|
|
||||||
|
|
||||||
|
@ -243,4 +253,7 @@ test-zstream32: zstreamtest32
|
||||||
test-longmatch: longmatch
|
test-longmatch: longmatch
|
||||||
$(QEMU_SYS) ./longmatch
|
$(QEMU_SYS) ./longmatch
|
||||||
|
|
||||||
|
test-symbols: symbols
|
||||||
|
$(QEMU_SYS) ./symbols
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -0,0 +1,144 @@
|
||||||
|
#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;
|
||||||
|
}
|
Loading…
Reference in New Issue