public TrackedProject(string projName, bool isExtern, Project.Configuration.OutputType configOutputType) { ProjectString = projName; _isExtern = isExtern; _project = null; Configurations.Add(ProjectString, new TrackedConfiguration(this, configOutputType)); }
private void SetupExtraLinkerSettings(IFileGenerator fileGenerator, Project.Configuration.OutputType outputType) { using (fileGenerator.Resolver.NewScopedParameter("dllOption", outputType == Project.Configuration.OutputType.Dll ? " /DLL" : "")) { fileGenerator.Write(Bff.Template.ConfigurationFile.LinkerOptions); } }
public string GetOutputFileNamePrefix(Project.Configuration.OutputType outputType) { if (outputType != Project.Configuration.OutputType.Exe) { return("lib"); } return(string.Empty); }
public TrackedConfiguration(TrackedProject owningProject, Project.Configuration.OutputType configOutputType) { _nodeVisited = false; _owningProject = owningProject; _dependenciesTo = new SortedDictionary <TrackedConfiguration, Tuple <DependencyType, DependencySetting> >(); _config = null; _configOutputType = configOutputType; string cfgString = owningProject.ToString(); _configTypeName = cfgString.Substring(cfgString.IndexOf(':') + 1); }
public string GetOutputFileNamePrefix(Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.Dll: case Project.Configuration.OutputType.Lib: return("lib"); default: return(string.Empty); } }
// The below method was replaced by GetDefaultOutputFullExtension // string GetDefaultOutputExtension(OutputType outputType); public string GetDefaultOutputFullExtension(Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: return(ExecutableFileFullExtension); case Project.Configuration.OutputType.Dll: return(SharedLibraryFileFullExtension); default: return(StaticLibraryFileFullExtension); } }
public string GetDefaultOutputExtension(Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: return(string.Empty); case Project.Configuration.OutputType.Dll: return("so"); default: return("a"); } }
public string GetDefaultOutputExtension(Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.DotNetConsoleApp: case Project.Configuration.OutputType.DotNetWindowsApp: return(ExecutableFileExtension); case Project.Configuration.OutputType.Lib: case Project.Configuration.OutputType.Dll: case Project.Configuration.OutputType.DotNetClassLibrary: return(SharedLibraryFileExtension); case Project.Configuration.OutputType.None: return(string.Empty); default: throw new NotImplementedException("Please add extension for output type " + outputType); } }
public string GetDefaultOutputExtension(Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.DotNetConsoleApp: case Project.Configuration.OutputType.DotNetWindowsApp: return("exe"); case Project.Configuration.OutputType.Lib: return("lib"); case Project.Configuration.OutputType.Dll: case Project.Configuration.OutputType.DotNetClassLibrary: return("dll"); case Project.Configuration.OutputType.None: return(string.Empty); default: return(outputType.ToString().ToLower()); } }
public string GetDefaultOutputExtension(Project.Configuration.OutputType outputType) { switch (outputType) { // Using the Unix extensions since Darwin is a Unix implementation and the // executables Mac users interact with are actually bundles. If this causes // issues, see if using .app for executables and .dylib/.framework for // libraries work better. iOS is Darwin/Cocoa so assuming that the same goes // for it. case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.IosApp: case Project.Configuration.OutputType.IosTestBundle: return(string.Empty); case Project.Configuration.OutputType.Lib: return("a"); case Project.Configuration.OutputType.Dll: return("so"); // .NET remains the same on all platforms. (Mono loads .exe and .dll regardless // of platforms, and I assume the same about .NET Core.) case Project.Configuration.OutputType.DotNetConsoleApp: case Project.Configuration.OutputType.DotNetWindowsApp: return("exe"); case Project.Configuration.OutputType.DotNetClassLibrary: return("dll"); case Project.Configuration.OutputType.None: return(string.Empty); default: return(outputType.ToString().ToLower()); } }
public override void SetupExtraLinkerSettings(IFileGenerator fileGenerator, Project.Configuration.OutputType outputType, string fastBuildOutputFile) { base.SetupExtraLinkerSettings(fileGenerator, outputType, fastBuildOutputFile); }
// Ideally the object files should be suffixed .o when compiling with FastBuild, using the CompilerOutputExtension property in ObjectLists public override string GetOutputFileNamePrefix(IGenerationContext context, Project.Configuration.OutputType outputType) { if (outputType != Project.Configuration.OutputType.Exe) { return("lib"); } return(string.Empty); }
// CHEZ CHANGE begin: added GetOutputFileNamePrefix method. public override string GetOutputFileNamePrefix(IGenerationContext context, Project.Configuration.OutputType outputType) { switch (outputType) { case Project.Configuration.OutputType.Exe: return(string.Empty); case Project.Configuration.OutputType.Dll: return("lib"); default: return("lib"); } }
public virtual void SetupExtraLinkerSettings(IFileGenerator fileGenerator, Project.Configuration.OutputType outputType, string fastBuildOutputFile) { SetupExtraLinkerSettings(fileGenerator, outputType); }
public virtual string GetOutputFileNamePrefix(IGenerationContext context, Project.Configuration.OutputType outputType) { return(string.Empty); }
public virtual string GetOutputFilename(Project.Configuration.OutputType outputType, string fastBuildOutputFile) => fastBuildOutputFile;
public void WriteNodeDescription(System.IO.StreamWriter stream, bool writeExternNodes, bool verbose, string prefix) { bool isExternProject = IsExtern(); _nodeVisited = true; bool writeDescription = (isExternProject == writeExternNodes); if (writeDescription) { stream.Write("\t" + GetUniqueId() + "[label=<" + GetDisplayedName(verbose) + ">"); string shape; if (isExternProject) { shape = DependencyTracker.ShapeExtern; } else { switch (_configOutputType) { case Project.Configuration.OutputType.Exe: case Project.Configuration.OutputType.Dll: case Project.Configuration.OutputType.Lib: shape = DependencyTracker.ShapeProject; break; default: shape = DependencyTracker.ShapeUnknown; break; } } string color; Project.Configuration.OutputType outputType = Project.Configuration.OutputType.None; if (_configOutputType != Project.Configuration.OutputType.None) { outputType = _configOutputType; } else if (_config != null) { // output type might be defined in inherited target class (this is the case for some extern project). Try to find it through reflection. try { System.Type type = _config.Target.GetType(); System.Reflection.FieldInfo field = type.GetField("OutputType"); object fieldValue = field.GetValue(_config.Target); switch (fieldValue.ToString()) { case "Dll": outputType = Project.Configuration.OutputType.Dll; break; case "Lib": outputType = Project.Configuration.OutputType.Lib; break; case "Exe": outputType = Project.Configuration.OutputType.Exe; break; default: outputType = Project.Configuration.OutputType.None; break; } } catch { } } switch (outputType) { case Project.Configuration.OutputType.Exe: color = isExternProject ? DependencyTracker.ColorExternExe : DependencyTracker.ColorExe; break; case Project.Configuration.OutputType.Dll: color = isExternProject ? DependencyTracker.ColorExternDll : DependencyTracker.ColorDll; break; case Project.Configuration.OutputType.Lib: color = isExternProject ? DependencyTracker.ColorExternLib : DependencyTracker.ColorLib; break; default: color = DependencyTracker.ColorUnkownOutputType; break; } stream.WriteLine(" shape = " + shape + ", style=filled, fillcolor = " + color + ", fontsize=8, fontname=\"sans-serif\"]"); } foreach (var dep in _dependenciesTo) { if (!dep.Key.IsNodeVisited()) { dep.Key.WriteNodeDescription(stream, writeExternNodes, verbose, prefix + " "); } } }
public string GetOutputFileNamePrefix(Project.Configuration.OutputType outputType) { return(string.Empty); }