62 lines
2.6 KiB
XML
62 lines
2.6 KiB
XML
<Project>
|
|
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory)..\, Directory.Build.targets))\Directory.Build.targets" />
|
|
|
|
<PropertyGroup>
|
|
<TargetPath>$(OutputPath)$(TargetFileName)</TargetPath>
|
|
<DebBuildDependsOn>
|
|
$(DebBuildDependsOn);
|
|
PrepareForBuild;
|
|
ResolveProjectReferences;
|
|
GetTargetPath;
|
|
</DebBuildDependsOn>
|
|
</PropertyGroup>
|
|
|
|
<Target Name="PrepareForBuild">
|
|
<MakeDir Directories="$(IntermediateOutputPath);$(OutputPath)" />
|
|
|
|
<Error Text="Currently only linux-x64 is supported by Debian installers." Condition=" '$(TargetRuntimeIdentifier)' != 'linux-x64' " />
|
|
<Error Text="Missing required property: PackageContentRoot" Condition=" '$(PackageContentRoot)' == '' " />
|
|
</Target>
|
|
|
|
<Target Name="GetTargetPath" Returns="$(TargetPath)" />
|
|
|
|
<Target Name="Build" DependsOnTargets="DebBuild" />
|
|
<Target Name="Pack" />
|
|
|
|
<Target Name="DebBuild" DependsOnTargets="$(DebBuildDependsOn)"
|
|
Condition="!( '$(IsTargetingPackBuilding)' == 'false' AND '$(MSBuildProjectName)' == 'Debian.TargetingPack' )">
|
|
<!-- Generate debian_config.json. We can't simply use WriteLinesToFile because of https://github.com/Microsoft/msbuild/issues/1622. Use our custom GenerateFileFromTemplate task instead -->
|
|
<PropertyGroup>
|
|
<DebianConfigProperties>
|
|
$(DebianConfigProperties);
|
|
AspNetCoreMajorVersion=$(AspNetCoreMajorVersion);
|
|
AspNetCoreMinorVersion=$(AspNetCoreMinorVersion);
|
|
Authors=$(Authors);
|
|
DebianPackageInstallRoot=$(DebianPackageInstallRoot);
|
|
MaintainerEmail=$(MaintainerEmail);
|
|
PackageId=$(PackageId);
|
|
PackageLicenseExpression=$(PackageLicenseExpression);
|
|
PackageProjectUrl=$(PackageProjectUrl);
|
|
PackageRevision=$(PackageRevision);
|
|
PackageVersion=$(DebPackageVersion);
|
|
PackageSummary=$(PackageSummary);
|
|
PackageDescription=$(PackageDescription);
|
|
</DebianConfigProperties>
|
|
</PropertyGroup>
|
|
|
|
<GenerateFileFromTemplate TemplateFile="debian_config.json.in"
|
|
Properties="$(DebianConfigProperties)"
|
|
OutputPath="$(IntermediateOutputPath)debian_config.json" />
|
|
|
|
<!-- Build SharedFx Bundle Deb package -->
|
|
|
|
<Exec Command="$(DebianBuildScript) -i '$(IntermediateOutputPath)' -o '$(IntermediateOutputPath)out/' -C '$(PackageContentRoot)'" />
|
|
|
|
<PropertyGroup>
|
|
<BuildScriptOutputFileName>$(PackageId)_$(DebPackageVersion)-$(PackageRevision)_$(DebianPackageArch).deb</BuildScriptOutputFileName>
|
|
</PropertyGroup>
|
|
|
|
<Copy SourceFiles="$(IntermediateOutputPath)out/$(BuildScriptOutputFileName)" DestinationFiles="$(TargetPath)" />
|
|
</Target>
|
|
</Project>
|