aboutsummaryrefslogtreecommitdiff
path: root/ports/libwebp/0001-build.patch
blob: 3c6a63988122df843ce17e3d3880b5d4ba609b70 (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
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bd1bebb..4ce801d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -214,6 +214,9 @@ endfunction()
 if(MSVC)
   # avoid security warnings for e.g., fopen() used in the examples.
   add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+  if(BUILD_SHARED_LIBS)
+    add_definitions("-DWEBP_EXTERN=__declspec(dllexport)" "-DWEBP_DLL")
+  endif()
 else()
   add_definitions(-Wall)
 endif()
@@ -482,7 +485,7 @@ if(WEBP_BUILD_LIBWEBPMUX)
                                    "${CMAKE_CURRENT_SOURCE_DIR}/src/webp/mux.h;\
 ${CMAKE_CURRENT_SOURCE_DIR}/src/webp/mux_types.h;\
 ${CMAKE_CURRENT_SOURCE_DIR}/src/webp/types.h;")
-  set_target_properties(libwebpmux PROPERTIES OUTPUT_NAME webpmux)
+  set_target_properties(libwebpmux PROPERTIES OUTPUT_NAME $<$<PLATFORM_ID:Windows>:lib>webpmux)
   list(APPEND INSTALLED_LIBRARIES libwebpmux)
   configure_pkg_config("src/mux/libwebpmux.pc")
 endif()
@@ -586,8 +589,12 @@ if(WEBP_BUILD_EXTRAS)
   # webp_quality
   add_executable(webp_quality ${WEBP_QUALITY_SRCS} ${WEBP_EXTRAS_SRCS})
   target_link_libraries(webp_quality exampleutil imagedec)
+  if(BUILD_SHARED_LIBS)
+      target_link_libraries(webp_quality webpdspdecode)
+  endif()  
   target_include_directories(webp_quality
                              PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
+                                     ${CMAKE_CURRENT_SOURCE_DIR}/src
                                      ${CMAKE_CURRENT_BINARY_DIR})
 
   # vwebp_sdl
@@ -620,7 +627,7 @@ if(WEBP_BUILD_WEBP_JS)
          -s EXPORTED_FUNCTIONS='[\"_WebpToSDL\"]' -s INVOKE_RUN=0 \
          -s EXPORTED_RUNTIME_METHODS='[\"cwrap\"]'")
     set_target_properties(webp_js PROPERTIES OUTPUT_NAME webp)
-    target_compile_definitions(webp_js PUBLIC EMSCRIPTEN WEBP_HAVE_SDL)
+    target_compile_definitions(webp_js PUBLIC EMSCRIPTEN WEBP_HAVE_SDL WEBP_HAVE_JUST_SDL_H)
   endif()
 
   # WASM version