4 class MSBuild (GitHubPackage):
7 GitHubPackage.__init__(self, 'mono', 'msbuild', '15.0',
8 git_branch='xplat-master')
11 self.sh('./cibuild.sh --scope Compile --target Mono --host Mono')
14 # adjusted from 'install-mono-prefix.sh'
16 build_output = 'bin/Debug-MONO/OSX_Deployment'
17 new_location = os.path.join(
19 'lib/mono/msbuild/%s/bin' %
21 bindir = os.path.join(self.staged_prefix, 'bin')
23 os.makedirs(new_location)
24 self.sh('cp -R %s/* %s' % (build_output, new_location))
28 self.sh('cp msbuild-mono-deploy.in %s/msbuild' % bindir)
30 xbuild_dir = os.path.join(self.staged_prefix, 'lib/mono/xbuild')
31 new_xbuild_tv_dir = os.path.join(xbuild_dir, self.version)
32 os.makedirs(new_xbuild_tv_dir)
34 self.sh('mv %s/Microsoft.Common.props %s' %
35 (new_location, new_xbuild_tv_dir))
36 self.sh('cp -R nuget-support/tv/ %s' % new_xbuild_tv_dir)
37 self.sh('cp -R nuget-support/tasks-targets/ %s/' % xbuild_dir)
38 for dep in glob.glob("%s/Microsoft/NuGet/*" % xbuild_dir):
39 self.sh('ln -s %s %s' % (dep, xbuild_dir))
41 for line in fileinput.input('%s/msbuild' % bindir, inplace=True):
42 line = line.replace('@bindir@', '%s/bin' % self.staged_prefix)
49 patterns = ["*UnitTests*", "*xunit*", "NuGet*", "System.Runtime.InteropServices.RuntimeInformation.dll",
52 for pattern in patterns:
53 for excluded in glob.glob("%s/%s" % (new_location, pattern)):