aboutsummaryrefslogtreecommitdiff
path: root/ports/utf8proc/fix-buildsystem.patch
blob: 17af16c9ba47e360843378d3b6e04773c1db95d8 (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
diff --git a/CMakeLists.txt b/CMakeLists.txt
index be676ba..7a2b6d8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,9 +13,9 @@ set(SO_MAJOR 2)
 set(SO_MINOR 1)
 set(SO_PATCH 0)
 
-add_definitions (
-  -DUTF8PROC_EXPORTS
-)
+if(BUILD_SHARED_LIBS)
+    add_definitions(-DUTF8PROC_EXPORTS -DUTF8PROC_SHARED)
+endif()
 
 if (NOT MSVC)
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -std=c99 -pedantic -Wall")
@@ -31,3 +31,10 @@ set_target_properties (utf8proc PROPERTIES
   VERSION "${SO_MAJOR}.${SO_MINOR}.${SO_PATCH}"
   SOVERSION ${SO_MAJOR}
 )
+
+install(TARGETS utf8proc
+    RUNTIME DESTINATION bin
+    ARCHIVE DESTINATION lib
+    LIBRARY DESTINATION lib)
+
+install(FILES utf8proc.h DESTINATION include)
diff --git a/utf8proc.h b/utf8proc.h
index edf46d4..7b3f11a 100644
--- a/utf8proc.h
+++ b/utf8proc.h
@@ -120,13 +120,13 @@ typedef bool utf8proc_bool;
 #endif
 #include <limits.h>
 
-#ifdef _WIN32
+#if defined _WIN32 && defined UTF8PROC_SHARED
 #  ifdef UTF8PROC_EXPORTS
 #    define UTF8PROC_DLLEXPORT __declspec(dllexport)
 #  else
 #    define UTF8PROC_DLLEXPORT __declspec(dllimport)
 #  endif
-#elif __GNUC__ >= 4
+#elif __GNUC__ >= 4 && defined UTF8PROC_SHARED
 #  define UTF8PROC_DLLEXPORT __attribute__ ((visibility("default")))
 #else
 #  define UTF8PROC_DLLEXPORT