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

169 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 9e59425349
[xharness] Properly handle failure by mlaunch to wait for app exit. (#2946)
Detect MT1111 from mlaunch (which means mlaunch won't wait for the app to
exit), and instead use test run completion to determine test completion.

The main drawback is that if the test app crashes, it won't be detected (the
test run will time out, and reported as such), but it's still an improvement
over the current behavior (the tests may complete successfully, and still be
reported as timed out).

This also requires bumping maccore to get an updated mlaunch (one that reports
MT1111).
2017-11-02 12:46:18 +01:00
Vincent Dondain 01cb38a2a9 Bump maccore to get maciostools with unlock device warning code (#2920)
commit 287cbcf72d81e185f6d9d9534bcd558a718d8001 (HEAD -> master, upstream/master, upstream/HEAD)
Author: Vincent Dondain <vidondai@microsoft.com>
Date:   Wed Oct 25 11:33:11 2017 -0400

    Bump maciostools to get unlock device warning code

    commit af38985deb3dd4ce6f5cf33de921cea602e1e8e1 (HEAD -> master, origin/master, origin/HEAD)
    Author: Vincent Dondain <vidondai@microsoft.com>
    Date:   Fri Oct 20 14:36:18 2017 -0400

        [Xamarin.Hosting] Update '--wait-for-unlock' error message (#94)

        - Use same `1031` error code as in `controller-device.cs`'s `LaunchBundleIdOnDevice`.
        - Simplify message to not mention passcode as there are other ways to unlock a device.
        - This change is needed to show up the alert dialog in https://github.com/xamarin/md-addins/pull/2590.
2017-10-25 13:55:05 -04:00
Rolf Bjarne Kvinge a9f43837da Bump maccore to get better error reporting in mlaunch. (#2908)
commit xamarin/maccore@9b9dd1c752
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date:   Thu Oct 19 11:04:50 2017 +0200

    Bump maciostools to get better error reporting in mlaunch.

    commit xamarin/maciostools@4967539783
    Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
    Date:   Thu Oct 19 10:45:27 2017 +0200

        [Xamarin.Hosting] Be a bit more defensive with nulls when something goes wrong to try to get helpful error messages instead of NREs.
2017-10-19 12:24:15 +02:00
Rolf Bjarne Kvinge 07cffe2141 Bump maccore to get minor mlaunch fix for launch apps on device. (#2895) 2017-10-17 07:34:19 +02:00
Rolf Bjarne Kvinge 4a2dd86467 [xharness] Try to disable memory limits when running tests on device. (#2860)
This requires a maccore bump to get an updated mlaunch.
2017-10-10 11:02:24 +02:00
Rolf Bjarne Kvinge 38a680aba6 Bump maccore to get support for wireless devices in mlaunch, and publicize it. (#2826)
commit xamarin/maccore@a02bf81604
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date:   Mon Oct 2 14:32:13 2017 +0200

    Bump maciostools to get support for wireless devices in mlaunch.

    commit xamarin/maciostools@1d6be938cb
    Merge: 0d6932b 854cbc0
    Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
    Date:   Mon Oct 2 07:44:19 2017 +0200

        Merge pull request #91 from rolfbjarne/mlaunch-wireless-devices

        [mlaunch] Add support for wireless devices.
2017-10-02 17:26:47 +02:00
Rolf Bjarne Kvinge 90d0d978d9 Bump maccore to get fix for #59667. (#2770)
https://bugzilla.xamarin.com/show_bug.cgi?id=59667
2017-09-25 19:15:10 +02:00
Rolf Bjarne Kvinge e66bd67ab7 [xharness] Build with MSBuild. (#2752)
Time to embrace C# 7.
2017-09-22 18:05:11 +02:00
Manuel de la Pena 6f1bb9633e [Documentation] Bump API docs and maccore. Fixes #58447 and #59423. (#2737)
This bumps fix the following issues fixed in maccore:

* https://bugzilla.xamarin.com/show_bug.cgi?id=58447
* https://bugzilla.xamarin.com/show_bug.cgi?id=59423
2017-09-21 16:41:03 +02:00
Sebastien Pouliot 6eb5f1d384 [linker] Reuse the linker submodule from our mono checkout (#2729)
and avoid potential out-of-sync issues with mono (i.e. single bump)
and any other product doing the same.
2017-09-20 11:07:14 -04:00
Sebastien Pouliot 05eb96d0a7 Merge branch 'xcode9' into xcode9-master-merge 2017-09-15 11:05:30 -04:00
Manuel de la Pena bfaddd082d Bump maccore to point to commit with the docs fix. (#2703) 2017-09-15 00:05:45 -04:00
Sebastien Pouliot 45ff20e980 Bump maccore post 15.3 merge (#2665) 2017-09-12 15:43:38 -04:00
Rolf Bjarne Kvinge 9612b245b9 Bump maccore to get fix for bug #55064. (#2487) 2017-08-14 15:18:04 -04:00
Rolf Bjarne Kvinge 69ebb84d97 [tests] Add makefile target to run device tests and bump maccore to get automated VSTS triggering. (#2444)
* [tests] Add makefile target to run device tests and bump maccore to get automated VSTS triggering.

* [tests] Rename device-testing makefile target to make it clearer, and add a comment about it.
2017-08-09 17:23:54 +02:00
Rolf Bjarne Kvinge f964b4ca93 Bump maccore to get smarter inspector tests. (#2429)
Now only schedule builds when mono is bumped.
2017-08-03 15:55:10 -04:00
Rolf Bjarne Kvinge 83784e158a Bump maccore to get a few fixes for external tests. (#2348) 2017-07-19 15:29:52 -04:00
Rolf Bjarne Kvinge 9ad6daa127 Colorize dependency checks to make them nicer (and easier to see if something is ignored). (#2343)
* Colorize dependency checks to make them nicer (and easier to see if something is ignored).

Also print any ignored readme-style dependencies (previously we only printed
ignored submodule-style dependencies).

* Ignore any errors when fetching console colors sequences.

It's not a serious problems to not have colors, so just ignore any problems.

Makes this message go away on bots:

> tput: No value for $TERM and no -T specified
2017-07-19 09:35:05 +02:00
Rolf Bjarne Kvinge 44d03dae46 Bump to get xcode9 support (again). (#2325) 2017-07-13 16:32:47 +02:00
Rolf Bjarne Kvinge 8fbbfa5ca7 [tests] Add support for running external test suites. (#2324) 2017-07-13 14:25:48 +02:00
Matt Sylvia 2869ca5fd8 Branching for d15-3-xcode9 2017-07-12 17:18:06 -04:00
Rolf Bjarne Kvinge 981af59058 [mtouch] Don't allow building for 32-bit when deployment target is >= 11. Fixes #57966. (#2303)
* [mtouch] Don't allow building for 32-bit when deployment target is >= 11. Fixes #57966.

Also bump maccore to get an mlaunch error for launching a 32-bit app in a 64-bit-only simulator.

https://bugzilla.xamarin.com/show_bug.cgi?id=57966

* [tests][msbuild] Make sure all Info.plists have deployment targets.

Otherwise we get different behavior (32-bit allowed or not) depending on which
Xcode is used to build.

* [mtouch] Default to 64-bit arch if not specified and targeting iOS 11+.

* [tests] Tweak tests to either specify a deployment target < 11 or not build a 32-bit arch.
2017-07-11 08:54:50 +02:00
Matt Sylvia f30f76a523 Automated bumping to align hashes. 2017-07-06 23:31:14 -04:00
Rolf Bjarne Kvinge fa3956cba0 [tests] Fix issues when launching watchOS apps in the simulator. (#2192)
This requires a new mlaunch as well.
2017-06-09 07:24:01 -07:00
Rolf Bjarne Kvinge b09c0ef45c Bump maccore to get new mlaunch. (#2179) 2017-06-07 06:47:51 -07:00
Vincent Dondain 24cd73a5ca Bump to Xcode 9 (#2176)
- Update Versions-ios and Versions-mac file too.
- Bump maccore and maciostools to the xcode9 branch.
- [builds] Force disable 'futimens' and 'utimensat' so that we build with Xcode 9.
- [builds] 'system' is not available on iOS (simulator).
- [runtime] Fix: cannot initialize a variable of type 'char *' with an rvalue of type 'const char *'
    - Prevented building xcode9 branch, see: https://jenkins.mono-project.com/job/xamarin-macios-pr-builder/3886/console
  ```
  runtime.m:1122:9: error: cannot initialize a variable of type 'char *' with an rvalue of type 'const char *'
                              char *last_sep = strrchr (info.dli_fname, '/');
  ```

- [registrar] Apple removed a header, so don't include it anymore.
- [mtouch] Don't run the partial static registrar for tvOS.
  The generated output doesn't compile because Apple forgot to ship headers for
the ExternalAccessory framework in their tvOS simulator SDK.
2017-06-06 16:21:26 -04:00
Matt Sylvia 1d4b21d27d Fix maccore hash (#2175) 2017-06-05 09:18:15 -04:00
Matt Sylvia c7cf8f99a0 Branching for d15-3 2017-06-02 15:25:16 -04:00
Rolf Bjarne Kvinge 241b6e68dc Bump maccore/maciostools and Xamarin.MacDev to line up with other products for the 15.3 release. (#2164) 2017-06-02 12:26:37 +02:00
Rolf Bjarne Kvinge 73fa2e2c4a Bump maccore to get fix for bug #55688. (#2144)
commit xamarin/maciostools@d3b50010fe
Author: Rolf Bjarne Kvinge <rolf@xamarin.com>
Date:   Tue May 30 15:17:33 2017 +0200

    [Xamarin.Hosting] Add support for launching watchOS complications. Fixes #55688.

https://bugzilla.xamarin.com/show_bug.cgi?id=55688
2017-05-31 13:05:40 +02:00
luis.aguilera 8b71efc7a6 Updated reference to maccore 2017-05-28 17:27:48 -04:00
Rolf Bjarne Kvinge a69c85bae7 Remove anything related to using mkbundle, since we're not using mkbundle anymore. (#2132) 2017-05-26 07:05:03 +02:00
Rolf Bjarne Kvinge 3ab52d9cb7 [mk] Explain how to skip version checks when version checks fail. (#2079) 2017-05-10 16:40:31 +02:00
Vincent Dondain a925a8b4e3 Update reference to maccore (#2060)
Includes XIA0005 rule.
2017-05-02 19:24:44 -04:00
Marek Safar 996b582128 Update few mcs calls in src/ 2017-04-14 09:11:01 +02:00
Marek Safar 594a375c02 Update tools to use csc 2017-04-14 09:11:01 +02:00
Vincent Dondain 111d3357f6 Update reference to maccore (#2007) 2017-04-13 17:22:06 -04:00
Rolf Bjarne Kvinge bbbe881747 Fix how we build frameworks. Fixes #53813. (#1952)
Previously we copied any equivalent .dylib and ran install_name_tool on the
library to change the library id to make it a framework.

Unfortunately this does not work when the library contains bitcode, because
bitcode embeds linker flags (-install_name for instance), and
install_name_tool does not change those linker flags.

This means that we need to create frameworks by linking with the proper
arguments, since it's much more difficult to fixup the embedded bitcode linker
flags as well.

So change how be build Mono.framework, Xamarin.framework, and any frameworks
built from assemblies to:

* Always link instead of fixup a dylib. For Mono.framework this means
  extracting all the object files from libmonosgen-2.0.a and linking those,
  for Xamarin.framework this means linking the object files we've already
  built.

* Make sure the library is correctly named when linked (once again: bitcode
  contains embedded linker flags, so renaming the executable later breaks
  stuff as well).

I've also extracted the logic that creates Mono.framework from
libmonosgen-2.0.a to a separate shell script, to deduplicate this logic.

This required a minor change in the mono builds: we need the Mono.framework
when building the `all` target, so make sure that happens.

https://bugzilla.xamarin.com/show_bug.cgi?id=53813
2017-04-03 11:52:29 +02:00
Rolf Bjarne Kvinge b568b2541e [builds] Improve mono/llvm dependencies. (#1948)
* [builds] Improve mono/llvm dependencies.

* Create a list of all the files in the mono and llvm repositories, and save
  these lists as a Make variable (in a generated Makefile - .deps.*.mk). We
  don't list _all_ the files in each repository, because there are quite a few
  (55k for mono), and Make measurably takes a while to check all of them, so
  try to limit it to a sane subset, without risking missing changes to files
  that actually matters.

* Always create stamp files when we're done with mono builds.

* Modify the mono/llvm builds to depend on all the files in their
  repositories.

* Explicitly list the corresponding .stamp-build-* files as dependencies for
  various files that are produced by the mono builds, so that make knows how
  to build these files.

* Rewrite the *-facade-check targets to depend on the corresponding
  *_BCL_TARGETS, so that we can avoid running a submake to the same Makefile
  to execute the facade checks.

  It now takes a little while (less than a second on my machine, which is
  fine) for make to list all dependencies and get their timestamps, but if
  executing multiple submakes this adds up to a multi-second timewaste.

  So avoid the timewaste by not doing submakes, but instead use dependencies
  to enforce the required target execution ordering.

* Don't depend on nicely named intermediate targets, since won't prevent
  rebuilds:

      build-cross64: setup-cross64

  Since the `setup-cross64` file doesn't exist, `build-cross64` will always
  execute. Instead depend on the stamp file:

      build-cross64: .stamp-configure-cross64

  And now `build-cross64` will only rebuild if needed.

* Don't try to list all intermediate files as .SECONDARY dependencies, instead
  list none at all, which works as if all files were listed as dependencies.

* Some targets had to move later in the file, since variables used in dependencies:

       foo: $(VARIABLE)

  must be defined before that point in the file, as opposed to variables used in recipes:

       foo:
           $(MAKE) $(VARIABLE)

  can be defined anywhere in the Makefile.

* Simplify the targets that sign assemblies significantly.

There are a few end results:

* It's now possible to do `make install`, without doing `make all` first. This
  might seem weird, but that also ensures the more common `make all install`
  works properly.

* Remakes (without any mono/llvm changes) in build/ are much faster, because
  we now won't recurse into every mono build:

      $ time make all -C builds/ -j8
      [...]
      real  0m1.873s

  This even means that we might be able to make it a habit to remake in the
  root directory, which doesn't take forever now:

      $ time make all -j8
      [...]
      real  0m4.521s

  Unfortunately adding `make install` to the mix still does some useless
  stuff, and it ends up taking ~30 seconds to complete a full build:

      $ time make all install -j8
      [...]
      real  0m32.542s

* [msbuild] Don't verify the xml syntax of targets files unless the files change.

* [build] Don't depend on installed files.

Don't depend on installed files, because that causes a rebuild when installing
to a different directory (i.e. package creation).

* Bump maccore to get build improvements.

Rebuilds are now very fast:

    $ make all install -j8
    $ time make all install -j8
    real	0m5.735s

Less than 6s to figure out that nothing needs to be done.

And strangely flushing the disk cache doesn't make it much slower:

    $ sudo purge
    $ time make all install -j8
    real	0m7.309s

Which probably means that Make mostly reads file metadata, and not actual file
contents (which is good).
2017-03-31 20:23:38 +02:00
Rolf Bjarne Kvinge d5828ef1a0 Bump maccore to get documentation for the Runtime.AssemblyRegistration event. (#1940) 2017-03-30 14:37:28 +02:00
Sebastien Pouliot 0dfcb1f09f Merge branch 'master' into mono-2017-02 2017-03-28 21:31:33 -05:00
Sebastien Pouliot fe4ce3d7f8 Bump Xcode and SDK versions to match Xcode 8.3 2017-03-28 11:21:02 -05:00
Rolf Bjarne Kvinge 3b30fc2191 Bump maccore to get fix for bug #40287. (#1914)
https://bugzilla.xamarin.com/show_bug.cgi?id=40287
2017-03-27 15:22:52 +02:00
Vincent Dondain 2302931ceb [doc] Add XIA0004 Missing64BitSupportRule to xamarin-ios-analysis (#1912)
- Also update reference to maccore with the xamarin-analysis bump that includes XIA0004.
2017-03-25 13:02:54 -04:00
Rolf Bjarne Kvinge 1dc8c86e5b Merge remote-tracking branch 'origin/master' into mono-2017-02 2017-03-24 13:54:07 +01:00
Matt Sylvia acb9b93e39 [d15-2 prep] bump macdev maccore 2017-03-24 00:14:06 -04:00
Marek Safar 7b7ae3d6c0 Bump maccore 2017-03-22 16:29:45 +01:00
Marek Safar 131ccce6e3 Revert "Bump maccore for mdoc path fix"
This reverts commit 50f4564b6b.
2017-03-22 16:26:35 +01:00
Rolf Bjarne Kvinge 1bf8c67d4a Bump maccore to an official hash. 2017-03-22 14:11:51 +01:00
Marek Safar 50f4564b6b Bump maccore for mdoc path fix 2017-03-14 11:51:08 +01:00