82 lines
3.7 KiB
Diff
82 lines
3.7 KiB
Diff
diff -Naur blender-4.5.2/source/blender/blendthumb/CMakeLists.txt blender-4.5.2-patched/source/blender/blendthumb/CMakeLists.txt
|
|
--- blender-4.5.2/source/blender/blendthumb/CMakeLists.txt 2025-08-26 12:28:21.016842500 +0300
|
|
+++ blender-4.5.2-patched/source/blender/blendthumb/CMakeLists.txt 2025-08-26 12:28:58.792231200 +0300
|
|
@@ -47,6 +47,7 @@
|
|
setup_platform_linker_flags(BlendThumb)
|
|
setup_platform_linker_libs(BlendThumb)
|
|
|
|
+ if(MSVC)
|
|
target_link_libraries(BlendThumb PRIVATE bf_blenlib bf_blenloader_core dbghelp.lib Version.lib Comctl32.lib)
|
|
# `blenlib` drags in a whole bunch of dependencies on shared libraries, none of which are used
|
|
# by `blenthumb`, but will cause load issues since the debug linker will not eliminate them.
|
|
@@ -55,6 +56,9 @@
|
|
set_target_properties(BlendThumb PROPERTIES LINK_FLAGS "/OPT:ref")
|
|
set_target_properties(BlendThumb PROPERTIES LINK_FLAGS_DEBUG "/NODEFAULTLIB:msvcrt")
|
|
set_target_properties(BlendThumb PROPERTIES VS_GLOBAL_VcpkgEnabled "false")
|
|
+ else()
|
|
+ target_link_libraries(BlendThumb PRIVATE bf_blenlib bf_blenloader_core dbghelp version comctl32 shlwapi ${PTHREADS_LIBRARIES})
|
|
+ endif()
|
|
|
|
elseif(APPLE)
|
|
# -----------------------------------------------------------------------------
|
|
diff -Naur blender-4.5.2/source/blender/blendthumb/src/blendthumb_win32.cc blender-4.5.2-patched/source/blender/blendthumb/src/blendthumb_win32.cc
|
|
--- blender-4.5.2/source/blender/blendthumb/src/blendthumb_win32.cc 2025-08-26 12:28:21.023882700 +0300
|
|
+++ blender-4.5.2-patched/source/blender/blendthumb/src/blendthumb_win32.cc 2025-08-26 12:28:58.816230300 +0300
|
|
@@ -20,7 +20,9 @@
|
|
|
|
#include "BLI_filereader.h"
|
|
|
|
+#ifdef _MSC_VER
|
|
#pragma comment(lib, "shlwapi.lib")
|
|
+#endif
|
|
|
|
/**
|
|
* This thumbnail provider implements #IInitializeWithStream to enable being hosted
|
|
diff -Naur blender-4.5.2/source/blender/blenlib/intern/winstuff.cc blender-4.5.2-patched/source/blender/blenlib/intern/winstuff.cc
|
|
--- blender-4.5.2/source/blender/blenlib/intern/winstuff.cc 2025-08-26 12:28:19.447460700 +0300
|
|
+++ blender-4.5.2-patched/source/blender/blenlib/intern/winstuff.cc 2025-08-26 12:28:58.799230900 +0300
|
|
@@ -261,7 +261,11 @@
|
|
char system_dir[FILE_MAXDIR];
|
|
BLI_windows_get_executable_dir(install_dir);
|
|
GetSystemDirectory(system_dir, sizeof(system_dir));
|
|
+#ifdef __MINGW32__
|
|
+ const char *thumbnail_handler = "libBlendThumb.dll";
|
|
+#else
|
|
const char *thumbnail_handler = "BlendThumb.dll";
|
|
+#endif
|
|
SNPRINTF(reg_cmd, "%s\\regsvr32 /s \"%s\\%s\"", system_dir, install_dir, thumbnail_handler);
|
|
system(reg_cmd);
|
|
}
|
|
@@ -313,7 +317,11 @@
|
|
char system_dir[FILE_MAXDIR];
|
|
BLI_windows_get_executable_dir(install_dir);
|
|
GetSystemDirectory(system_dir, sizeof(system_dir));
|
|
+#ifdef __MINGW32__
|
|
+ const char *thumbnail_handler = "libBlendThumb.dll";
|
|
+#else
|
|
const char *thumbnail_handler = "BlendThumb.dll";
|
|
+#endif
|
|
SNPRINTF(reg_cmd, "%s\\regsvr32 /u /s \"%s\\%s\"", system_dir, install_dir, thumbnail_handler);
|
|
system(reg_cmd);
|
|
}
|
|
diff -Naur blender-4.5.2/source/creator/CMakeLists.txt blender-4.5.2-patched/source/creator/CMakeLists.txt
|
|
--- blender-4.5.2/source/creator/CMakeLists.txt 2025-08-26 12:28:16.778331100 +0300
|
|
+++ blender-4.5.2-patched/source/creator/CMakeLists.txt 2025-08-26 12:28:58.830227500 +0300
|
|
@@ -807,9 +807,14 @@
|
|
DESTINATION "./share/icons/hicolor/symbolic/apps"
|
|
)
|
|
if(WITH_BLENDER_THUMBNAILER)
|
|
+ if(MINGW)
|
|
+ set(BLENDER_THUMBNAILER_TARGET BlendThumb)
|
|
+ else()
|
|
+ set(BLENDER_THUMBNAILER_TARGET blender-thumbnailer)
|
|
+ endif()
|
|
install(
|
|
- TARGETS blender-thumbnailer
|
|
- DESTINATION "./bin"
|
|
+ TARGETS ${BLENDER_THUMBNAILER_TARGET}
|
|
+ RUNTIME DESTINATION bin
|
|
)
|
|
endif()
|
|
endif()
|