简体   繁体   English

Delphi的MSBuild项目级属性是什么?

[英]What are the MSBuild project level properties for Delphi?

The Delphi documentation for MSBuild says MSBuild的Delphi文档说

/property:name=value sets or overrides project-level properties, where name is the property name and value is the property value. / property:name = value设置或覆盖项目级属性,其中name是属性名称,value是属性值。 Use a semicolon or a comma to separate multiple properties, or specify each property separately. 使用分号或逗号分隔多个属性,或单独指定每个属性。 /p is also acceptable. / p也可以接受。 For example: 例如:

/property:WarningLevel=2;OutputDir=bin\\Debug /属性:WarningLevel = 2; OutputDir = BIN \\调试

I can't find a list of available properties, here's what I know so far: 我找不到可用属性的列表,这是我目前所知道的:

  • WarningLevel WarningLevel
  • OutputDir (dcc32 -e equivalent) OutputDir(dcc32 -e等效)
  • Config 配置

I'd like to get a complete list, but I'm most interested in being able to override the Defines (dcc32 -d equivalent). 我想得到一个完整的列表,但我最感兴趣的是能够覆盖Defines(dcc32 -d等价物)。 And if these can be lined up against dcc32 equivalents that'd be icing! 如果这些可以与dcc32相当,那将是锦上添花!

