cefForUe.build.cs 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415
  1. // Copyright aXiuShen. All Rights Reserved.
  2. using UnrealBuildTool;
  3. using System;
  4. using System.IO;
  5. using System.Text;
  6. using System.Collections.Generic;
  7. public class cefForUe : ModuleRules
  8. {
  9. public cefForUe(ReadOnlyTargetRules Target) : base(Target)
  10. {
  11. Type = ModuleType.External;
  12. //PrintConfig("cefForUe");
  13. //Console.WriteLine(Target.bBuildEditor ? "editor":"runtime");
  14. //string versionCEF="cef_95.4638";
  15. //string versionCEF = "cef_103.5060";
  16. //string versionCEF="cef_88.4324";
  17. if (Target.Platform == UnrealTargetPlatform.Win64) {
  18. //InitCEF3_Win("cef_103.5060");
  19. InitCEF3_Win("cef_120.6099");
  20. //InitCEF3_Win("cef_115.5790");
  21. }
  22. else if (Target.Platform == UnrealTargetPlatform.Linux)
  23. {
  24. InitCEF3_Linux("cef_103.5060");
  25. }
  26. //else if (Target.Platform == UnrealTargetPlatform.Mac)
  27. //{
  28. // InitCEF3_Mac("cef_103.5060","mac");
  29. //}
  30. else {
  31. return;
  32. }
  33. }
  34. void MergeFile(string PathRoot)
  35. {
  36. string split = ".split";
  37. // merge file
  38. Dictionary<string, Dictionary<int, string>> mapFile = new Dictionary<string, Dictionary<int, string>>();
  39. foreach (string FileName in Directory.EnumerateFiles(PathRoot, "*" + split, SearchOption.AllDirectories))
  40. {
  41. string file = Path.GetFileName(FileName);
  42. string filePath = Path.GetDirectoryName(FileName);
  43. if (!filePath.EndsWith(".dir")) continue;
  44. string splitName = Path.GetFileName(filePath).Replace(".dir", "");
  45. string splitPath = Path.GetDirectoryName(filePath);
  46. string splitPN = Path.Combine(splitPath, splitName);
  47. if (File.Exists(splitPN)) continue;
  48. if (!mapFile.ContainsKey(splitPN))
  49. mapFile.Add(splitPN, new Dictionary<int, string>());
  50. int idx = int.Parse(file.Replace(split, ""));
  51. mapFile[splitPN].Add(idx, FileName);
  52. }
  53. const int maxBuff = 1024 * 1024 * 100;
  54. byte[] readBuff = new byte[maxBuff];//
  55. foreach (KeyValuePair<string, Dictionary<int, string>> kvp in mapFile)
  56. {
  57. if (kvp.Value.Count == 0) continue;
  58. FileStream fileDst = new FileStream(kvp.Key, FileMode.OpenOrCreate);
  59. for(int index=1;index<=kvp.Value.Count;index++)
  60. {
  61. string filePathSplit = kvp.Value[index];
  62. FileStream fileSrc = new FileStream(filePathSplit, FileMode.Open);
  63. long fileSize = fileSrc.Length;
  64. while (0 < fileSize)
  65. {
  66. int readLen = fileSrc.Read(readBuff, 0, maxBuff);
  67. fileDst.Write(readBuff, 0, readLen);
  68. fileSize -= readLen;
  69. }
  70. }
  71. }
  72. }
  73. void InitCEF3_PUB(string CEFRoot,string CEFVersion,string renderName, List<string> Dlls)
  74. {
  75. //string CEFRoot = Path.Combine(ModuleDirectory, CEFVersion, platform);
  76. string LibraryPath = Path.Combine(CEFRoot,"lib");
  77. MergeFile(CEFRoot);
  78. string[] branchs = CEFVersion.Split('.');
  79. string branch ="";
  80. if (2 <= branchs.Length) branch = branchs[1];
  81. Int32 ue_version = Target.Version.MajorVersion*10000+Target.Version.MinorVersion*100+Target.Version.PatchVersion;
  82. PublicSystemIncludePaths.Add(Path.Combine(CEFRoot));
  83. PublicDefinitions.Add("CEF3_RENDER=\"" + renderName + "\""); //
  84. PublicDefinitions.Add("CEF3_VERSION=\"" + CEFVersion + "\""); //
  85. PublicDefinitions.Add("CEF3_BRANCH=" + branch + ""); //
  86. PublicDefinitions.Add("CEF3_UE_ENGINE_VERSION=" + ue_version ); //
  87. //List<string> Dlls = new List<string>();
  88. Dlls.Add("icudtl.dat");
  89. Dlls.Add("snapshot_blob.bin");
  90. Dlls.Add("v8_context_snapshot.bin");
  91. Dlls.Add("vk_swiftshader_icd.json");
  92. Dlls.Add("LICENSE.txt");
  93. foreach (string Dll in Dlls)
  94. {
  95. string file = Path.Combine(LibraryPath, Dll);
  96. if (!File.Exists(file)) continue;
  97. RuntimeDependencies.Add(file);
  98. }
  99. foreach (string FileName in Directory.EnumerateFiles(LibraryPath, "*.pak", SearchOption.AllDirectories))
  100. {
  101. RuntimeDependencies.Add(FileName);
  102. }
  103. RuntimeDependencies.Add(Path.Combine(LibraryPath, renderName));
  104. }
  105. void InitCEF3_Win(string CEFVersion)
  106. {
  107. string CEFRoot = Path.Combine(ModuleDirectory, CEFVersion, "win64");
  108. string LibraryPath = Path.Combine(CEFRoot, "lib");
  109. List<string> Dlls = new List<string>();
  110. Dlls.Add("killnoparent.exe");
  111. InitCEF3_PUB(CEFRoot, CEFVersion, "cefhelper.exe", Dlls);
  112. PublicDefinitions.Add("USING_CEF_SHARED=1"); //
  113. PublicDefinitions.Add("CEF_WINDOWS=1"); //
  114. PublicDefinitions.Add("WEBVIEW_CUSTOMIZED_CORE"); //
  115. foreach (string FileName in Directory.EnumerateFiles(LibraryPath, "*.lib", SearchOption.TopDirectoryOnly)) {
  116. PublicAdditionalLibraries.Add(FileName);
  117. }
  118. foreach (string FileName in Directory.EnumerateFiles(LibraryPath, "*.dll", SearchOption.TopDirectoryOnly)) {
  119. PublicDelayLoadDLLs.Add(System.IO.Path.GetFileName(FileName));
  120. RuntimeDependencies.Add(FileName);
  121. }
  122. string swiftshader = Path.Combine(LibraryPath, "swiftshader");
  123. if(Directory.Exists(swiftshader))
  124. foreach (string FileName in Directory.EnumerateFiles(swiftshader, "*.dll", SearchOption.TopDirectoryOnly))
  125. {
  126. RuntimeDependencies.Add(FileName);
  127. }
  128. }
  129. void InitCEF3_Mac(string CEFVersion,string arch)
  130. {
  131. string CEFRoot = Path.Combine(ModuleDirectory, CEFVersion, arch);
  132. string LibraryPath = Path.Combine(CEFRoot, "lib");
  133. MergeFile(LibraryPath);
  134. PublicSystemIncludePaths.Add(Path.Combine(CEFRoot));
  135. PublicAdditionalLibraries.Add(Path.Combine(LibraryPath, "libcef_dll_wrapper.a"));
  136. string[] branchs = CEFVersion.Split('.');
  137. string branch = "";
  138. if (2 <= branchs.Length) branch = branchs[1];
  139. Int32 ue_version = Target.Version.MajorVersion * 10000 + Target.Version.MinorVersion * 100 + Target.Version.PatchVersion;
  140. PublicDefinitions.Add("CEF3_UE_ENGINE_VERSION=" + ue_version); //
  141. PublicDefinitions.Add("CEF3_RENDER=\"cefhelper\""); //
  142. PublicDefinitions.Add("CEF3_VERSION=\"" + CEFVersion + "\""); //
  143. PublicDefinitions.Add("CEF3_BRANCH=" + branch + ""); //
  144. PublicDefinitions.Add("PLATFORM_LINUXAARCH64=0"); //
  145. PublicDefinitions.Add("CEF_MAC=1"); //
  146. PublicDefinitions.Add("WEBVIEW_CUSTOMIZED_CORE"); //
  147. PrivateRuntimeLibraryPaths.Add(LibraryPath);
  148. foreach (string FileName in Directory.EnumerateFiles(LibraryPath, "*", SearchOption.AllDirectories))
  149. {
  150. if (FileName.EndsWith(".split")) continue;//
  151. // if (FileName.EndsWith(".dylib"))PublicAdditionalLibraries.Add(FileName);
  152. if (FileName.EndsWith(".lproj")) AdditionalBundleResources.Add(new BundleResource(FileName,bShouldLog: false));
  153. RuntimeDependencies.Add(FileName);
  154. }
  155. }
  156. void InitCEF3_Linux(string CEFVersion)
  157. {
  158. string LINUX_MULTIARCH_ROOT = Environment.GetEnvironmentVariable("LINUX_MULTIARCH_ROOT");
  159. string CEFRoot =Path.Combine(ModuleDirectory, CEFVersion,"linux");// LINUX_MULTIARCH_ROOT
  160. //PathList.FullPathName()
  161. string LibraryPath = Path.Combine(CEFRoot, "lib");
  162. List<string> Dlls = new List<string>();
  163. Dlls.Add("chrome-sandbox");
  164. Dlls.Add("libvulkan.so.1");
  165. Dlls.Add("libvulkan.so.1.cef");
  166. InitCEF3_PUB(CEFRoot, CEFVersion, "cefhelper", Dlls);
  167. //MergeFile(CEFRoot);
  168. string libcef_path = "" ;
  169. String ProjectBin = Path.Combine(Path.GetDirectoryName(Target.ProjectFile.ToString()), "Binaries", "Linux");
  170. if (LINUX_MULTIARCH_ROOT != "")
  171. {
  172. PublicDefinitions.Add("WV_CROSS_BUILE=1"); //
  173. }
  174. PublicDefinitions.Add("CEF_LINUX=1"); //
  175. PublicDefinitions.Add("WEBVIEW_CUSTOMIZED_CORE"); //
  176. PublicAdditionalLibraries.Add(Path.Combine(LibraryPath, "libcef_dll_wrapper.a"));
  177. PrivateRuntimeLibraryPaths.Add(LibraryPath);
  178. foreach (string FileName in Directory.EnumerateFiles(LibraryPath, "*.so", SearchOption.TopDirectoryOnly))
  179. {
  180. if(FileName.EndsWith("libcef.so"))
  181. { //
  182. libcef_path = System.IO.Path.GetDirectoryName(FileName);
  183. PublicAdditionalLibraries.Add(FileName);
  184. }
  185. RuntimeDependencies.Add(FileName);
  186. }
  187. //
  188. string swiftshader = Path.Combine(LibraryPath, "swiftshader");
  189. if (Directory.Exists(swiftshader))
  190. foreach (string FileName in Directory.EnumerateFiles(swiftshader, "*.so", SearchOption.TopDirectoryOnly))
  191. {
  192. RuntimeDependencies.Add(FileName);
  193. }
  194. MakeStartScript(libcef_path);
  195. }
  196. void MakeStartScript(string libcef_path)
  197. {
  198. string project_name = Target.ProjectFile.GetFileNameWithoutExtension();
  199. string project_path = Target.ProjectFile.ToString().Replace(Target.ProjectFile.GetFileName(), "");
  200. libcef_path = libcef_path.Replace(project_path, "");
  201. libcef_path = Path.Combine("`pwd`", project_name, libcef_path).Replace("\\","/");
  202. string Architecture = "Linux";
  203. if (Target.Architecture.ToString() == "Arm64"){
  204. Architecture = "LinuxAArch64";
  205. }
  206. string run_script = "";
  207. run_script += "#!/bin/sh \n";
  208. run_script += "# Please copy this file to the packaging directory ,And cover. \n";
  209. run_script += "CEF_PATH=" + libcef_path + " \n";
  210. run_script += "chmod 775 $CEF_PATH/* \n";
  211. run_script += "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CEF_PATH \n";
  212. run_script += "THISCPU=$(uname -m) \n";
  213. run_script += "rm -rf $CEF_PATH/libvulkan.so.1 \n";
  214. run_script += "ln -s /usr/lib/${THISCPU}-linux-gnu/libvulkan.so.1 $CEF_PATH/libvulkan.so.1 \n";
  215. run_script += "UE_TRUE_SCRIPT_NAME=$(echo \\\"$0\\\" | xargs readlink -f) \n";
  216. run_script += "UE_PROJECT_ROOT=$(dirname \"$UE_TRUE_SCRIPT_NAME\")\n";
  217. run_script += "chmod +x \"$UE_PROJECT_ROOT/" + project_name + "/Binaries/"+ Architecture + "/" + project_name + "\" \n";
  218. run_script += "\"$UE_PROJECT_ROOT/" + project_name + "/Binaries/"+ Architecture + "/" + project_name + "\" WebViewDemo \"$@\" \n";
  219. string run_path = Target.ProjectFile.Directory.ToString();
  220. string run_file = Path.Combine(run_path, project_name + ".sh");
  221. if (File.Exists(run_file)) File.Delete(run_file);
  222. File.WriteAllText(run_file, run_script, Encoding.UTF8);
  223. File.SetAttributes(run_file, File.GetAttributes(run_file) | FileAttributes.System);
  224. }
  225. //void PrintConfig(string Module)
  226. //{
  227. // Console.WriteLine("===================" + Module + " Begin ===========================");
  228. // Console.WriteLine("Name=" + Target.Name);
  229. // //Console.WriteLine("File=" + Target.File);
  230. // //Console.WriteLine("TargetSourceFile=" + Target.TargetSourceFile);
  231. // Console.WriteLine("Platform=" + Target.Platform);
  232. // Console.WriteLine("Configuration=" + Target.Configuration);
  233. // Console.WriteLine("Architecture=" + Target.Architecture);
  234. // Console.WriteLine("ProjectFile=" + Target.ProjectFile);
  235. // Console.WriteLine("Version.MajorVersion=" + Target.Version.MajorVersion);
  236. // Console.WriteLine("Version.MinorVersion=" + Target.Version.MinorVersion);
  237. // Console.WriteLine("Version.PatchVersion=" + Target.Version.PatchVersion);
  238. // Console.WriteLine("Type=" + Target.Type);
  239. // Console.WriteLine("DefaultBuildSettings=" + Target.DefaultBuildSettings);
  240. // //Console.WriteLine("ConfigValueTracker=" + Target.ConfigValueTracker);
  241. // Console.WriteLine("bUsesSteam=" + Target.bUsesSteam);
  242. // Console.WriteLine("bUsesCEF3=" + Target.bUsesCEF3);
  243. // Console.WriteLine("bUsesSlate=" + Target.bUsesSlate);
  244. // Console.WriteLine("bUseStaticCRT=" + Target.bUseStaticCRT);
  245. // Console.WriteLine("bDebugBuildsActuallyUseDebugCRT=" + Target.bDebugBuildsActuallyUseDebugCRT);
  246. // Console.WriteLine("bLegalToDistributeBinary=" + Target.bLegalToDistributeBinary);
  247. // Console.WriteLine("UndecoratedConfiguration=" + Target.UndecoratedConfiguration);
  248. // Console.WriteLine("bAllowHotReload=" + Target.bAllowHotReload);
  249. // Console.WriteLine("bBuildAllModules=" + Target.bBuildAllModules);
  250. // //Console.WriteLine("bRuntimeDependenciesComeFromBuildPlugins=" + Target.bRuntimeDependenciesComeFromBuildPlugins);
  251. // Console.WriteLine("PakSigningKeysFile=" + Target.PakSigningKeysFile);
  252. // Console.WriteLine("SolutionDirectory=" + Target.SolutionDirectory);
  253. // //Console.WriteLine("CustomConfig=" + Target.CustomConfig);
  254. // Console.WriteLine("bBuildInSolutionByDefault=" + Target.bBuildInSolutionByDefault);
  255. // Console.WriteLine("ExeBinariesSubFolder=" + Target.ExeBinariesSubFolder);
  256. // Console.WriteLine("GeneratedCodeVersion=" + Target.GeneratedCodeVersion);
  257. // Console.WriteLine("bEnableMeshEditor=" + Target.bEnableMeshEditor);
  258. // //Console.WriteLine("bUseVerse=" + Target.bUseVerse);
  259. // //Console.WriteLine("bCompileChaos=" + Target.bCompileChaos);
  260. // //Console.WriteLine("bUseChaos=" + Target.bUseChaos);
  261. // Console.WriteLine("bUseChaosMemoryTracking=" + Target.bUseChaosMemoryTracking);
  262. // Console.WriteLine("bUseChaosChecked=" + Target.bUseChaosChecked);
  263. // //Console.WriteLine("bCustomSceneQueryStructure=" + Target.bCustomSceneQueryStructure);
  264. // //Console.WriteLine("bCompilePhysX=" + Target.bCompilePhysX);
  265. // //Console.WriteLine("bCompileAPEX=" + Target.bCompileAPEX);
  266. // //Console.WriteLine("bCompileNvCloth=" + Target.bCompileNvCloth);
  267. // Console.WriteLine("bCompileICU=" + Target.bCompileICU);
  268. // Console.WriteLine("bCompileCEF3=" + Target.bCompileCEF3);
  269. // Console.WriteLine("bCompileISPC=" + Target.bCompileISPC);
  270. // //Console.WriteLine("bCompilePython=" + Target.bCompilePython);
  271. // Console.WriteLine("bUseChaosChecked=" + Target.bUseChaosChecked);
  272. // Console.WriteLine("bBuildEditor=" + Target.bBuildEditor);
  273. // Console.WriteLine("bBuildRequiresCookedData=" + Target.bBuildRequiresCookedData);
  274. // Console.WriteLine("bBuildWithEditorOnlyData=" + Target.bBuildWithEditorOnlyData);
  275. // Console.WriteLine("bBuildDeveloperTools=" + Target.bBuildDeveloperTools);
  276. // //Console.WriteLine("bBuildTargetDeveloperTools=" + Target.bBuildTargetDeveloperTools);
  277. // Console.WriteLine("bForceBuildTargetPlatforms=" + Target.bForceBuildTargetPlatforms);
  278. // Console.WriteLine("bForceBuildShaderFormats=" + Target.bForceBuildShaderFormats);
  279. // Console.WriteLine("bCompileCustomSQLitePlatform=" + Target.bCompileCustomSQLitePlatform);
  280. // Console.WriteLine("bUseCacheFreedOSAllocs=" + Target.bUseCacheFreedOSAllocs);
  281. // Console.WriteLine("bCompileAgainstEngine=" + Target.bCompileAgainstEngine);
  282. // Console.WriteLine("bCompileAgainstCoreUObject=" + Target.bCompileAgainstCoreUObject);
  283. // Console.WriteLine("bCompileAgainstApplicationCore=" + Target.bCompileAgainstApplicationCore);
  284. // Console.WriteLine("bCompileRecast=" + Target.bCompileRecast);
  285. // Console.WriteLine("bCompileNavmeshSegmentLinks=" + Target.bCompileNavmeshSegmentLinks);
  286. // Console.WriteLine("bCompileNavmeshClusterLinks=" + Target.bCompileNavmeshClusterLinks);
  287. // Console.WriteLine("bCompileSpeedTree=" + Target.bCompileSpeedTree);
  288. // Console.WriteLine("bForceEnableExceptions=" + Target.bForceEnableExceptions);
  289. // Console.WriteLine("bForceEnableObjCExceptions=" + Target.bForceEnableObjCExceptions);
  290. // Console.WriteLine("bForceEnableRTTI=" + Target.bForceEnableRTTI);
  291. // Console.WriteLine("bUseInlining=" + Target.bUseInlining);
  292. // Console.WriteLine("bWithServerCode=" + Target.bWithServerCode);
  293. // Console.WriteLine("bWithPushModel=" + Target.bWithPushModel);
  294. // Console.WriteLine("bCompileWithStatsWithoutEngine=" + Target.bCompileWithStatsWithoutEngine);
  295. // Console.WriteLine("bCompileWithPluginSupport=" + Target.bCompileWithPluginSupport);
  296. // Console.WriteLine("bIncludePluginsForTargetPlatforms=" + Target.bIncludePluginsForTargetPlatforms);
  297. // Console.WriteLine("bCompileWithAccessibilitySupport=" + Target.bCompileWithAccessibilitySupport);
  298. // Console.WriteLine("bWithPerfCounters=" + Target.bWithPerfCounters);
  299. // Console.WriteLine("bWithLiveCoding=" + Target.bWithLiveCoding);
  300. // Console.WriteLine("bUseDebugLiveCodingConsole=" + Target.bUseDebugLiveCodingConsole);
  301. // Console.WriteLine("bWithDirectXMath=" + Target.bWithDirectXMath);
  302. // Console.WriteLine("bUseLoggingInShipping=" + Target.bUseLoggingInShipping);
  303. // Console.WriteLine("bLoggingToMemoryEnabled=" + Target.bLoggingToMemoryEnabled);
  304. // Console.WriteLine("bUseLauncherChecks=" + Target.bUseLauncherChecks);
  305. // Console.WriteLine("bUseChecksInShipping=" + Target.bUseChecksInShipping);
  306. // Console.WriteLine("bUseEstimatedUtcNow=" + Target.bUseEstimatedUtcNow);
  307. // Console.WriteLine("bCompileFreeType=" + Target.bCompileFreeType);
  308. // //Console.WriteLine("bCompileForSize=" + Target.bCompileForSize);
  309. // //Console.WriteLine("bRetainFramePointers=" + Target.bRetainFramePointers);
  310. // Console.WriteLine("bForceCompileDevelopmentAutomationTests=" + Target.bForceCompileDevelopmentAutomationTests);
  311. // Console.WriteLine("bForceCompilePerformanceAutomationTests=" + Target.bForceCompilePerformanceAutomationTests);
  312. // //Console.WriteLine("bForceDisableAutomationTests=" + Target.bForceDisableAutomationTests);
  313. // Console.WriteLine("bUseXGEController=" + Target.bUseXGEController);
  314. // Console.WriteLine("bEventDrivenLoader=" + Target.bEventDrivenLoader);
  315. // //Console.WriteLine("NativePointerMemberBehaviorOverride=" + Target.NativePointerMemberBehaviorOverride);
  316. // Console.WriteLine("bIWYU=" + Target.bIWYU);
  317. // Console.WriteLine("bEnforceIWYU=" + Target.bEnforceIWYU);
  318. // Console.WriteLine("bHasExports=" + Target.bHasExports);
  319. // Console.WriteLine("bPrecompile=" + Target.bPrecompile);
  320. // Console.WriteLine("bEnableOSX109Support=" + Target.bEnableOSX109Support);
  321. // Console.WriteLine("bIsBuildingConsoleApplication=" + Target.bIsBuildingConsoleApplication);
  322. // Console.WriteLine("bBuildAdditionalConsoleApp=" + Target.bBuildAdditionalConsoleApp);
  323. // Console.WriteLine("bDisableSymbolCache=" + Target.bDisableSymbolCache);
  324. // Console.WriteLine("bUseUnityBuild=" + Target.bUseUnityBuild);
  325. // Console.WriteLine("bAdaptiveUnityDisablesOptimizations=" + Target.bAdaptiveUnityDisablesOptimizations);
  326. // Console.WriteLine("bAdaptiveUnityDisablesPCH=" + Target.bAdaptiveUnityDisablesPCH);
  327. // Console.WriteLine("bAdaptiveUnityDisablesPCHForProject=" + Target.bAdaptiveUnityDisablesPCHForProject);
  328. // Console.WriteLine("bAdaptiveUnityCreatesDedicatedPCH=" + Target.bAdaptiveUnityCreatesDedicatedPCH);
  329. // Console.WriteLine("bAdaptiveUnityEnablesEditAndContinue=" + Target.bAdaptiveUnityEnablesEditAndContinue);
  330. // //Console.WriteLine("bAdaptiveUnityCompilesHeaderFiles=" + Target.bAdaptiveUnityCompilesHeaderFiles);
  331. // Console.WriteLine("MinGameModuleSourceFilesForUnityBuild=" + Target.MinGameModuleSourceFilesForUnityBuild);
  332. // //Console.WriteLine("DefaultWarningLevel=" + Target.DefaultWarningLevel);
  333. // //Console.WriteLine("DeprecationWarningLevel=" + Target.DeprecationWarningLevel);
  334. // Console.WriteLine("ShadowVariableWarningLevel=" + Target.ShadowVariableWarningLevel);
  335. // Console.WriteLine("UnsafeTypeCastWarningLevel=" + Target.UnsafeTypeCastWarningLevel);
  336. // Console.WriteLine("bUndefinedIdentifierErrors=" + Target.bUndefinedIdentifierErrors);
  337. // //Console.WriteLine("bWarningsAsErrors=" + Target.bWarningsAsErrors);
  338. // Console.WriteLine("bUseFastMonoCalls=" + Target.bUseFastMonoCalls);
  339. // Console.WriteLine("NumIncludedBytesPerUnityCPP=" + Target.NumIncludedBytesPerUnityCPP);
  340. // Console.WriteLine("bStressTestUnity=" + Target.bStressTestUnity);
  341. // Console.WriteLine("bDisableDebugInfo=" + Target.bDisableDebugInfo);
  342. // Console.WriteLine("bDisableDebugInfoForGeneratedCode=" + Target.bDisableDebugInfoForGeneratedCode);
  343. // Console.WriteLine("bOmitPCDebugInfoInDevelopment=" + Target.bOmitPCDebugInfoInDevelopment);
  344. // Console.WriteLine("bUsePDBFiles=" + Target.bUsePDBFiles);
  345. // Console.WriteLine("bUsePCHFiles=" + Target.bUsePCHFiles);
  346. // Console.WriteLine("bPreprocessOnly=" + Target.bPreprocessOnly);
  347. // Console.WriteLine("MinFilesUsingPrecompiledHeader=" + Target.MinFilesUsingPrecompiledHeader);
  348. // Console.WriteLine("bForcePrecompiledHeaderForGameModules=" + Target.bForcePrecompiledHeaderForGameModules);
  349. // Console.WriteLine("bUseIncrementalLinking=" + Target.bUseIncrementalLinking);
  350. // Console.WriteLine("bAllowLTCG=" + Target.bAllowLTCG);
  351. // //Console.WriteLine("bPreferThinLTO=" + Target.bPreferThinLTO);
  352. // Console.WriteLine("bPGOProfile=" + Target.bPGOProfile);
  353. // Console.WriteLine("bPGOOptimize=" + Target.bPGOOptimize);
  354. // Console.WriteLine("bSupportEditAndContinue=" + Target.bSupportEditAndContinue);
  355. // Console.WriteLine("bOmitFramePointers=" + Target.bOmitFramePointers);
  356. // //Console.WriteLine("bEnableCppModules=" + Target.bEnableCppModules);
  357. // //Console.WriteLine("bEnableCppCoroutinesForEvaluation=" + Target.bEnableCppCoroutinesForEvaluation);
  358. // //Console.WriteLine("bUseMallocProfiler=" + Target.bUseMallocProfiler);
  359. // Console.WriteLine("bUseSharedPCHs=" + Target.bUseSharedPCHs);
  360. // Console.WriteLine("bUseShippingPhysXLibraries=" + Target.bUseShippingPhysXLibraries);
  361. // Console.WriteLine("bCheckLicenseViolations=" + Target.bCheckLicenseViolations);
  362. // Console.WriteLine("bBreakBuildOnLicenseViolation=" + Target.bBreakBuildOnLicenseViolation);
  363. // Console.WriteLine("bUseFastPDBLinking=" + Target.bUseFastPDBLinking);
  364. // Console.WriteLine("bCreateMapFile=" + Target.bCreateMapFile);
  365. // Console.WriteLine("bAllowRuntimeSymbolFiles=" + Target.bAllowRuntimeSymbolFiles);
  366. // Console.WriteLine("BundleVersion=" + Target.BundleVersion);
  367. // Console.WriteLine("bDeployAfterCompile=" + Target.bDeployAfterCompile);
  368. // Console.WriteLine("bAllowRemotelyCompiledPCHs=" + Target.bAllowRemotelyCompiledPCHs);
  369. // Console.WriteLine("bCheckSystemHeadersForModification=" + Target.bCheckSystemHeadersForModification);
  370. // Console.WriteLine("bDisableLinking=" + Target.bDisableLinking);
  371. // Console.WriteLine("bFormalBuild=" + Target.bFormalBuild);
  372. // Console.WriteLine("bUseAdaptiveUnityBuild=" + Target.bUseAdaptiveUnityBuild);
  373. // Console.WriteLine("bFlushBuildDirOnRemoteMac=" + Target.bFlushBuildDirOnRemoteMac);
  374. // Console.WriteLine("bPrintToolChainTimingInfo=" + Target.bPrintToolChainTimingInfo);
  375. // Console.WriteLine("bParseTimingInfoForTracing=" + Target.bParseTimingInfoForTracing);
  376. // Console.WriteLine("bPublicSymbolsByDefault=" + Target.bPublicSymbolsByDefault);
  377. // Console.WriteLine("ToolChainName=" + Target.ToolChainName);
  378. // Console.WriteLine("bLegacyPublicIncludePaths=" + Target.bLegacyPublicIncludePaths);
  379. // Console.WriteLine("CppStandard=" + Target.CppStandard);
  380. // //Console.WriteLine("bNoManifestChanges=" + Target.bNoManifestChanges);
  381. // Console.WriteLine("BuildVersion=" + Target.BuildVersion);
  382. // Console.WriteLine("LinkType=" + Target.LinkType);
  383. // Console.WriteLine("LaunchModuleName=" + Target.LaunchModuleName);
  384. // Console.WriteLine("ExportPublicHeader=" + Target.ExportPublicHeader);
  385. // Console.WriteLine("BuildEnvironment=" + Target.BuildEnvironment);
  386. // Console.WriteLine("bOverrideBuildEnvironment=" + Target.bOverrideBuildEnvironment);
  387. // Console.WriteLine("AdditionalCompilerArguments=" + Target.AdditionalCompilerArguments);
  388. // Console.WriteLine("AdditionalLinkerArguments=" + Target.AdditionalLinkerArguments);
  389. // //Console.WriteLine("MemoryPerActionGB=" + Target.MemoryPerActionGB);
  390. // Console.WriteLine("GeneratedProjectName=" + Target.GeneratedProjectName);
  391. // Console.WriteLine("AndroidPlatform=" + Target.AndroidPlatform);
  392. // Console.WriteLine("LinuxPlatform=" + Target.LinuxPlatform);
  393. // Console.WriteLine("IOSPlatform=" + Target.IOSPlatform);
  394. // Console.WriteLine("MacPlatform=" + Target.MacPlatform);
  395. // Console.WriteLine("WindowsPlatform=" + Target.WindowsPlatform);
  396. // //Console.WriteLine("HoloLensPlatform=" + Target.HoloLensPlatform);
  397. // Console.WriteLine("bShouldCompileAsDLL=" + Target.bShouldCompileAsDLL);
  398. // Console.WriteLine("bGenerateProjectFiles=" + Target.bGenerateProjectFiles);
  399. // Console.WriteLine("bIsEngineInstalled=" + Target.bIsEngineInstalled);
  400. // Console.WriteLine("RelativeEnginePath=" + Target.RelativeEnginePath);
  401. // Console.WriteLine("UEThirdPartySourceDirectory=" + Target.UEThirdPartySourceDirectory);
  402. // Console.WriteLine("UEThirdPartyBinariesDirectory=" + Target.UEThirdPartyBinariesDirectory);
  403. // //Console.WriteLine("IsInPlatformGroup=" + Target.IsInPlatformGroup);
  404. // //Console.WriteLine("IsPlatformOptedIn=" + Target.IsPlatformOptedIn);
  405. // Console.WriteLine("===================" + Module + " End ===========================");
  406. //}
  407. }