Commit Graph

276 Commits (main)

Author SHA1 Message Date
walon 1934d90f27 [remove] remove unused ReversePInvokeWrap.meta 2025-09-03 09:35:55 +08:00
walon 814572e1a1 [fix] fix the bug that BashUtil.CopyDir calls UnityEditor.FileUtil.CopyFileOrDirectory failed when parent directory of dst does not exist. 2025-08-26 21:17:03 +08:00
walon e36bbb9022 [fix] fixed PInvokeAnalyzer bug in computing PInvoke function calling conventions. 2025-08-25 19:23:29 +08:00
walon d86572db37 [change] change domain hybridclr.doc.code-philosophy.com to www.hybridclr.cn 2025-08-20 12:44:19 +08:00
xiewen b5944ea834 [change] BashUtil::CopyDir replaces CopyWithCheckLongFile with CopyUnityEditor.FileUtil.CopyFileOrDirectory 2025-08-20 12:44:17 +08:00
walon 7f158f814a [fix] fix the issue that `Texture Compression` option in Build Settings was changed after running `HybridCLR/Generate/All` on Android platform 2025-07-04 17:17:44 +08:00
walon ab41cd0144 [fix] fix the bug that not collect struct in calli and extern method signature in generating MethodBridge. 2025-06-30 12:12:02 +08:00
walon c9ff293dfe [change] changed from throw exception to logError when not supported pinvoke or reverse pinvoke method parameter type was found 2025-06-06 16:57:53 +08:00
walon 8e27e8d41b [change] remove warning log when the result of resolving method is null in GenericMethod::ResolveMethod. 2025-05-29 17:04:10 +08:00
walon c21dbcc60a [change] Remove redundant `buildOptions |= BuildOptions.CleanBuildCache;` code since it's already added in the GetBuildPlayerOptions function. 2025-05-29 14:22:50 +08:00
walon 7f2fa52f37 [change] change visibility of LinkXmlWriter to public. 2025-05-22 19:55:36 +08:00
walon da46e71534 [fix] fix bug of GenericArgumentContext that inflate ByRef and SZArray to Ptr. 2025-05-22 19:53:49 +08:00
walon b301b44cd3 [refactor] move ReversePInvokeWrap/Analyzer.cs to MethodBridge/MonoPInvokeCallbackAnalyzer.cs
[change] validate unsupported parameter type(.e.g string) in MonoPInvokeCallback signature when generate MethodBridge file
2025-04-30 16:20:03 +08:00
walon ddc3332958 [change] validate unsupported parameter type(.e.g string) in PInvoke signature when generate MethodBridge file 2025-04-30 16:11:41 +08:00
walon 52f25bdb2a [change] AssemblyResolver also resolves `*.dll.bytes` files besides `*.dll`. 2025-04-30 15:33:46 +08:00
walon 31be818bb6 [fix] fix error of computing CallingConvention in MethodBridge/Generator::BuildCalliMethods 2025-04-30 15:30:03 +08:00
walon 213a11ff25 [new] generate Managed2NativeFunction for PInvoke method 2025-04-30 15:05:40 +08:00
walon 585be97be9 [change] change type of the first argument `methodPointer` of Managed2NativeFunctionPointer from `const void*` to `Il2CppMethodPointer` 2025-04-30 12:40:21 +08:00
walon 361873803f [refactor] refactor code of settings. 2025-04-28 10:20:08 +08:00
walon 46f308ed5e [opt] optimization unnecessary initialization of typeArgsStack and methodArgsStack of GenericArgumentContext 2025-04-25 22:02:54 +08:00
walon 34406b1c13 [change] the shared type of ElementType.FnPtr is changed from IntPtr to UIntPtr 2025-04-25 21:59:15 +08:00
walon e44fa663db [fix] fix bug of `CompileDll(BuildTarget target)` that use EditorUserBuildSettings.activeBuildTarget instead of target to call CompileDll 2025-04-12 14:21:35 +08:00
L0veTomori 3fe41a8cba
[opt] strip AOT assembly resources. (#54) 2025-04-03 10:48:40 +08:00
walon 8d1280a1bd [fix] fixed the bug where BashUtil.RemoveDir failed to run under certain circumstances on macOS systems. 2025-03-14 08:59:11 +08:00
walon 4768c039d2 [fix] fixed hook failed in version below MacOS 11 2025-03-07 13:29:47 +08:00
walon 10dc749d7a [change] CompileDllActiveBuildTarget and GenerateAll use EditorUserBuildSettings.development to compile hot update dll. 2025-03-05 16:14:08 +08:00
walon 0c5ef00c12 [remove] remove option HybridCLRSettings.enableStraceTraceInWebGLReleaseBuild 2025-03-05 15:59:37 +08:00
walon 1553582ec1 [remove] remove option HybridCLRSettings.enableProfilerInReleaseBuild 2025-03-05 15:58:11 +08:00
walon 355e24fbe8 [fix] fixed the bug in the MethodBridge generator where it incorrectly handle [StructLayout] and blittable types when generating code for struct classes. 2025-03-01 10:39:05 +08:00
walon 9e4946aa45 [new] add AssemblySorter to sort assemblies by reference order 2025-02-08 16:53:11 +08:00
walon b8dd2be1e4 [revert] Revert "[new] support preserve UnityEngine core types when GenerateLinkXml"
This reverts commit 82163d2e50.
2025-02-05 10:35:49 +08:00
walon a11ebecf93 [fix] fixe the bug that preserving UnityEngine.PerformanceReportingModule when generating link.xml would cause the Android app built with Unity 2019 to crash on startup. 2025-01-18 22:55:37 +08:00
walon 84bf6d59db [change] removed unnecessary field initialization in the HybridCLRSettings class. 2025-01-08 16:28:12 +08:00
walon 82163d2e50 [new] support preserve UnityEngine core types when GenerateLinkXml 2025-01-08 16:20:39 +08:00
walon 208372e6af [new] add MethodBridge.cpp.tpl. MethodBridgeGeneratorCommand doesn't generate and override from same file 2025-01-08 15:26:48 +08:00
walon dd8d812641 [change] add UnityVersion.h.tpl and AssemblyManifest.cpp.tpl, Il2CppDefGenerator doesn't generates and override code file from same one 2025-01-08 15:21:43 +08:00
walon c19b34542e [fix] fixed the bug where StripAOTDllCommand did not set BuildPlayerOptions.subtarget in Unity 2021+ versions, causing failure when publishing dedicated buildTarget. 2025-01-08 15:00:54 +08:00
walon e30306d7e1 [fix] fixed the bug in AOTAssemblyMetadataStripper::Strip where ModuleWriterOptions MetadataFlags.PreserveRids was not used. 2025-01-07 16:19:11 +08:00
walon 20f34c9b14 [fix] fix bug of computing CallingConvention of calli 2025-01-03 12:23:04 +08:00
walon 45749ffb5c [new] add Managed2NativeFunctionPointer MethodBridge functions 2025-01-02 22:22:59 +08:00
walon 0c99afd58e [fix] fix the bug where MissingMetadataChecker can't detect references to newly added AOT assemblies. 2024-12-18 18:21:37 +08:00
walon 2458c9a9ba [fix] fix the issue in Unity 6000 where the modification of the trimmed AOT DLL output directory for the visionOS build target caused CopyStrippedAOTAssemblies::GetStripAssembliesDir2021 to fail in copying AOT DLLs. 2024-12-16 19:22:56 +08:00
walon e54ce36b0e [fix] fix the bug that CopyStrippedAOTAssemblies didn't work on UWP platform of 6000.0.x 2024-12-01 12:53:38 +08:00
walon ac8b649d50 [fix] fix the issue that CopyStrippedAOTAssemblies didn't support HMIAndroid in tuanjie engine 2024-11-25 12:46:13 +08:00
walon 37dafd7b3c [change] change the attributes on fields of HybridCLRSettings from `[Header]` to `[ToolTip]` 2024-11-20 11:27:02 +08:00
walon f58d12c2cb [change] refactor code comments and translate them to English 2024-11-20 11:25:31 +08:00
walon 7d287a2293 [fix] fix the bug in `MissingMetadataChecker` where it did not check for missing fields. 2024-11-06 12:09:06 +08:00
walon f19ba3eb30 [fix] fix the bug in GenericReferenceWriter where _systemTypePattern did not properly escape the '.' in type names. This caused issues when compiler-generated anonymous types and functions contained string sequences like 'System-Int', incorrectly matching them to 'System.Int', resulting in runtime exceptions. 2024-11-05 18:19:13 +08:00
walon 77517a9814 [fix] Fixs HookUtils compile errors in Unity 2019 and 2020 2024-10-24 15:43:35 +08:00
walon 925921c27c [fix] 修复MonoHook判定processorType时没有正确处理某些CPU上processorType为全大写的情况(如有些机器上返回INTEL而不是Intel) 2024-09-30 12:13:37 +08:00