Граф коммитов

34 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 1f9096c8e9
Add the minimum system mono version for running Xamarin.Mac apps using system mono to Versions.plist. (#5281) 2018-12-18 07:48:19 +01:00
Rolf Bjarne Kvinge c69c74b3d3
Clone files if possible whenever it makes sense. (#5049)
Cloning is faster when supported, and it also saves disk space.
2018-10-29 16:09:30 +01:00
Sebastien Pouliot e73b1a981e
[mac] Fix logic to include branch name in packages. Fixes #4990 (#4991)
so it can be reported inside VSM.

The logic was not updated (for XM) with the simpler one we can use
on the internal Jenkins bots.

ref: https://github.com/xamarin/xamarin-macios/issues/4990
2018-10-16 13:57:25 -04:00
Rolf Bjarne Kvinge 2b3ef0e183 Try to make version numbers clearer, and establish some ground rules. (#4927) 2018-10-04 13:49:26 -04:00
Rolf Bjarne Kvinge dbe1051da4
Add support for building on Jenkins. (#4159)
Add support for building on internal Jenkins.

Jenkins has been configured to build every branch on xamarin/xamarin-macios that contains a `jenkins/Jenkinsfile`, which means it will start working as soon as this PR is merged.

Results will be posted as statuses on each commit, which can be viewed using the url `https://github.com/xamarin/xamarin-macios/commits/<branch>`:

![screenshot 2018-06-01 11 12 57](https://user-images.githubusercontent.com/249268/40832932-c3b05eb0-658c-11e8-9670-8de5fcc23407.png)

* The `continuous-integration/jenkins/branch` status links to the jenkins job.
* The other two are XI and XM packages (the `Jenkins-` prefix will be removed once we officially switch from Wrench to Jenkins).

More detailed information will be added as a comment to each commit, which can be seen by clicking on the commit and scrolling to the bottom (url of the format `https://github.com/xamarin/xamarin-macios/commit/<sha1>`)

![screenshot 2018-06-01 11 14 33](https://user-images.githubusercontent.com/249268/40833014-fd8772f4-658c-11e8-8a35-5df46bfb16c7.png)

Unfortunately GitHub does not display the commit statuses when viewing a single commit, so to view those statuses you'll have to view the list of commits (the `/commits/` url). Tip: it's possible to use `<sha1>` instead of `<branch>` (and vice versa for that matter) if you're interested in the statuses of a particular commit.

Pull requests will also be built (only from contributors with write access), but by default nothing will be done (the job will exit immediately, although a green check mark will still show up). Jenkins will **not** add a comment in the pull request in this case.

However, if the label `build-package` [1] is set for a pull request, the internal jenkins job will run (it will do everything except the local xharness test run: this includes creating and publishing packages, creating various diffs, run tests on older macOS versions, test docs, etc). A detailed comment will also be added to the pull request (see below for multiple examples), which means that there will be two Jenkins comments: one for the public Jenkins which builds every PR, and one for the internal Jenkins [2].

[1] I don't quite like the name of the label, because it doesn't get even close to explain all that will actually happen, but `run-on-internal-jenkins-and-create-package` is a bit too long IMHO... Also it's non-obvious that this is the label to apply if the reason for executing on the internal jenkins is some other reason (for instance to test a maccore bump). Other ideas:

* `run-internal-jenkins`: doesn't make it obvious that a package will be created (which is probably the most common reason to want to run on internal jenkins)
* We could have multiple labels that mean the same thing: `build-package`, `internal-build`, `run-internal-jenkins`, etc, but it's redundant and I don't quite like it either.
* Any other ideas?

[2] I'm noticing now that these two look quite similar and this might end up confusing (the main difference is that the comment from the public jenkins will say **Build success/failure** and **Build comment file:** at the top. If something goes wrong the failure will also show up differently). Should this be made clearer?
2018-06-04 19:40:16 -04:00
Rolf Bjarne Kvinge 70c11c919e
Add a few makefile dependencies to make sure directories exist. (#3986) 2018-04-26 12:25:22 +02:00
Rolf Bjarne Kvinge 34af7112b5
Put a binary copy of mlaunch in macios-binaries instead of in Azure. Fixes #3316. (#3877)
* Put a binary copy of mlaunch in macios-binaries instead of in Azure. Fixes #3316.

If the Xamarin build is enabled, then build mlaunch from source, otherwise get it from macios-binaries.

Fixes #3316.

* Bump macios-binaries.

Commit list for xamarin/macios-binaries:

* xamarin/macios-binaries@69a9088 Bump mlaunch to xamarin/maccore@4505cd6f02 (#8)

Diff: e1e8bdf7a8...69a90882a0

* make msbuild/ after tools/.

Build msbuild/ after tools/, so that mlaunch builds when building from source,
since its build needs the MSBuild logic installed by msbuild/.

* Bump macios-binaries to get Xcode 9.3-capable mlaunch.
2018-04-10 09:53:11 +02:00
Rolf Bjarne Kvinge 6dc755c342
Include the mono version in Versions.plist. (#3003) 2017-11-14 19:40:11 +01:00
Joseph Stroman 49fa0ca724 Merge pull request #2567 from joewstroman/vsts-sys-deps
[VSTS] Adding --no-sudo option in system-dependencies.sh

This PR also brings in the package step from the release-scripts makefile. This allows all the build tasks and scripts to be self-contained in one repo.
2017-08-30 14:38:50 -04:00
Joseph Stroman de498d4853 Add package task to make file and add no-sudo options to provision script 2017-08-29 17:33:43 -04:00
Chris Hamons f8e841fe07 Fix install-system to work with mac or ios disabled (#2469) 2017-08-10 07:21:39 +02:00
Rolf Bjarne Kvinge a4214e9c95 [build] Fix dependencies for various files to rebuild more intelligently when needed. (#2094)
* [src] Rebuild Constants.cs when Make.config.inc changes.

Also unify the makefile targets/dependencies for the various Constants.cs recipes.

* [build] Fix dependencies for various installed files.

Some auto-generated installed files with version numbers must depend on
Make.config.inc, since that's where the revision number is stored.

Make.config.inc depends on Makefile, so there's no need to depend on Makefile
as well.

* [build] Fix build error.
2017-05-15 20:13:02 -04:00
Rolf Bjarne Kvinge fa8224cab0 Automatically reset dependencies after cleaning everything. (#1944)
mono-extensions is deleted when cleaning everything, but executing 'make
reset' will put it back again.
2017-03-30 18:00:32 +02:00
Rolf Bjarne Kvinge 76fadce1a3 Validate file permissions of installed files. (#1607)
Validate file permissions of installed files, so that we don't run into
bug #52113 again.

https://bugzilla.xamarin.com/show_bug.cgi?id=52113
2017-02-01 14:30:29 +01:00
Vincent Dondain 445877c159 [Versions-ios.plist] watchOS started at 1.0 (#1328)
- The WatchKit App on a watchOS 1 project has a version of 1.0 (the IDE needs that).
- We still have a watchOS 1 template.
- Use MIN_WATCH_OS_VERSION instead of MIN_WATCHOS_SDK_VERSION.
- iOS com.apple.watchkit is 8.2 not 8.0
- Added watchOS com.apple.watchkit (2.0).
- Fixed typo in versions-check.csharp.
2016-12-13 10:52:58 +01:00
Rolf Bjarne Kvinge 3a771eaf09 Add and ship file that lists the SDK versions XI/XM supports. (#1162)
* Add and ship file that lists the SDK versions XI supports.

Add and ship a file that lists the SDK versions of the various SDKs XI supports.

Also list the minimum SDK version for each extension.

And add a script that verifies that the current SDK version is in this file,
which should ensure every SDK version bump ends up in the file.

* [mtouch] Remove generated file from source control.

* [SdkVersions] Remove versions not in master yet.

* [SdkVersions] Improve detection script to verify that versions are between min and max, and that both min and max are in the list.

* Move things around a bit and add macOS support.

* Update Versions-mac.plist.in with extension info
2016-11-22 14:41:50 +01:00
Rolf Bjarne Kvinge 6bad337c29 [msbuild] Improve 'install-system' to clean up existing files before installing new ones. (#984)
This makes it more future-proof, if we want to change directories to symlinks.
2016-10-13 14:11:48 +02:00
Rolf Bjarne Kvinge c4b5fa5f44 [msbuild] Remove support for XI/Classic. (#976)
* [msbuild] Remove unused FrameworkList.xmls

* [msbuild] Make files in /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/msbuild/iOS the real deal, not a symlink.

* [msbuild] Make /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS a symlink, instead of each file inside.

* [msbuild] Don't put anything in /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/2.1 anymore.

* [msbuild] Remove support for XI/Classic binding projects.

* Improve 'install-system' to clean up old files.

* [msbuild] Simplify XI/Classic targets files a bit.

* [msbuild] Remove dead XI/Classic code.

* Bump maccore to get fix for xamarin-analysis.

commit xamarin/maccore@34c04c2bf1
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date:   Mon Oct 10 16:46:18 2016 +0200

    [analysis] Update to put files in /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS.

    XI/Classic is being removed now, which means files should go into
    /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/msbuild/iOS/ instead of into
    /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/lib/mono/2.1.
2016-10-13 10:47:46 +02:00
Rolf Bjarne Kvinge f694955e5b Add makefile target to clean everything. (#942) 2016-10-04 18:42:57 +02:00
Rolf Bjarne Kvinge d28f42babd Only recurse into tests once everything else is done. (#136) 2016-06-06 17:13:52 +02:00
Rolf Bjarne Kvinge dbf28e763c Recurse into the tests directory. (#104) 2016-06-06 14:13:07 +02:00
Vincent Dondain f9261710a3 [Makefile] Call maccore install-symlinks (#126)
* [Makefile] Call maccore install-symlinks

* Update reference to maccore
2016-06-04 12:46:52 +02:00
Rolf Bjarne Kvinge 76f417a007 Make sure to install msbuild symlinks properly. (#109)
This line got lost somewhere when migrating to the xamarin-macios repo.
2016-06-01 08:51:22 -04:00
Rolf Bjarne Kvinge 24870304ba Add an optional dependency on xamarin-specific build logic. 2016-04-24 14:48:45 -04:00
Rolf Bjarne Kvinge 68df944ad6 Build MSBuild targets & assemblies. 2016-04-24 14:48:44 -04:00
Rolf Bjarne Kvinge 82ab3fc106 Build mmp. 2016-04-24 14:47:26 -04:00
Rolf Bjarne Kvinge 5830166c63 Build the platform assemblies. 2016-04-24 14:47:26 -04:00
Rolf Bjarne Kvinge ac418df815 Build our runtime. 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge acf75cd75c Build F#. 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge 014e09d6c7 Add makefile target to build everything (make world). 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge 566c8b1d98 Add a script / makefile target to verify the system and any required dependencies. 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge acc6a7e02f Create required symlinks and directories when installing. 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge 9ea0738c48 Add our mono runtimes to the build. 2016-04-24 14:47:24 -04:00
Rolf Bjarne Kvinge 39ef301279 Add build system. 2016-04-21 19:11:24 +02:00