66 lines
No EOL
1.7 KiB
C#
66 lines
No EOL
1.7 KiB
C#
// Copyright (c) .NET Foundation and contributors. All rights reserved.
|
|
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using NuGet.Frameworks;
|
|
|
|
namespace Microsoft.DotNet.ProjectModel
|
|
{
|
|
public class RuntimeOutputFiles : CompilationOutputFiles
|
|
{
|
|
public RuntimeOutputFiles(string basePath,
|
|
Project project,
|
|
string configuration,
|
|
NuGetFramework framework) : base(basePath, project, configuration, framework)
|
|
{
|
|
}
|
|
|
|
public string Executable
|
|
{
|
|
get
|
|
{
|
|
var extension = FileNameSuffixes.CurrentPlatform.Exe;
|
|
|
|
// This is the check for mono, if we're not on windows and producing outputs for
|
|
// the desktop framework then it's an exe
|
|
if (Framework.IsDesktop())
|
|
{
|
|
extension = FileNameSuffixes.DotNet.Exe;
|
|
}
|
|
return Path.Combine(BasePath, Project.Name + extension);
|
|
}
|
|
}
|
|
|
|
public string Deps
|
|
{
|
|
get
|
|
{
|
|
return Path.ChangeExtension(Assembly, FileNameSuffixes.Deps);
|
|
}
|
|
}
|
|
|
|
public string Config
|
|
{
|
|
get { return Assembly + ".config"; }
|
|
}
|
|
|
|
public override IEnumerable<string> All()
|
|
{
|
|
foreach (var file in base.All())
|
|
{
|
|
yield return file;
|
|
}
|
|
|
|
if (File.Exists(Config))
|
|
{
|
|
yield return Config;
|
|
}
|
|
|
|
if (File.Exists(Deps))
|
|
{
|
|
yield return Deps;
|
|
}
|
|
}
|
|
}
|
|
} |