[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mapguide-commits
Subject:    [mapguide-commits] r9972 - in trunk/MgDev: . Common/Foundation
From:       svn_mapguide () osgeo ! org
Date:       2022-10-10 9:50:28
Message-ID: 20221010095028.5DB52126E3E () trac ! osgeo ! org
[Download RAW message or body]

Author: jng
Date: 2022-10-10 02:50:27 -0700 (Mon, 10 Oct 2022)
New Revision: 9972

Added:
   trunk/MgDev/Bindings/
Modified:
   trunk/MgDev/
   trunk/MgDev/Common/Foundation/Foundation.h
Log:
Merged revision(s) 9757-9770 from sandbox/jng/vanilla_swig:
Add current vanilla SWIG binding source from GitHub
........
- Remove VC11 solution/project configs
- Fix up include/linker settings for .net/Java glue projects
- Add MapGuideDotNetApi to bindings solution
- Unloaded PhpApi from bindings solution. We'll re-activate this when we're ready to \
                integrate PHP7 into this source tree. Right now, we're just dealing \
                with .net/Java.
- Patch up Foundation.h to stub some ACE types in a SWIG codegen context so we don't \
                have to leak out ACE headers
........
Build the java sources and jar file as a post-build of JavaApi.vcxproj
........
Fix pathing in jar generation
........
IMake update to support a custom prefix for the properties file (needed for the split \
                layout)
........
First step in attempting to split up the .net binding. Add MgFoundation glue and .net \
wrapper.

Also remove the MgObjectFactory as it is now auto-generated as part of the main \
                PINVOKE module.
........
Next step in attempting to split up the .net binding. Add MgGeometry glue and .net \
                wrapper.
........
Next step in attempting to split up the .net binding. Add MgPlatformBase glue and \
                .net wrapper.
........
Next step in attempting to split up the .net binding. Add MgMapGuideCommon glue and \
                .net wrapper.
........
Complete the .net binding split. Add combined MgHttpHandler/MgWebSupport/MgWebApp \
                glue and .net wrapper.
........
Unify output path for .net projects
........
Update glue library pre-build events to make sure to copy all direct dll dependencies \
                to their respective nuget native library staging areas
........
Add TODO checklist based on the open GitHub issue list with extra items to verify
........
- Fix missing .net properties for Geometry and PlatformBase wrappers
- Add MapGuideApi.MgInitializeWebTier entry point to OSGeo.MapGuide.Web (it simply \
                forwards to the same method on the IM class)
- Update .net test suites to consume the produced nuget packages
- Fix up exception handling to match the new flattened exception model
........


Index: trunk/MgDev
===================================================================
--- trunk/MgDev	2022-10-10 09:40:18 UTC (rev 9971)
+++ trunk/MgDev	2022-10-10 09:50:27 UTC (rev 9972)

Property changes on: trunk/MgDev
___________________________________________________________________
Modified: svn:mergeinfo
## -41,5 +41,6 ##
 /sandbox/jng/utfgrid:9179-9212
 /sandbox/jng/v30:8212-8227
 /sandbox/jng/v4:9511-9519
+/sandbox/jng/vanilla_swig:9757-9770
 /sandbox/jng/wfs_hits:9569-9577
 /sandbox/rfc94:5099-5163
\ No newline at end of property
Modified: trunk/MgDev/Common/Foundation/Foundation.h
===================================================================
--- trunk/MgDev/Common/Foundation/Foundation.h	2022-10-10 09:40:18 UTC (rev 9971)
+++ trunk/MgDev/Common/Foundation/Foundation.h	2022-10-10 09:50:27 UTC (rev 9972)
@@ -45,14 +45,15 @@
 // ignore warnings about using deprecated methods
 #pragma warning(disable: 4996)
 
-// Unfortunately, we must leak this header out in a SWIG generation context as \
                ACE_Recursive_Thread_Mutex 
-// is a private and public member of several classes thare are exported out to the \
                public MapGuide API 
-// surface area (MgGuardDisposable/MgSiteManager)
+#ifdef SWIG_PUBLIC_API
+// ACE_Recursive_Thread_Mutex and ACE_thread_t are currently exposed as private \
members of several  +// classes thare are exported out to the public MapGuide API \
surface area (MgGuardDisposable/MgSiteManager)  //
-// Every other ACE type/header however are internal implementation details that can \
                be safely walled-off 
-// with SWIG_PUBLIC_API or forward-declared away to reduce the ACE header surface \
                area to this one single 
-// header below
-#include "ace/Recursive_Thread_Mutex.h"
+// Private members do not (at least for us) factor into the SWIG code generation \
context, so for the +// purpose of SWIG codegen, we can just stub these missing types
+typedef int ACE_thread_t;
+class ACE_Recursive_Thread_Mutex { };
+#endif
 
 #ifndef SWIG_PUBLIC_API
 #include "ace/Init_ACE.h"

_______________________________________________
mapguide-commits mailing list
mapguide-commits@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapguide-commits


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic