[mapguide-commits] r10239 - in branches/4.0/MgDev/Bindings/src/Bindings/DotNet: Foundation Geometry MapGuideCommon PlatformBase Portable Web

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Mon Nov 2 07:13:14 PST 2026


Author: jng
Date: 2026-11-02 07:13:14 -0800 (Mon, 02 Nov 2026)
New Revision: 10239

Modified:
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Foundation/CMakeLists.txt
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Geometry/CMakeLists.txt
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/MapGuideCommon/CMakeLists.txt
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/PlatformBase/CMakeLists.txt
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Portable/CMakeLists.txt
   branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Web/CMakeLists.txt
Log:
#2493: Activate the .net binding targets for building on Linux. This is to facilitate e2e testing of the .net binding on Linux and nothing else

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Foundation/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Foundation/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Foundation/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -33,6 +33,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${FoundationUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -61,7 +68,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module FoundationUnmanagedApi

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Geometry/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Geometry/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Geometry/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -31,6 +31,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${GeometryUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -59,7 +66,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module GeometryUnmanagedApi

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/MapGuideCommon/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/MapGuideCommon/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/MapGuideCommon/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -31,6 +31,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${MapGuideCommonUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -63,7 +70,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module MapGuideCommonUnmanagedApi

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/PlatformBase/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/PlatformBase/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/PlatformBase/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -31,6 +31,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${PlatformBaseUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -59,7 +66,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module PlatformBaseUnmanagedApi

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Portable/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Portable/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Portable/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -31,6 +31,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${PortableUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -63,7 +70,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module PortableUnmanagedApi

Modified: branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Web/CMakeLists.txt
===================================================================
--- branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Web/CMakeLists.txt	2026-11-02 14:30:19 UTC (rev 10238)
+++ branches/4.0/MgDev/Bindings/src/Bindings/DotNet/Web/CMakeLists.txt	2026-11-02 15:13:14 UTC (rev 10239)
@@ -34,6 +34,13 @@
 endif (WIN32)
 
 message(STATUS "Using IMake at: ${IMAKE_TOOL}")
+# SWIG_CSHARP_NO_WSTRING_HELPER is deliberately absent: SWIG 4.3 still emits the
+# references to SWIGWStringHelper while no longer emitting the class itself, so the
+# generated code does not compile (CS0103). Letting the helper be generated is
+# correct on both 4.0 and 4.3 - each module is generated into its own assembly, so
+# there is nothing for it to collide with. The other two suppressions are honoured
+# consistently and stay. The Windows build sets all three from *.vcxproj and does not
+# use this file.
 add_custom_command(OUTPUT ${WebUnmanagedApi_SRCS}
     COMMAND ${CMAKE_COMMAND} -E echo Removing: ${MG_DOTNET_PROJECT_DIR}/*.cs
     COMMAND ${CMAKE_COMMAND} -E remove -f 
@@ -62,7 +69,7 @@
     COMMAND ${CMAKE_COMMAND} -E echo Running SWIG [DotNet]. Output Dir: ${MG_DOTNET_PROJECT_DIR}
     COMMAND ${SWIG_EXECUTABLE} -c++ -csharp 
             ${SWIG_DOTNET_DEFS} -DDOTNETCORE -DSWIG_CSHARP_NO_EXCEPTION_HELPER
-            -DSWIG_CSHARP_NO_STRING_HELPER -DSWIG_CSHARP_NO_WSTRING_HELPER
+            -DSWIG_CSHARP_NO_STRING_HELPER
             -namespace OSGeo.MapGuide
             -nodefaultctor -nodefaultdtor
             -module WebUnmanagedApi



More information about the mapguide-commits mailing list