Sharpmake.Platforms/Sharpmake.CommonPlatforms/Apple/BaseApplePlatform.Bff.Template.cs (74 lines of code) (raw):

// Copyright (c) Ubisoft. All Rights Reserved. // Licensed under the Apache 2.0 License. See LICENSE.md in the project root for license information. namespace Sharpmake { public abstract partial class BaseApplePlatform { private const string _linkerOptionsTemplate = @" .LinkerOptions = '-o ""%2"" ""%1""[outputTypeArgument]' // Library Search Path // --------------------------- + ' [cmdLineOptions.SysLibRoot]' + ' [cmdLineOptions.AdditionalLibraryDirectories]' // Libraries // --------------------------- + ' [cmdLineOptions.AdditionalDependencies]' // SystemFrameworks, DeveloperFrameworks, UserFrameworks and FrameworkPaths // ----------------------------------------------------------------------------- + ' [cmdLineOptions.SystemFrameworks]' + ' [cmdLineOptions.DeveloperFrameworks]' + ' [cmdLineOptions.UserFrameworks]' + ' [cmdLineOptions.EmbeddedFrameworks]' + ' [cmdLineOptions.LinkerSystemFrameworkPaths]' + ' [cmdLineOptions.LinkerFrameworkPaths]' // Options //-------- + ' [cmdLineOptions.DeploymentTarget]' + ' [cmdLineOptions.GenerateMapFile]' + ' [cmdLineOptions.DeadCodeStripping]' // Additional linker options //-------------------------- + ' [options.AdditionalLinkerOptions]' + ' [cmdLineOptions.DyLibInstallName]' "; private const string _compilerExtraOptionsGeneral = @" .CompilerExtraOptions = '' // General options // ------------------------- + ' [cmdLineOptions.GenerateDebuggingSymbols]' + ' [cmdLineOptions.AdditionalIncludeDirectories]' + ' [cmdLineOptions.AdditionalUsingDirectories]' + ' [cmdLineOptions.PreprocessorDefinitions]' + ' [cmdLineOptions.StdLib]' + ' [cmdLineOptions.SDKRoot]' + ' [cmdLineOptions.DeploymentTarget]' + ' [cmdLineOptions.CppLanguageStd]' + ' [cmdLineOptions.CLanguageStd]' + ' [cmdLineOptions.WarningReturnType]' + ' [cmdLineOptions.RuntimeTypeInfo]' + ' [cmdLineOptions.ClangEnableObjC_ARC]' + ' [cmdLineOptions.ClangEnableObjC_Weak]' + ' [cmdLineOptions.CppExceptions]' + ' [cmdLineOptions.ObjCExceptions]' + ' [cmdLineOptions.ObjCARCExceptions]' + ' [cmdLineOptions.DisableExceptions]' + ' [cmdLineOptions.PrivateInlines]' "; private const string _compilerExtraOptionsAdditional = @" // Additional compiler options //-------------------------- + ' [options.AdditionalCompilerOptions]' // FrameworkPaths // ---------------------------------------------------------------------------- + ' [cmdLineOptions.CompilerSystemFrameworkPaths]' + ' [cmdLineOptions.CompilerFrameworkPaths]' "; private const string _compilerOptimizationOptions = @" // Optimizations options // --------------------- .CompilerOptimizations = '' + ' [cmdLineOptions.OptimizationLevel]' + ' [options.AdditionalCompilerOptimizeOptions]' "; private const string _swiftCompilerExtraOptionsGeneral = @" .CompilerExtraOptions = '' // General options // ------------------------- + ' -parse-as-library' + ' -module-name [cmdLineOptions.SwiftModuleName]' + ' [cmdLineOptions.SwiftLanguageVersion]' + ' [cmdLineOptions.SwiftAdditionalIncludeDirectories]' + ' [cmdLineOptions.SwiftDeploymentTarget]' + ' -Xcc [cmdLineOptions.RuntimeTypeInfo]' + ' -Xcc [cmdLineOptions.CppExceptions]' + ' -Xcc [cmdLineOptions.ObjCExceptions]' + ' -Xcc [cmdLineOptions.ObjCARCExceptions]' + ' -Xcc [cmdLineOptions.DisableExceptions]' "; private const string _swiftCompilerExtraOptionsAdditional = @" // Additional compiler options //-------------------------- + ' [cmdLineOptions.SwiftAdditionalCompilerOptions]' "; private const string _swiftCompilerOptimizationOptions = @" // Optimizations options // --------------------- .CompilerOptimizations = '' + ' [cmdLineOptions.SwiftOptimizationLevel]' + ' [cmdLineOptions.GenerateDebuggingSymbols]' "; } }