diff -ur orig/saga-9.10.2/saga-gis/CMakeLists.txt saga-9.10.2/saga-gis/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/CMakeLists.txt	2025-12-01 09:35:38.000000000 +0100
+++ saga-9.10.2/saga-gis/CMakeLists.txt	2025-12-13 19:12:54.179260700 +0100
@@ -23,7 +23,7 @@
 

 

 # Platform independent compiler requirements

-set(CMAKE_CXX_STANDARD		 		14		CACHE STRING "C++ standard to be used")

+set(CMAKE_CXX_STANDARD		 	14		CACHE STRING "C++ standard to be used")

 set(CMAKE_CXX_STANDARD_REQUIRED		ON 		CACHE STRING "The C++ standard is required")

 

 # Platform dependent compiler requirements

@@ -34,10 +34,10 @@
 

 	option(PARALLEL_BUILD "Multi-processor compilation (/MP)" ON)

 	if(PARALLEL_BUILD)

-		add_definitions(/MP)

+		add_compile_options(/MP)

 	endif()

 

-	add_definitions(/utf-8)

+	add_compile_options(/utf-8)

 

 	# default debug configuration to use: 'Program Database for Edit And Continue (/ZI)'

 	set(CMAKE_C_FLAGS_DEBUG             "/MDd /ZI /Ob0 /Od /RTC1"       CACHE STRING "" FORCE)

diff -ur orig/saga-9.10.2/saga-gis/src/accessories/CMakeLists.txt saga-9.10.2/saga-gis/src/accessories/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/accessories/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/accessories/CMakeLists.txt	2025-12-13 19:12:54.182274800 +0100
@@ -1,7 +1,5 @@
 project(accessories)

 message(STATUS "folder: ${PROJECT_NAME}")

 

-#add_subdirectory(toolchains)

-install(DIRECTORY toolchains DESTINATION share/saga FILES_MATCHING PATTERN "*.xml")

 #add_subdirectory(resources)

 install(DIRECTORY resources/ DESTINATION share/saga)

diff -ur orig/saga-9.10.2/saga-gis/src/saga_core/saga_api/CMakeLists.txt saga-9.10.2/saga-gis/src/saga_core/saga_api/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/saga_core/saga_api/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/saga_core/saga_api/CMakeLists.txt	2025-12-13 19:12:54.184818000 +0100
@@ -200,36 +200,11 @@
 )

 

 # where to install the library

-install(TARGETS saga_api DESTINATION ${CMAKE_INSTALL_LIBDIR})

-install(FILES ${SAGA_API_PUBLIC_HEADERS} DESTINATION include/saga/saga_api)

-

-if(MSVC)

-	string(REPLACE "/" "\\" SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/")

-	add_custom_command(TARGET saga_api POST_BUILD

-		COMMAND IF NOT EXIST "$(OutDir)include" MKDIR "$(OutDir)include"

-		COMMAND IF EXIST "$(OutDir)include\\saga_api" RMDIR /S/Q "$(OutDir)include\\saga_api"

-		COMMAND MKDIR    "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}api_core.h"     "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}data_manager.h" "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}dataobject.h"   "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}datetime.h"     "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}geo_tools.h"    "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}grid.h"         "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}grid_pyramid.h" "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}grids.h"        "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}mat_tools.h"    "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}metadata.h"     "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}parameters.h"   "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}pointcloud.h"   "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}saga_api.h"     "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}shapes.h"       "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}table.h"        "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}table_value.h"  "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}tin.h"          "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}tool.h"         "$(OutDir)include\\saga_api"

-		COMMAND COPY "${SOURCE_DIR}tool_library.h" "$(OutDir)include\\saga_api"

-	)

-endif()

+install(TARGETS saga_api 

+	RUNTIME DESTINATION .

+	LIBRARY DESTINATION lib

+	ARCHIVE DESTINATION lib)

+install(FILES ${SAGA_API_PUBLIC_HEADERS} DESTINATION include/saga_api)

 

 #-#-#-#-#-# SWIG / Python #-#-#-#-#-#

 option(WITH_PYTHON "Uncheck to not try to Build the SAGA API for Python." ON)

diff -ur orig/saga-9.10.2/saga-gis/src/saga_core/saga_cmd/CMakeLists.txt saga-9.10.2/saga-gis/src/saga_core/saga_cmd/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/saga_core/saga_cmd/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/saga_core/saga_cmd/CMakeLists.txt	2025-12-13 19:12:54.187850500 +0100
@@ -17,7 +17,7 @@
 # link saga_api

 target_link_libraries(saga_cmd saga_api)

 

-# find and use wxWidgeds

+# find and use wxWidgets

 find_package(wxWidgets COMPONENTS base REQUIRED QUIET)

 target_link_libraries(saga_cmd ${wxWidgets_LIBRARIES})

 

@@ -30,8 +30,4 @@
 	target_compile_definitions(saga_cmd PRIVATE -D${MTOOLSPATH} -D${MSHAREPATH})

 endif()

 

-# add man page

-add_subdirectory(man)

-

-# where to install the binary

-install(TARGETS saga_cmd DESTINATION bin)

+install(TARGETS saga_cmd DESTINATION .)

diff -ur orig/saga-9.10.2/saga-gis/src/saga_core/saga_gdi/CMakeLists.txt saga-9.10.2/saga-gis/src/saga_core/saga_gdi/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/saga_core/saga_gdi/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/saga_core/saga_gdi/CMakeLists.txt	2025-12-13 19:12:54.190850100 +0100
@@ -70,23 +70,9 @@
 	SOVERSION ${SAGA_VERSION_MAJOR})

 

 # where to install the binary