You can find most of the parameters in the msbuild script C:\\WINDOWS\\Microsoft.NET\\Framework\\v2.0.50727\\Borland.Delphi.Targets when you look at the CoreCompile target. 当您查看CoreCompile目标时,可以在msbuild脚本C:\\ WINDOWS \\ Microsoft.NET \\ Framework \\ v2.0.50727 \\ Borland.Delphi.Targets中找到大多数参数。

        ExeOutput="$(DCC_ExeOutput)"
        BplOutput="$(DCC_BplOutput)"
        DcuOutput="$(DCC_DcuOutput)"
        DcpOutput="$(DCC_DcpOutput)"
        HppOutput="$(DCC_HppOutput)"
        ObjOutput="$(DCC_ObjOutput)"
        BpiOutput="$(DCC_BpiOutput)"

        DependencyCheckOutputName = "$(DCC_DependencyCheckOutputName)"
        UnitSearchPath="$(UnitSearchPath)"
        ResourcePath="$(ResourcePath)"
        IncludePath="$(IncludePath)"
        ObjPath="$(_ObjectPath)"

        UnitAlias="$(DCC_UnitAlias)"
        ConsoleTarget="$(DCC_ConsoleTarget)"
        Define="$(DCC_Define)"
        FindError="$(DCC_FindError)"
        MapFile="$(DCC_MapFile)"
        Hints="$(DCC_Hints)"
        CBuilderOutput="$(DCC_CBuilderOutput)"
        BaseAddress="$(DCC_BaseAddress)"
        UsePackage="$(_UsePackage)"
        MakeModifiedUnits="$(DCC_MakeModifiedUnits)"
        BuildAllUnits="$(DCC_BuildAllUnits)"
        NameSpace="$(NameSpace)"
        OldDosFileNames="$(DCC_OldDosFileNames)"
        Quiet="$(DCC_Quiet)"
        DebugInfoInExe="$(DCC_DebugInfoInExe)"
        DebugVN="$(DCC_DebugVN)"
        RemoteDebug="$(DCC_RemoteDebug)"
        OutputNeverBuildDcps="$(DCC_OutputNeverBuildDcps)"
        NoConfig="true"
        OutputDRCFile="$(DCC_OutputDRCFile)"
        OutputDependencies="$(DCC_OutputDependencies)"
        OutputXMLDocumentation="$(DCC_OutputXMLDocumentation)"
        DefaultNamespace="$(DCC_DefaultNamespace)"
        Platform="$(DCC_Platform)"
        UnsafeCode="$(DCC_UnsafeCode)"
        Warnings="$(DCC_Warnings)"

        Alignment="$(DCC_Alignment)"
        MinimumEnumSize="$(DCC_MinimumEnumSize)"
        FullBooleanEvaluations="$(DCC_FullBooleanEvaluations)"
        AssertionsAtRuntime="$(DCC_AssertionsAtRuntime)"
        DebugInformation="$(DCC_DebugInformation)"
        ImportedDataReferences="$(DCC_ImportedDataReferences)"
        LongStrings="$(DCC_LongStrings)"
        IOChecking="$(DCC_IOChecking)"
        WriteableConstants="$(DCC_WriteableConstants)"
        LocalDebugSymbols="$(DCC_LocalDebugSymbols)"
        RunTimeTypeInfo="$(DCC_RunTimeTypeInfo)"
        Optimize="$(DCC_Optimize)"
        OpenStringParams="$(DCC_OpenStringParams)"
        IntegerOverflowCheck="$(DCC_IntegerOverflowCheck)"
        RangeChecking="$(DCC_RangeChecking)"
        TypedAtParameter="$(DCC_TypedAtParameter)"
        PentiumSafeDivide="$(DCC_PentiumSafeDivide)"
        StrictVarStrings="$(DCC_StrictVarStrings)"
        GenerateStackFrames="$(DCC_GenerateStackFrames)"
        ExtendedSyntax="$(DCC_ExtendedSyntax)"
        SymbolReferenceInfo="$(DCC_SymbolReferenceInfo)"

        StackSize="$(DCC_StackSize)"
        ImageBase="$(DCC_ImageBase)"
        Description="$(DCC_Description)"

        DelaySign="$(DCC_DelaySign)"
        KeyFile="$(DCC_KeyFile)"
        KeyContainer="$(DCC_KetContainer)"
        CodePage="$(DCC_CodePage)"

        SYMBOL_DEPRECATED="$(DCC_SYMBOL_DEPRECATED)"
        SYMBOL_LIBRARY="$(DCC_SYMBOL_LIBRARY)"
        SYMBOL_PLATFORM="$(DCC_SYMBOL_PLATFORM)"
        SYMBOL_EXPERIMENTAL="$(DCC_SYMBOL_EXPERIMENTAL)"
        UNIT_LIBRARY="$(DCC_UNIT_LIBRARY)"
        UNIT_PLATFORM="$(DCC_UNIT_PLATFORM)"
        UNIT_DEPRECATED="$(DCC_UNIT_DEPRECATED)"
        UNIT_EXPERIMENTAL="$(DCC_UNIT_EXPERIMENTAL)"
        HRESULT_COMPAT="$(DCC_HRESULT_COMPAT)"
        HIDING_MEMBER="$(DCC_HIDING_MEMBER)"
        HIDDEN_VIRTUAL="$(DCC_HIDDEN_VIRTUAL)"
        GARBAGE="$(DCC_GARBAGE)"
        BOUNDS_ERROR="$(DCC_BOUNDS_ERROR)"
        ZERO_NIL_COMPAT="$(DCC_ZERO_NIL_COMPAT)"
        STRING_CONST_TRUNCED="$(DCC_STRING_CONST_TRUNCED)"
        FOR_LOOP_VAR_VARPAR="$(DCC_FOR_LOOP_VAR_VARPAR)"
        TYPED_CONST_VARPAR="$(DCC_TYPED_CONST_VARPAR)"
        ASG_TO_TYPED_CONST="$(DCC_ASG_TO_TYPED_CONST)"
        CASE_LABEL_RANGE="$(DCC_CASE_LABEL_RANGE)"
        FOR_VARIABLE="$(DCC_FOR_VARIABLE)"
        CONSTRUCTING_ABSTRACT="$(DCC_CONSTRUCTING_ABSTRACT)"
        COMPARISON_FALSE="$(DCC_COMPARISON_FALSE)"
        COMPARISON_TRUE="$(DCC_COMPARISON_TRUE)"
        COMPARING_SIGNED_UNSIGNED="$(DCC_COMPARING_SIGNED_UNSIGNED)"
        COMBINING_SIGNED_UNSIGNED="$(DCC_COMBINING_SIGNED_UNSIGNED)"
        UNSUPPORTED_CONSTRUCT="$(DCC_UNSUPPORTED_CONSTRUCT)"
        FILE_OPEN="$(DCC_FILE_OPEN)"
        FILE_OPEN_UNITSRC="$(DCC_FILE_OPEN_UNITSRC)"
        BAD_GLOBAL_SYMBOL="$(DCC_BAD_GLOBAL_SYMBOL)"
        DUPLICATE_CTOR_DTOR="$(DCC_DUPLICATE_CTOR_DTOR)"
        INVALID_DIRECTIVE="$(DCC_INVALID_DIRECTIVE)"
        PACKAGE_NO_LINK="$(DCC_PACKAGE_NO_LINK)"
        PACKAGED_THREADVAR="$(DCC_PACKAGED_THREADVAR)"
        IMPLICIT_IMPORT="$(DCC_IMPLICIT_IMPORT)"
        HPPEMIT_IGNORED="$(DCC_HPPEMIT_IGNORED)"
        NO_RETVAL="$(DCC_NO_RETVAL)"
        USE_BEFORE_DEF="$(DCC_USE_BEFORE_DEF)"
        FOR_LOOP_VAR_UNDEF="$(DCC_FOR_LOOP_VAR_UNDEF)"
        UNIT_NAME_MISMATCH="$(DCC_UNIT_NAME_MISMATCH)"
        NO_CFG_FILE_FOUND="$(DCC_NO_CFG_FILE_FOUND)"
        IMPLICIT_VARIANTS="$(DCC_IMPLICIT_VARIANTS)"
        UNICODE_TO_LOCALE="$(DCC_UNICODE_TO_LOCALE)"
        LOCALE_TO_UNICODE="$(DCC_LOCALE_TO_UNICODE)"
        IMAGEBASE_MULTIPLE="$(DCC_IMAGEBASE_MULTIPLE)"
        SUSPICIOUS_TYPECAST="$(DCC_SUSPICIOUS_TYPECAST)"
        PRIVATE_PROPACCESSOR="$(DCC_PRIVATE_PROPACCESSOR)"
        UNSAFE_TYPE="$(DCC_UNSAFE_TYPE)"
        UNSAFE_CODE="$(DCC_UNSAFE_CODE)"
        UNSAFE_CAST="$(DCC_UNSAFE_CAST)"
        OPTION_TRUNCATED="$(DCC_OPTION_TRUNCATED)"
        WIDECHAR_REDUCED="$(DCC_WIDECHAR_REDUCED)"
        DUPLICATES_IGNORED="$(DCC_DUPLICATES_IGNORED)"
        UNIT_INIT_SEQ="$(DCC_UNIT_INIT_SEQ)"
        LOCAL_PINVOKE="$(DCC_LOCAL_PINVOKE)"
        MESSAGE_DIRECTIVE="$(DCC_MESSAGE_DIRECTIVE)"
        TYPEINFO_IMPLICITLY_ADDED="$(DCC_TYPEINFO_IMPLICITLY_ADDED)"
        XML_WHITESPACE_NOT_ALLOWED="$(DCC_XML_WHITESPACE_NOT_ALLOWED)"
        XML_UNKNOWN_ENTITY="$(DCC_XML_UNKNOWN_ENTITY)"
        XML_INVALID_NAME_START="$(DCC_XML_INVALID_NAME_START)"
        XML_INVALID_NAME="$(DCC_XML_INVALID_NAME)"
        XML_EXPECTED_CHARACTER="$(DCC_XML_EXPECTED_CHARACTER)"
        XML_CREF_NO_RESOLVE="$(DCC_XML_CREF_NO_RESOLVE)"
        XML_NO_PARM="$(DCC_XML_NO_PARM)"
        XML_NO_MATCHING_PARM="$(DCC_XML_NO_MATCHING_PARM)"

So to set the defines you could use the DCC_Define parameter like this: 因此,要设置定义,您可以使用DCC_Define参数,如下所示:

msbuild yourproject.dproj /p:DCC_Define=MY_DEFINE

Others you will find in the .dproj file of your project 您可以在项目的.dproj文件中找到其他文件

<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

So it is Configuration and not Config. 所以它是配置而不是配置。 At least in Delphi 2007. 至少在Delphi 2007中。

You might want to learn more about msbuild in general to understand the scripts better and learn how you could make your own msbuild scripts to drive a build machine. 您可能希望了解更多有关msbuild的信息,以便更好地理解脚本,并了解如何制作自己的msbuild脚本来驱动构建机器。

Disclaimer: This information is from a Delphi 2007 setup 免责声明:此信息来自Delphi 2007设置

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM