@@ -111,9 +111,9 @@ internal static bool UseIl2CppCodegenWithMonoBackend(BuildTargetGroup targetGrou
111111 PlayerSettings . GetScriptingBackend ( targetGroup ) == ScriptingImplementation . IL2CPP ;
112112 }
113113
114- internal static bool EnableIL2CPPDebugger ( BuildTargetGroup targetGroup )
114+ internal static bool EnableIL2CPPDebugger ( IIl2CppPlatformProvider provider , BuildTargetGroup targetGroup )
115115 {
116- if ( ! EditorUserBuildSettings . allowDebugging || ! EditorUserBuildSettings . development )
116+ if ( ! provider . allowDebugging || ! provider . development )
117117 return false ;
118118
119119 switch ( PlayerSettings . GetApiCompatibilityLevel ( targetGroup ) )
@@ -276,7 +276,7 @@ private void ConvertPlayerDlltoCpp(string inputDirectory, string outputDirectory
276276
277277 arguments . Add ( string . Format ( "--dotnetprofile=\" {0}\" " , IL2CPPUtils . ApiCompatibilityLevelToDotNetProfileArgument ( PlayerSettings . GetApiCompatibilityLevel ( buildTargetGroup ) ) ) ) ;
278278
279- if ( IL2CPPUtils . EnableIL2CPPDebugger ( buildTargetGroup ) && platformSupportsManagedDebugging )
279+ if ( IL2CPPUtils . EnableIL2CPPDebugger ( m_PlatformProvider , buildTargetGroup ) && platformSupportsManagedDebugging )
280280 arguments . Add ( "--enable-debugger" ) ;
281281
282282 var il2CppNativeCodeBuilder = m_PlatformProvider . CreateIl2CppNativeCodeBuilder ( ) ;
@@ -422,6 +422,8 @@ internal interface IIl2CppPlatformProvider
422422 bool supportsEngineStripping { get ; }
423423 bool supportsManagedDebugging { get ; }
424424 bool supportsUsingIl2cppCore { get ; }
425+ bool development { get ; }
426+ bool allowDebugging { get ; }
425427
426428 BuildReport buildReport { get ; }
427429 string [ ] includePaths { get ; }
@@ -434,10 +436,11 @@ internal interface IIl2CppPlatformProvider
434436
435437 internal class BaseIl2CppPlatformProvider : IIl2CppPlatformProvider
436438 {
437- public BaseIl2CppPlatformProvider ( BuildTarget target , string libraryFolder )
439+ public BaseIl2CppPlatformProvider ( BuildTarget target , string libraryFolder , BuildReport buildReport )
438440 {
439441 this . target = target ;
440442 this . libraryFolder = libraryFolder ;
443+ this . buildReport = buildReport ;
441444 }
442445
443446 public virtual BuildTarget target { get ; private set ; }
@@ -480,11 +483,28 @@ public virtual bool supportsUsingIl2cppCore
480483 get { return true ; }
481484 }
482485
483- public virtual BuildReport buildReport
486+ public virtual bool development
484487 {
485- get { return null ; }
488+ get
489+ {
490+ if ( buildReport != null )
491+ return ( buildReport . summary . options & BuildOptions . Development ) == BuildOptions . Development ;
492+ return false ;
493+ }
486494 }
487495
496+ public virtual bool allowDebugging
497+ {
498+ get
499+ {
500+ if ( buildReport != null )
501+ return ( buildReport . summary . options & BuildOptions . AllowDebugging ) == BuildOptions . AllowDebugging ;
502+ return false ;
503+ }
504+ }
505+
506+ public BuildReport buildReport { get ; private set ; }
507+
488508 public virtual string [ ] includePaths
489509 {
490510 get
0 commit comments