aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/libmemcached-awesome/no-static-exports.diff
blob: 3269e352ef29d7f240a639d3128f83c170ffa32e (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
diff --git a/include/libhashkit-1.0/visibility.h b/include/libhashkit-1.0/visibility.h
index dce8c097..6eeb7314 100644
--- a/include/libhashkit-1.0/visibility.h
+++ b/include/libhashkit-1.0/visibility.h
@@ -23,7 +23,10 @@
  * HASHKIT_LOCAL is used for non-api symbols.
  */
 
-#if defined(BUILDING_HASHKIT)
+#if defined(HASHKIT_STATIC)
+#  define HASHKIT_API
+#  define HASHKIT_LOCAL
+#elif defined(BUILDING_HASHKIT)
 #  if defined(HAVE_VISIBILITY) && HAVE_VISIBILITY
 #    define HASHKIT_API   __attribute__((visibility("default")))
 #    define HASHKIT_LOCAL __attribute__((visibility("hidden")))
@@ -45,4 +48,4 @@
 #    define HASHKIT_API
 #    define HASHKIT_LOCAL
 #  endif /* defined(_MSC_VER) */
-#endif   /* defined(BUILDING_HASHKIT) */
+#endif   /* defined(HASHKIT_STATIC) */
diff --git a/include/libmemcached-1.0/visibility.h b/include/libmemcached-1.0/visibility.h
index 62c4ea22..4495aa04 100644
--- a/include/libmemcached-1.0/visibility.h
+++ b/include/libmemcached-1.0/visibility.h
@@ -23,7 +23,10 @@
  * LIBMEMCACHED_LOCAL is used for non-api symbols.
  */
 
-#if defined(BUILDING_LIBMEMCACHEDINTERNAL)
+#if defined(LIBMEMCACHED_STATIC)
+#  define LIBMEMCACHED_API
+#  define LIBMEMCACHED_LOCAL
+#elif defined(BUILDING_LIBMEMCACHEDINTERNAL)
 #  if defined(HAVE_VISIBILITY) && HAVE_VISIBILITY
 #    define LIBMEMCACHED_API   __attribute__((visibility("default")))
 #    define LIBMEMCACHED_LOCAL __attribute__((visibility("default")))
@@ -61,4 +64,4 @@
 #      define LIBMEMCACHED_LOCAL
 #    endif /* defined(_MSC_VER) */
 #  endif   /* defined(BUILDING_LIBMEMCACHED) */
-#endif     /* defined(BUILDING_LIBMEMCACHEDINTERNAL) */
+#endif     /* defined(LIBMEMCACHED_STATIC) */
diff --git a/src/libhashkit/CMakeLists.txt b/src/libhashkit/CMakeLists.txt
index 455570af..c0d9d743 100644
--- a/src/libhashkit/CMakeLists.txt
+++ b/src/libhashkit/CMakeLists.txt
@@ -30,6 +30,9 @@ set_target_properties(libhashkit PROPERTIES
         SOVERSION ${LIBHASHKIT_SO_SOVERSION}
         VERSION ${LIBHASHKIT_SO_VERSION})
 target_compile_options(libhashkit PRIVATE -DBUILDING_HASHKIT)
+if(NOT BUILD_SHARED_LIBS)
+        target_compile_options(libhashkit PUBLIC -DHASHKIT_STATIC)
+endif()
 target_include_directories(libhashkit PRIVATE
         ${CMAKE_SOURCE_DIR}/src
         ${CMAKE_BINARY_DIR}/src
diff --git a/src/libmemcached/CMakeLists.txt b/src/libmemcached/CMakeLists.txt
index 05116ae8..a1a2ac00 100644
--- a/src/libmemcached/CMakeLists.txt
+++ b/src/libmemcached/CMakeLists.txt
@@ -94,6 +94,9 @@ set_target_properties(libmemcached PROPERTIES
         SOVERSION ${LIBMEMCACHED_SO_SOVERSION}
         VERSION ${LIBMEMCACHED_SO_VERSION})
 target_compile_definitions(libmemcached PRIVATE -DBUILDING_LIBMEMCACHED)
+if(NOT BUILD_SHARED_LIBS)
+        target_compile_definitions(libmemcached PUBLIC -DLIBMEMCACHED_STATIC)
+endif()
 target_link_libraries(libmemcached PUBLIC libhashkit Threads::Threads ${CMAKE_DL_LIBS})
 target_link_libraries(libmemcached PRIVATE p9y)
 if(MSVC)