summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Maunier2019-04-17 15:22:43 +0200
committerFlorian Maunier2019-04-17 15:22:43 +0200
commite968d46b9d7066badaf86cd8b2de085ca0098be4 (patch)
treea1c7027b0d5872bae3f46367ab247268721b14b8
downloadaur-e968d46b9d7066badaf86cd8b2de085ca0098be4.tar.gz
Initial commit
-rw-r--r--.SRCINFO18
-rw-r--r--PKGBUILD28
-rw-r--r--fix-install.patch74
3 files changed, 120 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 00000000000..aab96f3e6ae
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,18 @@
+pkgbase = msbuild
+ pkgdesc = Xamarin implementation of the Microsoft build system
+ pkgver = 16.0+xamarinxplat.2019.04.08.19.19
+ pkgrel = 1
+ url = https://github.com/mono/msbuild
+ arch = x86_64
+ license = MIT
+ makedepends = libcurl-gnutls
+ depends = mono>=5.0.0
+ provides = msbuild
+ conflicts = msbuild
+ source = https://download.mono-project.com/sources/msbuild/msbuild-16.0+xamarinxplat.2019.04.08.19.19.tar.xz
+ source = fix-install.patch
+ sha256sums = 0d425603281ae84d3cf560ea4f9e2b2159e7764f71406035070a7fe27878ec49
+ sha256sums = 8780925e01d4e5bdf8f93c439fe92da7a64f14099b60382499b477a512b56dca
+
+pkgname = msbuild
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 00000000000..579fd9ee7fe
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,28 @@
+# Maintainer: Florian Maunier <fmauneko@dissidence.ovh>
+# Contributor: jtmb <packaging at technologicalwizardry dot com>
+pkgname=msbuild
+pkgver=16.0+xamarinxplat.2019.04.08.19.19
+pkgrel=1
+pkgdesc="Xamarin implementation of the Microsoft build system"
+arch=('x86_64')
+depends=('mono>=5.0.0')
+makedepends=('libcurl-gnutls')
+provides=('msbuild')
+conflicts=('msbuild')
+url="https://github.com/mono/msbuild"
+license=('MIT')
+source=("https://download.mono-project.com/sources/msbuild/msbuild-${pkgver}.tar.xz"
+ 'fix-install.patch')
+sha256sums=('0d425603281ae84d3cf560ea4f9e2b2159e7764f71406035070a7fe27878ec49'
+ '8780925e01d4e5bdf8f93c439fe92da7a64f14099b60382499b477a512b56dca')
+
+prepare() {
+ cd "${pkgname}-${pkgver%+*}"
+ patch --forward --strip=1 --input="${srcdir}/fix-install.patch"
+}
+
+package() {
+ cd "${pkgname}-${pkgver%+*}"
+ make
+ ./install-mono-prefix.sh "/usr" /p:StagingDir="${pkgdir}/usr" /p:TargetMSBuildToolsVersion="15.0"
+}
diff --git a/fix-install.patch b/fix-install.patch
new file mode 100644
index 00000000000..97cadf01199
--- /dev/null
+++ b/fix-install.patch
@@ -0,0 +1,74 @@
+diff --unified --recursive --text msbuild.orig/install-mono-prefix.sh msbuild.new/install-mono-prefix.sh
+--- msbuild.orig/install-mono-prefix.sh 2019-04-09 01:19:48.000000000 +0200
++++ msbuild.new/install-mono-prefix.sh 2019-04-17 14:25:43.891524294 +0200
+@@ -19,4 +19,4 @@
+ MONO_PREFIX=$1
+ shift
+
+-msbuild mono/build/install.proj /p:MonoInstallPrefix=$MONO_PREFIX /p:Configuration=$CONFIG "$@"
++artifacts/mono-msbuild/msbuild mono/build/install.proj /p:MonoInstallPrefix=$MONO_PREFIX /p:Configuration=$CONFIG "$@"
+diff --unified --recursive --text msbuild.orig/mono/build/install.proj msbuild.new/mono/build/install.proj
+--- msbuild.orig/mono/build/install.proj 2019-04-09 01:19:48.000000000 +0200
++++ msbuild.new/mono/build/install.proj 2019-04-17 15:08:05.452683170 +0200
+@@ -4,16 +4,17 @@
+
+ <Target Name="Install">
+ <Error Text="%24(MonoInstallPrefix) cannot be empty. Set with /p:MonoInstallPrefix=&lt;directory&gt;" Condition="'$(MonoInstallPrefix)' == ''" />
++ <Error Text="%24(StagingDir) cannot be empty. Set with /p:StagingDir=&lt;directory&gt;" Condition="'$(StagingDir)' == ''" />
+ <Error Text="%24(Configuration) cannot be empty. Set with /p:Configuration=&lt;Debug-MONO|Release-MONO&gt;" Condition="'$(Configuration)' == ''" />
+ <Error Text="%24(TargetMSBuildToolsVersion) cannot be empty." Condition="'$(TargetMSBuildToolsVersion)' == ''" />
+
+ <PropertyGroup>
+- <MSBuildInstallBinDir>$(MonoInstallPrefix)\lib\mono\msbuild\$(TargetMSBuildToolsVersion)\bin</MSBuildInstallBinDir>
++ <MSBuildInstallBinDir>$(StagingDir)\lib\mono\msbuild\$(TargetMSBuildToolsVersion)\bin</MSBuildInstallBinDir>
+
+ <!-- Roslyn still installs to 15.0 -->
+- <RoslynInstallBinDir>$(MonoInstallPrefix)\lib\mono\msbuild\15.0\bin\Roslyn</RoslynInstallBinDir>
++ <RoslynInstallBinDir>$(StagingDir)\lib\mono\msbuild\15.0\bin\Roslyn</RoslynInstallBinDir>
+
+- <XBuildDir>$(MonoInstallPrefix)\lib\mono\xbuild</XBuildDir>
++ <XBuildDir>$(StagingDir)\lib\mono\xbuild</XBuildDir>
+
+ <MSBuildBinSrcDir>$(RepoRoot)artifacts\2\bin\MSBuild.Bootstrap\$(Configuration)\net472\</MSBuildBinSrcDir>
+
+@@ -100,13 +101,13 @@
+
+ <Exec
+ WorkingDirectory="$(XBuildDir)"
+- Command="ln -sfh Current 15.0" />
++ Command="ln -sfn $(TargetMSBuildToolsVersion) Current" />
+ <Exec
+- WorkingDirectory="$(MonoInstallPrefix)\lib\mono\msbuild"
+- Command="ln -s Current 15.0" />
++ WorkingDirectory="$(StagingDir)\lib\mono\msbuild"
++ Command="ln -s $(TargetMSBuildToolsVersion) Current" />
+ <ItemGroup>
+- <CopiedFiles Include="$(MonoInstallPrefix)\bin\msbuild\15.0" />
+- <CopiedFiles Include="$(XBuildDir)\15.0" />
++ <CopiedFiles Include="$(StagingDir)\bin\msbuild\Current" />
++ <CopiedFiles Include="$(XBuildDir)\Current" />
+ </ItemGroup>
+
+ <Copy SourceFiles="@(MSBuildFiles)" DestinationFolder="$(MSBuildInstallBinDir)">
+@@ -157,17 +158,17 @@
+ <CopiedFiles Include="$(MSBuildInstallBinDir)\System.Reflection.Metadata.dll" />
+ </ItemGroup>
+
+- <Exec Command="$(RepoRoot)\mono\build\gen_msbuild_wrapper.sh $(MonoInstallPrefix) $(MonoInstallPrefix)\bin" />
++ <Exec Command="$(RepoRoot)\mono\build\gen_msbuild_wrapper.sh $(MonoInstallPrefix) $(StagingDir)\bin" />
+ <ItemGroup>
+- <CopiedFiles Include="$(MonoInstallPrefix)\bin\msbuild" />
++ <CopiedFiles Include="$(StagingDir)\bin\msbuild" />
+ </ItemGroup>
+
+- <Copy SourceFiles="$(RepoRoot)\mono\msbuild.1" DestinationFolder="$(MonoInstallPrefix)\share\man\man1">
++ <Copy SourceFiles="$(RepoRoot)\mono\msbuild.1" DestinationFolder="$(StagingDir)\share\man\man1">
+ <Output TaskParameter="CopiedFiles" ItemName="CopiedFiles" />
+ </Copy>
+
+ <ItemGroup>
+- <_CopiedFiles_Relative_Tmp Include="@(CopiedFiles -> '$([MSBuild]::MakeRelative('$(MonoInstallPrefix)', %(CopiedFiles.Identity)))' )" />
++ <_CopiedFiles_Relative_Tmp Include="@(CopiedFiles -> '$([MSBuild]::MakeRelative('$(StagingDir)', %(CopiedFiles.Identity)))' )" />
+ <CopiedFiles_Relative Include="@(_CopiedFiles_Relative_Tmp -> Distinct())" />
+ </ItemGroup>
+