]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
create DLL with Windows
authorPrzemyslaw Skibinski <inikep@gmail.com>
Mon, 21 Nov 2016 11:51:01 +0000 (12:51 +0100)
committerPrzemyslaw Skibinski <inikep@gmail.com>
Mon, 21 Nov 2016 11:51:01 +0000 (12:51 +0100)
lib/Makefile
tests/Makefile

index 3aacb831c7bbd149abe9098b3930797e9433424e..681c048c63066ecf62393d6ce5e82daa63f25b65 100644 (file)
@@ -72,8 +72,11 @@ libzstd.a: $(ZSTD_FILES)
 $(LIBZSTD): LDFLAGS += -shared -fPIC
 $(LIBZSTD): $(ZSTD_FILES)
        @echo compiling dynamic library $(LIBVER)
+ifneq (,$(filter Windows%,$(OS)))
+       @$(CC) $(FLAGS) -DZSTD_DLL_EXPORT=1 -shared $^ -o dll\libzstd.dll
+       dlltool -D dll\libzstd.dll -d dll\libzstd.def -l dll\libzstd.lib
+else
        @$(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@
-ifeq (,$(filter Windows%,$(OS)))
        @echo creating versioned links
        @ln -sf $@ libzstd.$(SHARED_EXT_MAJOR)
        @ln -sf $@ libzstd.$(SHARED_EXT)
@@ -84,8 +87,8 @@ libzstd : $(LIBZSTD)
 lib: libzstd.a libzstd
 
 clean:
-       @rm -f core *.o *.a *.gcda *.$(SHARED_EXT) *.$(SHARED_EXT).* libzstd.pc
-       @rm -f decompress/*.o
+       @$(RM) -f core *.o *.a *.gcda *.$(SHARED_EXT) *.$(SHARED_EXT).* libzstd.pc dll/libzstd.dll dll/libzstd.lib
+       @$(RM) -f decompress/*.o
        @echo Cleaning library completed
 
 #------------------------------------------------------------------------
index d3a280e58c57829ef5bd8d64cc671c075abf41c0..e2e8e08813baaa8ba41127d82bb6672285788a5f 100644 (file)
@@ -82,6 +82,14 @@ fullbench  : $(ZSTD_FILES) $(PRGDIR)/datagen.c fullbench.c
 fullbench32 : $(ZSTD_FILES) $(PRGDIR)/datagen.c fullbench.c
        $(CC)  -m32  $(FLAGS) $^ -o $@$(EXT)
 
+fullbench-lib: $(PRGDIR)/datagen.c fullbench.c
+       $(MAKE) -C $(ZSTDDIR) libzstd.a
+       $(CC) $(FLAGS) $^ -o $@$(EXT) $(ZSTDDIR)/libzstd.a
+
+fullbench-dll: $(PRGDIR)/datagen.c fullbench.c
+       $(MAKE) -C $(ZSTDDIR) libzstd
+       $(CC) $(FLAGS) $^ -o $@$(EXT) -DZSTD_DLL_IMPORT=1 $(ZSTDDIR)/dll/libzstd.dll
+
 fuzzer  : CPPFLAGS += -I$(ZSTDDIR)/dictBuilder
 fuzzer  : $(ZSTD_FILES) $(ZDICT_FILES) $(PRGDIR)/datagen.c fuzzer.c
        $(CC)      $(FLAGS) $^ -o $@$(EXT)