Date: Monday, December 23, 2019 @ 16:19:23 Author: anthraxx Revision: 372161
initial msbuild wip version Added: msbuild/ msbuild/repos/ msbuild/trunk/ msbuild/trunk/PKGBUILD msbuild/trunk/case_sensitive_dotnetbits.patch msbuild/trunk/copy_hostfxr.patch msbuild/trunk/fix_bashisms.patch msbuild/trunk/license_check_is_case_sensitive.diff --------------------------------------+ PKGBUILD | 57 ++++++++++++++++++++++++++++++++ case_sensitive_dotnetbits.patch | 23 +++++++++++++ copy_hostfxr.patch | 11 ++++++ fix_bashisms.patch | 42 +++++++++++++++++++++++ license_check_is_case_sensitive.diff | 58 +++++++++++++++++++++++++++++++++ 5 files changed, 191 insertions(+) Added: msbuild/trunk/PKGBUILD =================================================================== --- msbuild/trunk/PKGBUILD (rev 0) +++ msbuild/trunk/PKGBUILD 2019-12-23 16:19:23 UTC (rev 372161) @@ -0,0 +1,57 @@ +# Maintainer: Florian Maunier <[email protected]> +# Contributor: jtmb <packaging at technologicalwizardry dot com> + +pkgname=msbuild +pkgver=16.4+xamarinxplat.2019.09.09.15.03 +pkgrel=2 +pkgdesc="Xamarin implementation of the Microsoft build system" +url="https://github.com/mono/msbuild" +arch=('x86_64') +license=('MIT') +depends=('mono>=6.4.0') +makedepends=('unzip' 'dotnet-host>=3.0.0' 'dotnet-sdk>=3.0.0') +source=(https://download.mono-project.com/sources/msbuild/msbuild-${pkgver}.tar.xz + copy_hostfxr.patch + fix_bashisms.patch + license_check_is_case_sensitive.diff + case_sensitive_dotnetbits.patch) +sha256sums=('84c2e6021c43ba9dacc530d3d1bd6ed38e4f6b088a5e014f0ac4225843895d28' + '041f536fbe5a36ba5bf7164460f07bd2becf4ecf2935594bf92676198b7becc2' + 'a13ecb4125c673372d87a3b7d957fc8716a3c3e74cd08e9e354b5dcf170ed453' + '3a12a9c33ad5938e8af24d2985241053602f4efc94a4818a00a17da32ce4aba5' + 'aaa827b13abfb150572915d3daaa6b7140a7b4c12cda48aa76fed0f830a8bee1') + +prepare() { + cd ${pkgname}-${pkgver%+*} + patch -Np1 < "${srcdir}/fix_bashisms.patch" + patch -Np1 < "${srcdir}/copy_hostfxr.patch" + patch -Np1 < "${srcdir}/case_sensitive_dotnetbits.patch" + #patch --forward --strip=1 --input="${srcdir}/license_check_is_case_sensitive.diff" + # dotnet RepositoryValidation requires lowercased + ln -sf LICENSE license +} + +build() { + cd ${pkgname}-${pkgver%+*} + DOTNET_MSBUILD_SDK_RESOLVER_CLI_DIR=/usr/share/dotnet \ + ./eng/cibuild_bootstrapped_msbuild.sh \ + --host_type mono \ + --configuration Release \ + --skip_tests /p:DisableNerdbankVersioning=true + + ./stage1/mono-msbuild/msbuild mono/build/install.proj \ + /p:MonoInstallPrefix="$srcdir/target/usr" \ + /p:Configuration=Release-MONO \ + /p:IgnoreDiffFailure=true + + sed "s|${srcdir}/target||g" -i "$srcdir/target/usr/bin/msbuild" + #find "$srcdir/target/usr/lib/mono/" -name Microsoft.DiaSymReader.Native.*dll -delete + #find "$srcdir/target/usr/lib/mono/" -name *.dylib -delete + #find "$srcdir/target/usr/lib/mono/" -name *.so -delete +} + +package_msbuild() { + cd ${pkgname}-${pkgver%+*} + cp -dr --no-preserve=ownership "$srcdir/target/usr" "${pkgdir}" + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" +} Added: msbuild/trunk/case_sensitive_dotnetbits.patch =================================================================== --- msbuild/trunk/case_sensitive_dotnetbits.patch (rev 0) +++ msbuild/trunk/case_sensitive_dotnetbits.patch 2019-12-23 16:19:23 UTC (rev 372161) @@ -0,0 +1,23 @@ +Index: xamarin-pkg-msbuild/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj +=================================================================== +--- xamarin-pkg-msbuild.orig/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj ++++ xamarin-pkg-msbuild/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj +@@ -1,6 +1,6 @@ + <Project> + <Import Project="$(MSBuildThisFileDirectory)\..\common.props" /> +- <Import Project="$(MSBuildThisFileDirectory)\..\DotnetBitsVersions.props" /> ++ <Import Project="$(MSBuildThisFileDirectory)\..\DotNetBitsVersions.props" /> + + <PropertyGroup> + <HostOSName Condition="'$(HostOSName)' == ''">osx</HostOSName> +Index: xamarin-pkg-msbuild/mono/build/update_bundled_bits.proj +=================================================================== +--- xamarin-pkg-msbuild.orig/mono/build/update_bundled_bits.proj ++++ xamarin-pkg-msbuild/mono/build/update_bundled_bits.proj +@@ -1,5 +1,5 @@ + <Project DefaultTargets="FetchAndUpdateSdksAndNuGets"> +- <Import Project="$(MSBuildThisFileDirectory)\DotnetBitsVersions.props" /> ++ <Import Project="$(MSBuildThisFileDirectory)\DotNetBitsVersions.props" /> + + <Target Name="Build" DependsOnTargets="FetchAndUpdateSdksAndNuGets" /> + Added: msbuild/trunk/copy_hostfxr.patch =================================================================== --- msbuild/trunk/copy_hostfxr.patch (rev 0) +++ msbuild/trunk/copy_hostfxr.patch 2019-12-23 16:19:23 UTC (rev 372161) @@ -0,0 +1,11 @@ +Index: xamarin-pkg-msbuild/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj +=================================================================== +--- xamarin-pkg-msbuild.orig/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj ++++ xamarin-pkg-msbuild/mono/build/sdks_and_nugets/update_sdks_and_nugets.proj +@@ -63,6 +63,5 @@ + Targets="Restore;Build" + Properties="OutputDirectory=$(DotNetOverlayDirectory)\nuget-support\msbuild-bin"/> + +- <Exec Command="$(MSBuildThisFileDirectory)/../extract_and_copy_hostfxr.sh $(DotNetSdkVersionForLibHostFxr) $(MSBuildSdkResolverOutDir)" /> + </Target> + </Project> Added: msbuild/trunk/fix_bashisms.patch =================================================================== --- msbuild/trunk/fix_bashisms.patch (rev 0) +++ msbuild/trunk/fix_bashisms.patch 2019-12-23 16:19:23 UTC (rev 372161) @@ -0,0 +1,42 @@ +Index: xamarin-pkg-msbuild/gen_build_info.sh +=================================================================== +--- xamarin-pkg-msbuild.orig/gen_build_info.sh ++++ xamarin-pkg-msbuild/gen_build_info.sh +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + + if [ $# -ne 1 ]; then + echo "Usage: $0 <filename.cs>" +Index: xamarin-pkg-msbuild/mono/create_bootstrap.sh +=================================================================== +--- xamarin-pkg-msbuild.orig/mono/create_bootstrap.sh ++++ xamarin-pkg-msbuild/mono/create_bootstrap.sh +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + + # This creates a bootstrap from an exising mono installation + # This is just to ensure that we have the correct "matched" Roslyn +Index: xamarin-pkg-msbuild/msbuild-deploy.in +=================================================================== +--- xamarin-pkg-msbuild.orig/msbuild-deploy.in ++++ xamarin-pkg-msbuild/msbuild-deploy.in +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + ABSOLUTE_PATH=$(cd `dirname "${BASH_SOURCE[0]}"` && pwd)/`basename "${BASH_SOURCE[0]}"` + MSBUILD_SRC_DIR=`dirname $ABSOLUTE_PATH` + mono $MONO_OPTIONS $MSBUILD_SRC_DIR/MSBuild.exe $* +Index: xamarin-pkg-msbuild/eng/cibuild_bootstrapped_msbuild.sh +=================================================================== +--- xamarin-pkg-msbuild.orig/eng/cibuild_bootstrapped_msbuild.sh ++++ xamarin-pkg-msbuild/eng/cibuild_bootstrapped_msbuild.sh +@@ -56,6 +56,7 @@ function DownloadMSBuildForMono { + unzip -q "$msbuild_zip" -d "$artifacts_dir" + # rename just to make it obvious when reading logs! + mv $artifacts_dir/msbuild $mono_msbuild_dir ++ sed -i 's#/sh$#/bash#' $artifacts_dir/mono-msbuild/msbuild + chmod +x $artifacts_dir/mono-msbuild/MSBuild.dll + rm "$msbuild_zip" + fi Added: msbuild/trunk/license_check_is_case_sensitive.diff =================================================================== --- msbuild/trunk/license_check_is_case_sensitive.diff (rev 0) +++ msbuild/trunk/license_check_is_case_sensitive.diff 2019-12-23 16:19:23 UTC (rev 372161) @@ -0,0 +1,58 @@ +Index: xamarin-pkg-msbuild/LICENSE +=================================================================== +--- xamarin-pkg-msbuild.orig/LICENSE ++++ /dev/null +@@ -1,24 +0,0 @@ +-The MIT License (MIT) +- +-Copyright (c) .NET Foundation and contributors +- +-All rights reserved. +- +-Permission is hereby granted, free of charge, to any person obtaining a copy +-of this software and associated documentation files (the "Software"), to deal +-in the Software without restriction, including without limitation the rights +-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +-copies of the Software, and to permit persons to whom the Software is +-furnished to do so, subject to the following conditions: +- +-The above copyright notice and this permission notice shall be included in all +-copies or substantial portions of the Software. +- +-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +-SOFTWARE. +- +Index: xamarin-pkg-msbuild/license +=================================================================== +--- /dev/null ++++ xamarin-pkg-msbuild/license +@@ -0,0 +1,24 @@ ++The MIT License (MIT) ++ ++Copyright (c) .NET Foundation and contributors ++ ++All rights reserved. ++ ++Permission is hereby granted, free of charge, to any person obtaining a copy ++of this software and associated documentation files (the "Software"), to deal ++in the Software without restriction, including without limitation the rights ++to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++copies of the Software, and to permit persons to whom the Software is ++furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in all ++copies or substantial portions of the Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++SOFTWARE. ++