-install(TARGETS saga_gdi DESTINATION ${CMAKE_INSTALL_LIBDIR})

-install(FILES ${SAGA_GDI_PUBLIC_HEADERS} DESTINATION include/saga/saga_gdi)

+install(TARGETS saga_gdi

+	RUNTIME DESTINATION .

+	LIBRARY DESTINATION lib

+	ARCHIVE DESTINATION lib)

 

-if(MSVC)

-	string(REPLACE "/" "\\" SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/")

-	add_custom_command(TARGET saga_gdi POST_BUILD

-		COMMAND IF NOT EXIST "$(OutDir)include" MKDIR "$(OutDir)include"

-		COMMAND IF EXIST "$(OutDir)include\\saga_gdi" RMDIR /S/Q "$(OutDir)include\\saga_gdi"

-		COMMAND MKDIR    "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}3d_view.h"           "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}3d_view_tools.h"     "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}saga_gdi.h"          "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_controls.h"     "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_core.h"         "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_diagram.h"      "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_dialog.h"       "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_helper.h"       "$(OutDir)include\\saga_gdi"

-		COMMAND COPY "${SOURCE_DIR}sgdi_layout_items.h" "$(OutDir)include\\saga_gdi"

-	)

-endif()

+install(FILES ${SAGA_GDI_PUBLIC_HEADERS} DESTINATION include/saga_gdi)

diff -ur orig/saga-9.10.2/saga-gis/src/saga_core/saga_gui/CMakeLists.txt saga-9.10.2/saga-gis/src/saga_core/saga_gui/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/saga_core/saga_gui/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/saga_core/saga_gui/CMakeLists.txt	2025-12-13 19:29:48.988352900 +0100
@@ -259,26 +259,7 @@
 add_subdirectory(res)

 

 # where to install the binary

-install(TARGETS saga_gui DESTINATION bin)

+install(TARGETS saga_gui DESTINATION .)

 

-if(MSVC)

-	string(REPLACE "/" "\\" SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/")

-	add_custom_command(TARGET saga_gui POST_BUILD

-		COMMAND COPY "${SOURCE_DIR}res\\saga.rus.txt" "$(OutDir)saga.rus.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga.ger.txt" "$(OutDir)saga.ger.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga.lng.txt" "$(OutDir)saga.lng.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga.bra.txt" "$(OutDir)saga.bra.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga.ger.txt" "$(OutDir)saga.ger.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga.rus.txt" "$(OutDir)saga.rus.txt"

-		COMMAND COPY "${SOURCE_DIR}res\\saga_tip.txt" "$(OutDir)saga_gui.tip"

-		COMMAND COPY "${SOURCE_DIR}res\\saga_srs.txt" "$(OutDir)saga.srs"

-		COMMAND COPY "${SOURCE_DIR}res\\saga_srs_preferences.txt" "$(OutDir)saga_preferences.srs"

-		COMMAND IF NOT EXIST "$(OutDir)tools" MKDIR "$(OutDir)tools"

-		COMMAND IF EXIST "$(OutDir)tools\\toolchains" RMDIR /S/Q "$(OutDir)tools\\toolchains"

-		COMMAND MKDIR    "$(OutDir)tools\\toolchains"

-		COMMAND XCOPY /C/Q/Y/H "${SOURCE_DIR}..\\..\\accessories\\toolchains\\*.xml" "$(OutDir)tools\\toolchains"

-		COMMAND IF EXIST "$(OutDir)resources" RMDIR /S/Q "$(OutDir)resources"

-		COMMAND MKDIR    "$(OutDir)resources"

-		COMMAND XCOPY /S/E/C/Q/Y/H "${SOURCE_DIR}..\\..\\accessories\\resources" "$(OutDir)resources"

-	)

-endif()

+file(GLOB toolchain_files ../../accessories/toolchains/*.xml)

+install(FILES ${toolchain_files} DESTINATION tools/toolchains)

diff -ur orig/saga-9.10.2/saga-gis/src/saga_core/saga_gui/res/CMakeLists.txt saga-9.10.2/saga-gis/src/saga_core/saga_gui/res/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/saga_core/saga_gui/res/CMakeLists.txt	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/saga_core/saga_gui/res/CMakeLists.txt	2025-12-13 19:12:54.201041900 +0100
@@ -1,49 +1,11 @@
 message(STATUS "subfolder: ${PROJECT_NAME}/res")

 

-# desktop file

-install(FILES org.saga_gis.saga_gui.desktop DESTINATION share/applications)

+install(FILES saga_tip.txt DESTINATION . RENAME saga_gui.tip)

+install(FILES saga_srs.txt DESTINATION . RENAME saga_prj.srs)

 

-# pixmaps file

-install(FILES saga.png DESTINATION share/pixmaps)

-

-# sized icons

-set(ICON_SIZES 8 16 22 24 32 48 64 72 80 96 128 192 256)

-

-foreach(size ${ICON_SIZES})

-	#message(STATUS "icon size: ${size}")

-	set(_icon_source "saga_icon_${size}.png")

-	set(_icon_target "share/icons/hicolor/${size}x${size}/apps/")

-	install(FILES ${_icon_source}

-		DESTINATION ${_icon_target}

-		RENAME saga.png

-	)

-endforeach()

-

-set(size 256)

-set(_icon_target "share/icons/hicolor/${size}x${size}/apps/")

-install(FILES saga.png

-	DESTINATION ${_icon_target}

-)

-# clean variables

-set(size)

-set(_icon_source)

-set(_icon_target)

-

-# appdata

-install(FILES org.saga_gis.saga_gui.appdata.xml DESTINATION share/metainfo)

-

-# tip-of-the-day and srs

-install(FILES saga_tip.txt DESTINATION share/saga)

-install(FILES saga_srs.txt DESTINATION share/saga RENAME saga.srs)

-install(FILES saga_srs_preferences.txt DESTINATION share/saga RENAME saga_preferences.srs)

-

-# cosmetic: add to custom target to show up in IDE

-add_custom_target(saga-gui-res-otherfiles SOURCES

-	org.saga_gis.saga_gui.desktop

-	org.saga_gis.saga_gui.appdata.xml

-	saga_tip.txt

-	saga_srs.txt

-	saga_srs_preferences.txt

-	)

-

-# TODO: dist-hook

+install(FILES

+       saga.bra.txt

+       saga.ger.txt

+       saga.lng.txt

+       saga.rus.txt

+       DESTINATION .)

diff -ur orig/saga-9.10.2/saga-gis/src/tools/CMakePluginTemplate.cmake saga-9.10.2/saga-gis/src/tools/CMakePluginTemplate.cmake
--- orig/saga-9.10.2/saga-gis/src/tools/CMakePluginTemplate.cmake	2025-12-01 09:35:34.000000000 +0100
+++ saga-9.10.2/saga-gis/src/tools/CMakePluginTemplate.cmake	2025-12-13 19:12:54.203577600 +0100
@@ -40,7 +40,11 @@
 # link saga_api

 target_link_libraries(${PROJECT_NAME} saga_api)

 

-install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}/saga)

+install(TARGETS ${PROJECT_NAME}

+	RUNTIME DESTINATION tools

+  	LIBRARY DESTINATION lib

+  	ARCHIVE DESTINATION lib

+)

 

 # reset variables

 set(SAGA_TOOL_CUSTOM_SOURCE_LIST)

diff -ur orig/saga-9.10.2/saga-gis/src/tools/imagery/imagery_maxent/sgd.cpp saga-9.10.2/saga-gis/src/tools/imagery/imagery_maxent/sgd.cpp
--- orig/saga-9.10.2/saga-gis/src/tools/imagery/imagery_maxent/sgd.cpp	2025-12-01 09:35:36.000000000 +0100
+++ saga-9.10.2/saga-gis/src/tools/imagery/imagery_maxent/sgd.cpp	2025-12-13 19:12:54.206589300 +0100
@@ -1,6 +1,10 @@
 #include "maxent.h"

 #include <cmath>

 

+#if __cplusplus > 201100L

+#include <random>

+#endif

+

 using namespace std;

 

 //const double SGD_ETA0 = 1;

@@ -76,10 +80,15 @@
   vector<int> last_updated(d, 0);

   vector<double> sum_eta;

   sum_eta.push_back(0);

-

+  

   for (int iter = 0; iter < SGD_ITER; iter++) {

-

-    random_shuffle(ri.begin(), ri.end());

+#if __cplusplus > 201100L

+    random_device rd;

+    mt19937 g(rd());

+    shuffle(ri.begin(), ri.end(), g);

+#else

+    std::random_shuffle(ri.begin(), ri.end());

+#endif

 

     double logl = 0;

     int ncorrect = 0, ntotal = 0;

diff -ur orig/saga-9.10.2/saga-gis/src/tools/io/io_pdal/CMakeLists.txt saga-9.10.2/saga-gis/src/tools/io/io_pdal/CMakeLists.txt
--- orig/saga-9.10.2/saga-gis/src/tools/io/io_pdal/CMakeLists.txt	2025-12-01 09:35:36.000000000 +0100
+++ saga-9.10.2/saga-gis/src/tools/io/io_pdal/CMakeLists.txt	2025-12-13 19:12:54.209585100 +0100
@@ -26,5 +26,6 @@
 		include(../../CMakePluginTemplate.cmake)	# load common tool template

 		target_include_directories(${PROJECT_NAME} PUBLIC ${PDAL_INCLUDE_DIR})

 		target_link_libraries(${PROJECT_NAME} ${PDAL_LIBRARIES})

+		target_link_libraries(${PROJECT_NAME} ws2_32)

 	endif()

 endif()

