Permalink
Switch branches/tags
Commits on Mar 14, 2011
  1. Avoid calling class cctors during JITting when the same class needs i…

    …nitialization more than once during a method. Fixes #679467.
    vargaz committed Mar 14, 2011
Commits on Mar 11, 2011
  1. [xbuild] Microsoft.Common.targets - import Before/After targets files.

    With this, Microsoft.Common.targets will import
    $(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\$(MSBuildThisFile)\ImportBefore\*
    at the beginning of the file and
    $(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\$(MSBuildThisFile)\ImportAfter\*
    at the end of the file.
    
    So, this would import all files from (eg.):
    $prefix/lib/mono/xbuild/4.0/Microsoft.Common.targets/ImportBefore/
    
    This can be disabled by setting the bool properties -
    $(ImportByWildcardBeforeMicrosoftCommonTargets) and
    $(ImportByWildcardAfterMicrosoftCommonTargets).
    radical committed Mar 11, 2011
  2. [xbuild] Emit list of projects in the .sln.proj

    Emit list of projects in the solution as @(ProjectReference) items
    in the generated .sln.proj file. This would be useful for extending
    solution builds.
    radical committed Mar 11, 2011
  3. [xbuild] Set ProjectFile and TargetName metadata on target outputs.

    Set "MSBuildProjectFile" and "MSBuildTargetName" metadata on target outputs.
    radical committed Mar 11, 2011
  4. [xbuild] Handle unknown exceptions.

    Re-throw any unknown exceptions.
    * Project.cs: Log the exception, doing it here also, so that direct
    project.Build(..) call failures also get logged.
    * Engine.cs: Log the unknown exception only if the build is running.
    This allows for the case when Project.Build caught it and ended the
    build.
    radical committed Mar 11, 2011
  5. [xbuild] Fix test on windows.

    AssignTargetPathTest.TestLink : Fix test on windows
    radical committed Mar 9, 2011
  6. [xbuild] Clean up test logs.

    Remove unnecessary debug spew for tests that pass.
    radical committed Mar 9, 2011
Commits on Mar 10, 2011
  1. Fix the previous change.

    vargaz committed Mar 10, 2011
  2. Mark threads created when calling from native code into the runtime a…

    …s background threads. Fixes #678164.
    vargaz committed Mar 9, 2011
Commits on Mar 8, 2011
  1. [xbuild] Implement FileLogger . Fix #676650 .

    * FileLogger.cs: Implement
    
    Add corresponding command line args for file loggers.
    Update man page.
    radical committed Mar 8, 2011
  2. [xbuild] LogExtensions.LogError - disambiguate.

    * LogExtensions.cs(LogError): Rename the 'filename' overload to ..
    (LogErrorWithFilename): .. this.
    * Engine.cs: Track api changes.
    radical committed Mar 3, 2011
  3. [xbuild] Add missing api for Target.

    * Target.cs (Outputs): Add new public property by this name. And rename
    old one to ..
    (OutputsAsITaskItems): .. this.
    radical committed Mar 3, 2011
  4. [xbuild] Add hooks for extending .sln builds.

    Add hooks in the .sln.proj generated from .sln files.
    
    1. It imports
       "$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportBefore\*"
       and
       "$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\SolutionFile\ImportAfter\*"
       This is done only in case of 4.0 projects, as imports with wildcard
       is a 4.0 feature.
    
    2. And it imports before.Foo.sln.targets and after.Foo.sln.targets from
       the same dir as the .sln file.
    radical committed Mar 3, 2011
  5. [xbuild] Add support for wildcards in Import.

    With 4.0 profile, <Import ..> can have wildcards. This works correctly
    with our multiple MSBuildExtensionsPath also.
    
    If the import references $(MSBuildExtensionsPath) property, then the
    each extension path is used to resolve the import, and the search
    stop as soon as an import is found.
    
    If such an import uses wildcard, then the search stops at the
    extension path in which *atleast one* file got imported.
    And the import fails if any invalid project file is encountered.
    
    This commit also heavily refactors the Import code to simplify
    in the face of the new features, and improves error detection
    and reporting.
    
    ImportTest.cs: Add test for wildcards.
    radical committed Mar 3, 2011
  6. [xbuild] ImportedProject - remove unnecessary catch/throw

    Remove the catch { throw; }, this truncated the stack also.
    radical committed Mar 3, 2011
  7. [xbuild] Add support for Before/AfterTargets.

    A target 'foo' can have BeforeTargets or AfterTargets attributes,
    which list the targets before or after, 'foo' should be run.
    This is a 4.0 feature.
    
    * Project.cs (ProcessBeforeAndAfterTargets): New.
    * Target.cs: Run the before/after targets in the correct order.
    
    * TargetTest.cs (TestBeforeAndAfterTargets): New.
    radical committed Mar 1, 2011
  8. [xbuild] Fix warnings.

    radical committed Mar 1, 2011
  9. [xbuild] Fix assembly name comparison when resolving references.

    AssemblyResolver.cs (AssemblyNamesCompatible): If either of the
    references don't have a public key token, then ignore that.
    radical committed Mar 1, 2011
  10. [xbuild] Exec task - add support for custom error/warning regex.

    Add 4.0 api, CustomErrorRegularExpression and
    CustomWarningRegularExpression.
    radical committed Mar 1, 2011
Commits on Mar 7, 2011
Commits on Mar 1, 2011