aboutsummaryrefslogtreecommitdiff
path: root/ports/hiredis/fix-feature-example.patch
blob: 4f36087c6a7ed0c0e4f1d1cd35dca4d8973f430c (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
99
100
101
102
103
104
105
106
107
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index dd3a313..8c69d3a 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -19,16 +19,30 @@ if (LIBEV)
     TARGET_LINK_LIBRARIES(example-libev hiredis ev)
 ENDIF()
 
-FIND_PATH(LIBEVENT event.h)
-if (LIBEVENT)
+FIND_PACKAGE(Libevent CONFIG REQUIRED)
+FIND_PATH(LIBEVENT_INCLUDES evutil.h)
+if (BUILD_SHARED_LIBS)
+    set(LIBEVENT_LIBS ${LIBEVENT_SHARED_LIBRARIES})
+else()
+    set(LIBEVENT_LIBS ${LIBEVENT_STATIC_LIBRARIES})
+endif()
+if (UNIX)
     ADD_EXECUTABLE(example-libevent example-libevent)
-    TARGET_LINK_LIBRARIES(example-libevent hiredis event)
+    TARGET_LINK_LIBRARIES(example-libevent hiredis ${LIBEVENT_LIBS})
+    TARGET_INCLUDE_DIRECTORIES(example-libevent PRIVATE ${LIBEVENT_INCLUDES})
 ENDIF()
 
+FIND_LIBRARY(UV_LIBRARY libuv)
 FIND_PATH(LIBUV uv.h)
 IF (LIBUV)
     ADD_EXECUTABLE(example-libuv example-libuv.c)
-    TARGET_LINK_LIBRARIES(example-libuv hiredis uv)
+    if(WIN32)
+        set(LIB_LISTS Iphlpapi.lib Psapi.lib Userenv.lib)
+    else()
+        set(LIB_LISTS)
+    endif()
+    TARGET_LINK_LIBRARIES(example-libuv hiredis ${UV_LIBRARY} ${LIB_LISTS})
+    TARGET_INCLUDE_DIRECTORIES(example-libuv PRIVATE ${LIBUV})
 ENDIF()
 
 IF (APPLE)
@@ -38,9 +52,21 @@ IF (APPLE)
 ENDIF()
 
 IF (ENABLE_SSL)
+    FIND_PACKAGE(OpenSSL REQUIRED)
+    IF (WIN32)
+        FIND_PACKAGE(pthreads REQUIRED)
+        SET(THREADS_LIBS PThreads4W::PThreads4W)
+    ELSE()
+        FIND_PACKAGE(Threads)
+        SET(THREADS_LIBS ${CMAKE_THREAD_LIBS_INIT})
+    ENDIF()
     ADD_EXECUTABLE(example-ssl example-ssl.c)
-    TARGET_LINK_LIBRARIES(example-ssl hiredis hiredis_ssl)
+    if(WIN32)
+        TARGET_LINK_LIBRARIES(example-ssl hiredis hiredis_ssl OpenSSL::SSL OpenSSL::Crypto ${THREADS_LIBS} crypt32.lib)
+    else()
+        TARGET_LINK_LIBRARIES(example-ssl hiredis hiredis_ssl OpenSSL::SSL OpenSSL::Crypto ${THREADS_LIBS})    
+    endif()
 ENDIF()
 
 ADD_EXECUTABLE(example example.c)
-TARGET_LINK_LIBRARIES(example hiredis)
+TARGET_LINK_LIBRARIES(example hiredis ${LIBEVENT_LIBS})
diff --git a/examples/example-libuv.c b/examples/example-libuv.c
index a5462d4..9b7ca3e 100644
--- a/examples/example-libuv.c
+++ b/examples/example-libuv.c
@@ -33,7 +33,9 @@ void disconnectCallback(const redisAsyncContext *c, int status) {
 }
 
 int main (int argc, char **argv) {
+#ifndef _WIN32
     signal(SIGPIPE, SIG_IGN);
+#endif
     uv_loop_t* loop = uv_default_loop();
 
     redisAsyncContext *c = redisAsyncConnect("127.0.0.1", 6379);
diff --git a/examples/example-ssl.c b/examples/example-ssl.c
index 81f4648..9f42923 100644
--- a/examples/example-ssl.c
+++ b/examples/example-ssl.c
@@ -1,6 +1,10 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef _WIN32
+#include <Winsock2.h>
+#include <Windows.h>
+#endif
 
 #include <hiredis.h>
 #include <hiredis_ssl.h>
diff --git a/examples/example.c b/examples/example.c
index 0e93fc8..339e322 100644
--- a/examples/example.c
+++ b/examples/example.c
@@ -1,6 +1,10 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef _WIN32
+#include <Winsock2.h>
+#include <Windows.h>
+#endif
 
 #include <hiredis.h>