summarylogtreecommitdiffstats
path: root/mingw-Makefile.patch
blob: fcebcaed0d71888a45ae3d3087f395728d32040a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
diff --git a/Makefile b/Makefile
index 5b7b8ff..f294d55 100644
--- a/Makefile
+++ b/Makefile
@@ -49,11 +49,7 @@ XXHSUM_VERSION = $(LIBVER)
 UNAME := $(shell uname)
 
 # Define *.exe as extension for Windows systems
-ifneq (,$(filter Windows%,$(OS)))
 EXT =.exe
-else
-EXT =
-endif
 
 # automatically enable runtime vector dispatch on x86/64 targets
 detect_x86_arch = $(shell $(CC) -dumpmachine | grep -E 'i[3-6]86|x86_64')
@@ -77,8 +73,8 @@ ifeq ($(UNAME), Darwin)
 	SHARED_EXT_VER = $(LIBVER).$(SHARED_EXT)
 	SONAME_FLAGS = -install_name $(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR) -compatibility_version $(LIBVER_MAJOR) -current_version $(LIBVER)
 else
-	SONAME_FLAGS = -Wl,-soname=libxxhash.$(SHARED_EXT).$(LIBVER_MAJOR)
-	SHARED_EXT = so
+	SONAME_FLAGS = -shared -Wl,--out-implib,libxxhash.dll.a -o libxxhash.$(SHARED_EXT).$(LIBVER_MAJOR)
+	SHARED_EXT = dll
 	SHARED_EXT_MAJOR = $(SHARED_EXT).$(LIBVER_MAJOR)
 	SHARED_EXT_VER = $(SHARED_EXT).$(LIBVER)
 endif
@@ -148,9 +144,7 @@ libxxhash.a: xxhash.o
 	$(AR) $(ARFLAGS) $@ $^
 
 $(LIBXXH): LDFLAGS += -shared
-ifeq (,$(filter Windows%,$(OS)))
 $(LIBXXH): CFLAGS += -fPIC
-endif
 ifeq ($(LIBXXH_DISPATCH),1)
 $(LIBXXH): xxh_x86dispatch.c
 endif
@@ -623,10 +617,12 @@ install_libxxhash.a: libxxhash.a
 
 install_libxxhash: libxxhash
 	@echo Installing libxxhash
+	$(Q)$(MAKE_DIR) $(DESTDIR)$(BINDIR)
 	$(Q)$(MAKE_DIR) $(DESTDIR)$(LIBDIR)
-	$(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(LIBDIR)
-	$(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR)
-	$(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT)
+	$(Q)$(INSTALL_PROGRAM) libxxhash.dll.a $(DESTDIR)$(LIBDIR)
+	$(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(BINDIR)
+	$(Q)ln -sf $(LIBXXH) $(DESTDIR)$(BINDIR)/libxxhash.$(SHARED_EXT_MAJOR)
+	$(Q)ln -sf $(LIBXXH) $(DESTDIR)$(BINDIR)/libxxhash.$(SHARED_EXT)
 
 install_libxxhash.includes:
 	$(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(INCLUDEDIR)   # includes
@@ -644,11 +640,11 @@ install_libxxhash.pc: libxxhash.pc
 install_xxhsum: xxhsum
 	@echo Installing xxhsum
 	$(Q)$(MAKE_DIR) $(DESTDIR)$(BINDIR)/
-	$(Q)$(INSTALL_PROGRAM) xxhsum $(DESTDIR)$(BINDIR)/xxhsum
-	$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh32sum
-	$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh64sum
-	$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh128sum
-	$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh3sum
+	$(Q)$(INSTALL_PROGRAM) xxhsum$(EXT) $(DESTDIR)$(BINDIR)/xxhsum$(EXT)
+	$(Q)ln -sf xxhsum$(EXT) $(DESTDIR)$(BINDIR)/xxh32sum$(EXT)
+	$(Q)ln -sf xxhsum$(EXT) $(DESTDIR)$(BINDIR)/xxh64sum$(EXT)
+	$(Q)ln -sf xxhsum$(EXT) $(DESTDIR)$(BINDIR)/xxh128sum$(EXT)
+	$(Q)ln -sf xxhsum$(EXT) $(DESTDIR)$(BINDIR)/xxh3sum$(EXT)
 
 install_man:
 	@echo Installing man pages
@@ -667,18 +663,19 @@ install: install_libxxhash.a install_libxxhash install_libxxhash.includes instal
 .PHONY: uninstall
 uninstall:  ## uninstall libraries, CLI, links and man page
 	$(Q)$(RM) $(DESTDIR)$(LIBDIR)/libxxhash.a
-	$(Q)$(RM) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT)
-	$(Q)$(RM) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR)
-	$(Q)$(RM) $(DESTDIR)$(LIBDIR)/$(LIBXXH)
+	$(Q)$(RM) $(DESTDIR)$(LIBDIR)/libxxhash.dll.a
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/libxxhash.$(SHARED_EXT)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/libxxhash.$(SHARED_EXT_MAJOR)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/$(LIBXXH)
 	$(Q)$(RM) $(DESTDIR)$(INCLUDEDIR)/xxhash.h
 	$(Q)$(RM) $(DESTDIR)$(INCLUDEDIR)/xxh3.h
 	$(Q)$(RM) $(DESTDIR)$(INCLUDEDIR)/xxh_x86dispatch.h
 	$(Q)$(RM) $(DESTDIR)$(PKGCONFIGDIR)/libxxhash.pc
-	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh32sum
-	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh64sum
-	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh128sum
-	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh3sum
-	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxhsum
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh32sum$(EXT)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh64sum$(EXT)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh128sum$(EXT)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxh3sum$(EXT)
+	$(Q)$(RM) $(DESTDIR)$(BINDIR)/xxhsum$(EXT)
 	$(Q)$(RM) $(DESTDIR)$(MANDIR)/xxh32sum.1
 	$(Q)$(RM) $(DESTDIR)$(MANDIR)/xxh64sum.1
 	$(Q)$(RM) $(DESTDIR)$(MANDIR)/xxh128sum.1