Beispiel #1
0
        public static NPath[] GetMetadataSourceFiles(NativeProgramConfiguration npc, NPath MonoSourceDir, bool managedDebuggingEnabled)
        {
            var files = new List <NPath>();

            if (managedDebuggingEnabled)
            {
                files.Add(MonoSourceDir.Combine("mono/metadata/mono-hash.c"));
                files.Add(MonoSourceDir.Combine("mono/metadata/profiler.c"));

                if (npc.ToolChain.Platform is WindowsPlatform)
                {
                    files.AddRange(WindowsDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is UniversalWindowsPlatform)
                {
                    files.AddRange(WinRTDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is AndroidPlatform)
                {
                    files.AddRange(AndroidDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is IosPlatform)
                {
                    files.AddRange(iOSDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is LinuxPlatform)
                {
                    files.AddRange(LinuxDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is MacOSXPlatform)
                {
                    files.AddRange(OSXDebuggerMonoSourceFileList.GetMetadataDebuggerSourceFiles(npc, MonoSourceDir));
                }
            }
            else
            {
                files.AddRange(new[]
                {
                    MonoSourceDir.Combine("mono/metadata/appdomain.c"),
                    MonoSourceDir.Combine("mono/metadata/assembly.c"),
                    MonoSourceDir.Combine("mono/metadata/attach.c"),
                    MonoSourceDir.Combine("mono/metadata/boehm-gc.c"),
                    MonoSourceDir.Combine("mono/metadata/class-accessors.c"),
                    MonoSourceDir.Combine("mono/metadata/class.c"),
                    MonoSourceDir.Combine("mono/metadata/cominterop.c"),
                    MonoSourceDir.Combine("mono/metadata/coree.c"),
                    MonoSourceDir.Combine("mono/metadata/custom-attrs.c"),
                    MonoSourceDir.Combine("mono/metadata/debug-helpers.c"),
                    MonoSourceDir.Combine("mono/metadata/debug-mono-ppdb.c"),
                    MonoSourceDir.Combine("mono/metadata/debug-mono-symfile.c"),
                    MonoSourceDir.Combine("mono/metadata/decimal-ms.c"),
                    MonoSourceDir.Combine("mono/metadata/domain.c"),
                    MonoSourceDir.Combine("mono/metadata/dynamic-image.c"),
                    MonoSourceDir.Combine("mono/metadata/dynamic-stream.c"),
                    MonoSourceDir.Combine("mono/metadata/environment.c"),
                    MonoSourceDir.Combine("mono/metadata/exception.c"),
                    MonoSourceDir.Combine("mono/metadata/fdhandle.c"),
                    MonoSourceDir.Combine("mono/metadata/file-mmap-posix.c"),
                    MonoSourceDir.Combine("mono/metadata/file-mmap-windows.c"),
                    MonoSourceDir.Combine("mono/metadata/filewatcher.c"),
                    MonoSourceDir.Combine("mono/metadata/gc-stats.c"),
                    MonoSourceDir.Combine("mono/metadata/gc.c"),
                    MonoSourceDir.Combine("mono/metadata/handle.c"),
                    MonoSourceDir.Combine("mono/metadata/icall-windows.c"),
                    MonoSourceDir.Combine("mono/metadata/icall.c"),
                    MonoSourceDir.Combine("mono/metadata/image.c"),
                    MonoSourceDir.Combine("mono/metadata/jit-info.c"),
                    MonoSourceDir.Combine("mono/metadata/loader.c"),
                    MonoSourceDir.Combine("mono/metadata/locales.c"),
                    MonoSourceDir.Combine("mono/metadata/lock-tracer.c"),
                    MonoSourceDir.Combine("mono/metadata/marshal-windows.c"),
                    MonoSourceDir.Combine("mono/metadata/marshal.c"),
                    MonoSourceDir.Combine("mono/metadata/mempool.c"),
                    MonoSourceDir.Combine("mono/metadata/metadata-cross-helpers.c"),
                    MonoSourceDir.Combine("mono/metadata/metadata-verify.c"),
                    MonoSourceDir.Combine("mono/metadata/metadata.c"),
                    MonoSourceDir.Combine("mono/metadata/method-builder.c"),
                    MonoSourceDir.Combine("mono/metadata/monitor.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-basic-block.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-conc-hash.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-config-dirs.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-config.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-debug.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-endian.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-hash.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-mlist.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-perfcounters.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-security-windows.c"),
                    MonoSourceDir.Combine("mono/metadata/mono-security.c"),
                    MonoSourceDir.Combine("mono/metadata/null-gc.c"),
                    MonoSourceDir.Combine("mono/metadata/number-ms.c"),
                    MonoSourceDir.Combine("mono/metadata/object.c"),
                    MonoSourceDir.Combine("mono/metadata/opcodes.c"),
                    MonoSourceDir.Combine("mono/metadata/profiler.c"),
                    MonoSourceDir.Combine("mono/metadata/property-bag.c"),
                    MonoSourceDir.Combine("mono/metadata/rand.c"),
                    MonoSourceDir.Combine("mono/metadata/reflection.c"),
                    MonoSourceDir.Combine("mono/metadata/remoting.c"),
                    MonoSourceDir.Combine("mono/metadata/runtime.c"),
                    MonoSourceDir.Combine("mono/metadata/security-core-clr.c"),
                    MonoSourceDir.Combine("mono/metadata/security-manager.c"),
                    MonoSourceDir.Combine("mono/metadata/seq-points-data.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-bridge.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-mono.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-new-bridge.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-old-bridge.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-stw.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-tarjan-bridge.c"),
                    MonoSourceDir.Combine("mono/metadata/sgen-toggleref.c"),
                    MonoSourceDir.Combine("mono/metadata/sre-encode.c"),
                    MonoSourceDir.Combine("mono/metadata/sre-save.c"),
                    MonoSourceDir.Combine("mono/metadata/sre.c"),
                    MonoSourceDir.Combine("mono/metadata/string-icalls.c"),
                    MonoSourceDir.Combine("mono/metadata/sysmath.c"),
                    MonoSourceDir.Combine("mono/metadata/threadpool-io.c"),
                    MonoSourceDir.Combine("mono/metadata/threadpool-worker-default.c"),
                    MonoSourceDir.Combine("mono/metadata/threadpool.c"),
                    MonoSourceDir.Combine("mono/metadata/threads.c"),
                    MonoSourceDir.Combine("mono/metadata/unity-icall.c"),
                    MonoSourceDir.Combine("mono/metadata/unity-liveness.c"),
                    MonoSourceDir.Combine("mono/metadata/unity-utils.c"),
                    MonoSourceDir.Combine("mono/metadata/verify.c"),
                    MonoSourceDir.Combine("mono/metadata/w32file.c"),
                    MonoSourceDir.Combine("mono/metadata/w32handle-namespace.c"),
                    MonoSourceDir.Combine("mono/metadata/w32handle.c"),
                    MonoSourceDir.Combine("mono/metadata/w32process.c"),
                    MonoSourceDir.Combine("mono/metadata/w32socket.c")
                });

                if (npc.ToolChain.Platform is WindowsPlatform)
                {
                    files.AddRange(WindowsDesktopMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is WindowsGamesPlatform)
                {
                    files.AddRange(WindowsGamesMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is UniversalWindowsPlatform)
                {
                    files.AddRange(WinRTMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is AndroidPlatform)
                {
                    files.AddRange(AndroidMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is LinuxPlatform)
                {
                    files.AddRange(LinuxMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }

                if (npc.ToolChain.Platform is MacOSXPlatform)
                {
                    files.AddRange(OSXMonoSourceFileList.GetMetadataSourceFiles(npc, MonoSourceDir));
                }
            }

            return(files.ToArray());
        }