Sharpmake.Generators/FastBuild/Bff.cs (13 lines): - line 194: NonCLR = 4 // TODO: remove this - line 229: string projectBffFile = Bff.GetBffFileName(projectPath, firstConf.BffFileName); // TODO: bff file name could be different per conf, hence we would generate more than one file - line 307: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 1238: clangPlatformBff?.SetupClangOptions(bffGenerator); // TODO: This checks twice if the platform supports Clang -- fix? - line 1288: clangPlatformBff?.SetupClangOptions(bffGenerator); // TODO: This checks twice if the platform supports Clang -- fix? - line 1307: // TODO: Add BFF generation for Win64 on Windows/Mac/Linux? - line 1388: clangPlatformBff?.SetupClangOptions(bffGenerator); // TODO: This checks twice if the platform supports Clang -- fix? - line 1800: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 1842: // TODO: this is not great, ideally we would need the prefix to be per "compiler", and a platform can have many - line 1919: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 2026: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 2064: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 2109: // LCTODO: this might be broken, clarify the rules for which this is supposed to work Sharpmake.Generators/VisualStudio/Vcxproj.cs (6 lines): - line 431: // TODO: find a way to make it work - line 640: // TODO: make a better check - line 1117: using (projectFilesWriter.Declare("private", FileGeneratorUtilities.RemoveLineTag)) // TODO: check the conditions for a reference to be private - line 2072: // TODO: 1. .props files are not considered (and they must be put at the beginning of vcxproj) - line 2073: // TODO: 2. other than build/ and build/native folder, irregular paths to .targets and .props files could not be access correctly - line 2163: // TODO: remove packages.config file if existed ? Sharpmake.Generators/Generic/Makefile.cs (5 lines): - line 12: // TODO: Pre and post build commands. - line 13: // TODO: Precompiled header support. - line 14: // TODO: Dynamic library support. - line 24: // TODO: Yet another ProjectFile! Would be a good idea to move this into a common class. - line 36: FileName = Project.GetCapitalizedFile(fileName) ?? fileName; // LC TODO can it really return null ??? Sharpmake.Platforms/Sharpmake.CommonPlatforms/Apple/BaseApplePlatform.cs (4 lines): - line 20: , IPlatformVcxproj // TODO: this is really sad, nuke it - line 47: public bool IsPcPlatform => false; // LCTODO: ditch since it's obsolete - line 1389: // TODO: implement me - line 1576: // TODO: Refactor this. Sharpmake.Generators/VisualStudio/Csproj.cs (4 lines): - line 1486: // FIXME : MsBuild does not seem to properly detect ReferenceOutputAssembly setting. - line 1750: /// TODO: remove this and use instead. Note should be migrated to - line 1919: string filePath = Util.PathGetAbsolute(_projectPath, f); // LCTODO: taking the full path is too broad, and can vary depending on the location of the codebase! it needs to be fixed - line 2738: //TODO Give some kind of additional TT directive to specify the build action directly? Sharpmake.Generators/Generic/JsonCompilationDatabase.cs (4 lines): - line 265: // TODO: really not ideal, refactor and move the properties we need from it someplace else - line 285: // TODO: move back up, just below the creation of the dirs list - line 302: // TODO: this is not great, ideally we would need the prefix to be per "compiler", and a platform can have many - line 348: // TODO: Consider sub-configurations (file specific) Sharpmake.Generators/Apple/XCodeProj.cs (4 lines): - line 494: //TODO: add support for multiple targets with the same outputtype. Would need a mechanism to define a default configuration per target and associate it with non-default conf with different optimization. - line 1158: libraryPaths.AddRange(platformVcxproj.GetLibraryPaths(context)); // LCTODO: not sure about that one - line 1357: // TODO those transformations should probably be made during PrepareSections() - line 1540: // TODO: really not ideal, refactor and move the properties we need from it someplace else Sharpmake/Project.Configuration.cs (3 lines): - line 2519: // TODO: Deprecate this and create a SharedLibraryExtension property instead. - line 2875: // TODO : Is it OK to comment this or is it a hack ? - line 3065: if (value < 0) //LCTODO remove when the deprecated dependency settings are removed Sharpmake/Project.cs (2 lines): - line 61: public string SharpmakeCsProjectPath => SharpmakeCsPath; // TODO LC: check what is expected - line 574: filesListToUpdate.Add(simplifiedPath); // TODO: remove from sourceFilesRelative if match Sharpmake.Generators/VisualStudio/IPlatformVcxproj.cs (2 lines): - line 93: void GenerateProjectConfigurationGeneral2(IVcxprojGenerationContext context, IFileGenerator generator); // TODO: Merge with the above function and edit the reference projects. - line 103: // TODO: Refactor this. Sharpmake/Solution.cs (2 lines): - line 329: // TODO: Slow LINQ? May be better to create this list as part of GetRecursiveDependencies - line 600: // TODO: We should do something to detect and avoid any circular references that this project can now theoretically create. Sharpmake.Generators/VisualStudio/Sln.cs (2 lines): - line 119: // TODO: We should keep the GUIDS generated by sharpmake to avoid reading vcxproj files! - line 412: // TODO: What happens if we define an existing folder? Sharpmake.Generators/FastBuild/IPlatformBff.cs (1 line): - line 10: // TODO: Streamline this with the Vcxproj interfaces. There is no reason why BFF and VCXPROJ Sharpmake/Configurable.cs (1 line): - line 244: // SMARTLINE TODO: Should be method line Sharpmake/PlatformRegistry.cs (1 line): - line 168: // TODO: Check if the attribute is given to different types and throw an Sharpmake/IWindowsFastBuildCompilerSettings.cs (1 line): - line 50: // TODO: It looks like this belongs to Sharpmake.Generators. Sharpmake.Platforms/Sharpmake.CommonPlatforms/BasePlatform.cs (1 line): - line 29: // TODO: EnvironmentVariableResolver is not an actual environment variable resolver, Sharpmake/CommandLine.cs (1 line): - line 277: // LC TODO : simplify this Sharpmake.Generators/FastBuild/MasterBff.cs (1 line): - line 851: continue; // Only keep used projects in filter mode. TODO: Make this cleaner. Sharpmake/ExtensionMethods.cs (1 line): - line 300: // TODO: Replace Tuple with ValueTuple once we support C# 8 because ValueTuple is Sharpmake/Util.cs (1 line): - line 1729: // TODO: This method should be deprecated and/or removed. Sharpmake.FunctionalTests/FastBuildFunctionalTest/FastBuildFunctionalTest.sharpmake.cs (1 line): - line 352: // FIXME: the following line exposes a bug, since the filename ends with the precomp name... Sharpmake.Generators/CompilerSettings.cs (1 line): - line 12: public Platform PlatformFlags { get; set; } // TODO: Remove the public setter. Sharpmake/Options.Android.cs (1 line): - line 10: public static class Android // TODO: move this to the CommonPlatforms module Sharpmake.Generators/VisualStudio/ProjectOptionsGenerator.cs (1 line): - line 1882: if (!context.DevelopmentEnvironment.IsVisualStudio()) // TODO: ideally this option generator should be split between VS / non-VS Sharpmake/Target.cs (1 line): - line 751: // TODO: check if only one bit flag value