示例#1
0
        private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist, bool developmentBuild)
        {
            // ISSUE: object of a compiler-generated type is created
            // ISSUE: variable of a compiler-generated type
            AssemblyStripper.\u003CStripAssembliesTo\u003Ec__AnonStorey65 assembliesToCAnonStorey65 = new AssemblyStripper.\u003CStripAssembliesTo\u003Ec__AnonStorey65();
            // ISSUE: reference to a compiler-generated field
            assembliesToCAnonStorey65.workingDirectory = workingDirectory;
            if (!Directory.Exists(outputFolder))
            {
                Directory.CreateDirectory(outputFolder);
            }
            // ISSUE: reference to a compiler-generated method
            additionalBlacklist = additionalBlacklist.Select <string, string>(new Func <string, string>(assembliesToCAnonStorey65.\u003C\u003Em__D4)).Where <string>(new Func <string, bool>(File.Exists));
            IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles();

            foreach (string str in userBlacklistFiles)
            {
                Console.WriteLine("UserBlackList: " + str);
            }
            additionalBlacklist = additionalBlacklist.Concat <string>(userBlacklistFiles);
            List <string> stringList = new List <string>()
            {
                "-out \"" + outputFolder + "\"", "-l none", "-c link", "-b " + (object)developmentBuild, "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"", "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\""
            };

            stringList.AddRange(additionalBlacklist.Select <string, string>((Func <string, string>)(path => "-x \"" + path + "\"")));
            stringList.AddRange(((IEnumerable <string>)searchDirs).Select <string, string>((Func <string, string>)(d => "-d \"" + d + "\"")));
            stringList.AddRange(((IEnumerable <string>)assemblies).Select <string, string>((Func <string, string>)(assembly => "-a  \"" + Path.GetFullPath(assembly) + "\"")));
            // ISSUE: reference to a compiler-generated field
            return(AssemblyStripper.RunAssemblyLinker((IEnumerable <string>)stringList, out output, out error, linkerPath, assembliesToCAnonStorey65.workingDirectory));
        }
        private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist, bool developmentBuild)
        {
            if (!Directory.Exists(outputFolder))
            {
                Directory.CreateDirectory(outputFolder);
            }
            additionalBlacklist = (from s in additionalBlacklist
                                   select(!Path.IsPathRooted(s)) ? Path.Combine(workingDirectory, s) : s).Where(new Func <string, bool>(File.Exists));
            IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles();

            foreach (string current in userBlacklistFiles)
            {
                Console.WriteLine("UserBlackList: " + current);
            }
            additionalBlacklist = additionalBlacklist.Concat(userBlacklistFiles);
            List <string> list = new List <string>
            {
                "-out \"" + outputFolder + "\"",
                "-l none",
                "-c link",
                "-b " + developmentBuild,
                "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"",
                "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\""
            };

            list.AddRange(from path in additionalBlacklist
                          select "-x \"" + path + "\"");
            list.AddRange(from d in searchDirs
                          select "-d \"" + d + "\"");
            list.AddRange(from assembly in assemblies
                          select "-a  \"" + Path.GetFullPath(assembly) + "\"");
            return(AssemblyStripper.RunAssemblyLinker(list, out output, out error, linkerPath, workingDirectory));
        }
示例#3
0
        private static bool StripAssembliesTo(string[] assemblies, string[] searchDirs, string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, IIl2CppPlatformProvider platformProvider, IEnumerable <string> additionalBlacklist)
        {
            if (!Directory.Exists(outputFolder))
            {
                Directory.CreateDirectory(outputFolder);
            }
            IEnumerable <string> arg_50_0 = from s in additionalBlacklist
                                            select(!Path.IsPathRooted(s)) ? Path.Combine(workingDirectory, s) : s;

            if (AssemblyStripper.< > f__mg$cache0 == null)
            {
                AssemblyStripper.< > f__mg$cache0 = new Func <string, bool>(File.Exists);
            }
            additionalBlacklist = arg_50_0.Where(AssemblyStripper.< > f__mg$cache0);
            IEnumerable <string> userBlacklistFiles = AssemblyStripper.GetUserBlacklistFiles();

            foreach (string current in userBlacklistFiles)
            {
                Console.WriteLine("UserBlackList: " + current);
            }
            additionalBlacklist = additionalBlacklist.Concat(userBlacklistFiles);
            List <string> list = new List <string>
            {
                "--api " + PlayerSettings.GetApiCompatibilityLevel(EditorUserBuildSettings.activeBuildTargetGroup).ToString(),
                "-out \"" + outputFolder + "\"",
                "-l none",
                "-c link",
                "-b true",
                "-x \"" + AssemblyStripper.GetModuleWhitelist("Core", platformProvider.moduleStrippingInformationFolder) + "\"",
                "-f \"" + Path.Combine(platformProvider.il2CppFolder, "LinkerDescriptors") + "\""
            };

            list.AddRange(from path in additionalBlacklist
                          select "-x \"" + path + "\"");
            list.AddRange(from d in searchDirs
                          select "-d \"" + d + "\"");
            list.AddRange(from assembly in assemblies
                          select "-a  \"" + Path.GetFullPath(assembly) + "\"");
            return(AssemblyStripper.RunAssemblyLinker(list, out output, out error, linkerPath, workingDirectory));
        }
        private bool StripAssembliesTo(string outputFolder, string workingDirectory, out string output, out string error, string linkerPath, string descriptorsFolder, IEnumerable <string> additionalBlacklist)
        {
            if (!Directory.Exists(outputFolder))
            {
                Directory.CreateDirectory(outputFolder);
            }
            additionalBlacklist = (
                from s in additionalBlacklist
                select(!Path.IsPathRooted(s)) ? Path.Combine(workingDirectory, s) : s).Where(new Func <string, bool>(File.Exists));
            IEnumerable <string> enumerable =
                from s in Directory.GetFiles("Assets", "link.xml", SearchOption.AllDirectories)
                select Path.Combine(Directory.GetCurrentDirectory(), s);

            foreach (string current in enumerable)
            {
                Console.WriteLine("UserBlackList: " + current);
            }
            additionalBlacklist = additionalBlacklist.Concat(enumerable);
            List <string> list = new List <string>
            {
                "-out \"" + outputFolder + "\"",
                "-l none",
                "-c link",
                "-x \"" + AssemblyStripper.BlacklistPath + "\"",
                "-f \"" + descriptorsFolder + "\""
            };

            list.AddRange(
                from path in additionalBlacklist
                select "-x \"" + path + "\"");
            list.AddRange(
                from d in this._searchDirs
                select "-d \"" + d + "\"");
            list.AddRange(
                from assembly in this._assemblies
                select "-a  \"" + Path.GetFullPath(assembly) + "\"");
            return(AssemblyStripper.RunAssemblyLinker(list, out output, out error, linkerPath, workingDirectory));
        }