Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-08-09Add mono-hang-watchdog.in to tarballAlexander Köplinger
Remove custom distdir target and use standard EXTRA_DIST to do so.
2019-08-09[merp] Use a separate program as the hang supervisor. (#15715)Alexis Christoforides
* [merp] Use a separate program as the hang supervisor. Fixes https://github.com/mono/mono/issues/15646 macOS does not like signals being sent from the forked supervisor process, possibly towards anywhere but definitely when sent to the parent process. The following message is currently spewed after the supervisor process attempting to send a SIGSEGV to a hanged Mono process: "The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec()." We follow that direction and introduce a new binary that, when available in the mono executable's binary directory, is used to abort the parent process for us.
2019-06-20Add Windows x64 Full AOT Interpreter support on CI. (#15127)Johan Lorensson
Add support to run full interpreter test suite on CI for Windows x64 Full AOT. Since Windows x64 Full AOT uses a different full AOT profile WinAOT a separate testing profile was setup for the interpreter testing. NOTE, this profile is pure for testing, inline with the other testing profiles. It is also reusing most of its sources from other sources files (mainly WinAOT) to reduce maintenance of the profile. Commit also includes some smaller adjustments needed in order to get full pass rate for Windows x64 Full AOT + Interpreter on CI.
2019-05-23[tests] Add xunit.execution.dotnet.dll to tests directory (#14595)Alexander Köplinger
So it gets included in the sdks archive
2019-02-20Remaining fixes needed to pass rest of CI test suites for windows x64 full ↵Johan Lorensson
AOT. (#13084) * Fix for runtime mcs-compileall test on Windows x64 full AOT. Test picked up full AOT:ed libraries as well as managed libraries failing the test. Full AOT:ed shared libraries on Windows has .dll.dll prefix and full AOT:ed executables on Windows has .exe.dll prefix. Fix makes sure to filter out any files ending with dll.dll or exe.dll. * Fix build errors in System.Web.Services test under winaot profile. * Fix errors in System.Core test under winaot profile. * Fix build error in linker tests on Windows under winaot profile. Build fails since profile build mscorlib is used as well as default triggering build error. Fix is to build linker tests using -nostdlib flag.
2019-02-01Add support for Windows x64 winaot, winaot_llvm builds/tests on CI. (#12601)Johan Lorensson
Add support for building Windows x64 fullaot version of winaot profile that can be run on CI. Initial changes also add execution of mini regression tests on CI. More tests will be added going forward and when having full pass rate. Add support for building Windows x64 fullaot+llvm version of winaot profile that can be run on CI. Initial changes also add execution of mini regression tests on CI. More tests will be added going forward and when having full pass rate. In order to get deterministic build results and working build on CI, we need to setup a correct build environment for the MSVC builds. Since MSVC build is currently run from cygwin, there are environment problems, both general but also in our CI environment, since we add cygwin bin folder to system path (needed by Jenkins plugin). When running more complex cmake builds like BTLS and LLVM, this will cause problems picking up incorrect tools, failing builds on CI. Another problem is the AOT compilation using MSVC toolchain. In the past CI used some "hard coded paths" to make sure clang.exe and link.exe was found. This is not optimal and won't work when including LLVM as part of full AOT since link.exe will need access to more of the full build environment setup by VS development environments (like platform libraries). In order to get a better build environment on CI this commit includes and enhance a couple of build scripts used to run msbuild.exe and mono-sgen.exe (as AOT compiler) in a VS development environment, isolate that build process from cygwin environment. The build scripts will locate installed VS tooling, VS2015 build tools or VS dev env, VS2017 build tools or VS dev env and use corresponding development environment scripts as part of running msbuild.exe and mono-sgen.exe in AOT mode. In order to make sure mono-sgen.exe as AOT compiler is run through these scripts an additional environment variable MONO_EXECUTABLE_WRAPPER is introduced and used in mono-wrapper when set. Without this indirection there will be problems on CI tests since the environment is using MONO_EXECUTABLE and pass that into for example test driver that run child processes of mono-sgen.exe, meaning that we can't use scripts for MONO_EXECUTABLE, but splitting the MONO_EXECUTABLE to represent mono runtime and have a MONO_EXECUTABLE_WRAPPER that could be a launch script solves this issue. This commit also includes several smaller fixes made to the generic fullaot build infrastructure. Fix additional msbuild arguments. Add Mono.SIMD assembly to winaot profile. Run msbuild.exe as part of .bat file.
2019-02-01"Imperial Red": Bring HttpClient from CoreFx (#11906)Martin Baulig
This brings `System.Net.Http` from CoreFx. It is currently only enabled on Desktop Mac and Linux; Mobile is coming shortly.
2019-01-21[build] Fix netcore build (#12526)Marek Safar
* [build] Fix netcore build * Fix Mono env parsing for netcore and reduce Task dependencies * Fix the build
2018-12-20Update Helix SDK to latest version (#12156)Alexander Köplinger
They added retry logic inside of the SDK to deal with some expected Helix API responses.
2018-12-20Bootstraps netcore build (#12120)Marek Safar
This does not build but puts placeholders for syncing in place
2018-11-13[System.Web] Add optional shared FileSystemWatcher's to CacheDependencyAlexander Köplinger
Right now we create a separate FileSystemWatcher for each file in CacheDependency. On systems where inotify handles are limited this leads to problems. As a workaround we can share the FSW which watches the same directory. Since this wasn't extensively tested, hide it behind and environment variable. We enable this in the Helix environment only for now.
2018-11-13[ci] Add targets to bundle tests and add a script to run them in HelixAlexander Köplinger
The test-bundle target copies all assets needed for test execution to a specified directory. We upload this directory to Helix and use it to run our mainline tests.
2018-11-12Add common "test" target for precompiling test assemblies (#11622)Alexander Köplinger
So we can precompile all tests across the repo using a simple "make test" in the root.
2018-10-30[tests] Add new build profile for testing mixed mode (#11307)Vlad Brezae
We aot only the bcl (--aot=full,interp) while the tests code is interpreted. <!-- Thank you for your Pull Request! If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed. Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number -->
2018-10-25[build] Fixes wasm tools to run on desktop .net as well (#11351)Marek Safar
* [build] Fixes wasm tools to run on desktop .net as well Fixes #11326 * [csproj] Update project files
2018-10-17Upstream a few test related commits from my Helix work (#11197)Alexander Köplinger
* [bcl] Run System.Windows.Forms.DataVisualization tests * [bcl] Run Mono.Messaging.* tests * [bcl] Use correct label for mdoc tests * [runtime] Skip verifying an xunit-binaries assembly
2018-10-15Initial Mono.Native Support. (#10596)Martin Baulig
`Mono.Native` is the new name for both `System.Native` and `System.Security.Cryptography.Apple`. It is built as a stand-alone shared library and not bundled with the runtime because we may need to build two different versions of it. Starting with macOS 10.12+ and iOS 10+, Apple introduced a new Unified API for some of the crypto primitives that we're using as part of System.Security.Cryptography.Apple. On Desktop, we can check at runtime whether the OS version is recent enough and switch implementation accordingly. We build a single `libmono_native` shared library. However, on Mobile we cannot have any undefined symbols as this would break Bitcode. During the mobile build, we are called with `CC` containing an explicit minium version flag, which is either `-mmacosx-version-min=`, `-mios-simulator-version-min=` or `-miphoneos-version-min=` depending on platform. We build two versions of the shared library: - `libmono_native_compat` is built with whichever minimum version is passed to us via `CC`. - `libmono_native_unifed` is built with the minimum version set to macOS 10.12+ / iOS 10+. For testing purposes, there is a function called `mono_native_get_platform_type ()` (see mono/native/mono-native-platform.c), which returns a `MonoNativePlatformType` enum value. There is also `Mono.MonoNativePlatform.GetPlatformType ()` (see mcs/class/corlib/Mono/MonoNativePlatform.cs). This can be called by automated tests both to ensure that the library has been correctly installed and also to verify that it's the correct version of it. * `configure.ac`: add new configure checks for Mono.Native. * `mono/native/`: new directory - this replaces the `System.Native` code that was previously in `mono/metadata`. * `mcs/class/corlib/Mono`: New internal `MonoNativePlatformType` and `MonoNativePlatform` classes.
2018-10-02[sdks] Create archive targets for pre-building on CI (#10882)Ludovic Henry
* [sdks] Remove redundant --enable-cxx * [sdks] Shorten `-m32`/`-m64` parameters detection for runtimes * [sdks] Build BCL profiles without configure flags * [sdks] Add BclTemplate to build BCL profiles This is to avoid building all the profiles in a single `sdks/out/bcl` directory which will be shared between android, ios and wasm. * [sdks] Create archive targets for pre-building on CI * [sdks] Use archive-{android,ios,wasm} on CI * [sdks] Run archive-llvm-llvm{,win}{32,64} on CI
2018-09-21[System.Data] use PAL_gssapi.c for SSPI (#9922)Egor Bogatov
PAL_gssapi.c was converted to C recently in corefx but since our fork is not up to date I copied `PAL_gssapi.c` and `PAL_gssapi.h` into mono/metadata (I guess I should just cherry-pick those files to our fork). For System.Data it will allow users to connect to sql servers using SSPI (Security Support Provider Interface). See https://github.com/mono/mono/issues/9028 and https://github.com/mono/mono/issues/9751 on macOS (and iOS) it uses built-in GSS.framework. on Linux it requires an additional package (`krb`) to be installed (see .NET Core prerequisites, e.g. https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x#ubuntu). Unfortunately it's not installed on our CI yet.
2018-05-21[corefx] Build System.Native (#8051)Ludovic Henry
2018-05-06[bcl] Add xunit to STD_TARGETS and precompile tests (#8594)Alexander Köplinger
Similar to how we do it for nunit.
2018-04-12[ci] Add {,hybrid,full}aot_llvm presets to make sure we compile with LLVM ↵Ludovic Henry
(#8053) * [ci] Add {,hybrid,full}aot_llvm presets to make sure we compile with LLVM * [configure] Rename runtime_preset to runtime-preset * [bcl] Make sure we build the testing_aot_{hybrid,full} profiles when building all profiles * [test-runner] Factor test-runner parameters for picking up and passing arguments to the runtime * [hybridaot] Fix testing_aot_hybrid build * [mini-llvm-aot] Fix common race condition in parallel builds due to common defaults.
2018-04-09Symlink the 4.5 machine.config unconditionally.Jay Krell
This fixes https://github.com/mono/mono/issues/8074. I see this 100%. Why others do not? I usually skip aot so usually I don't see it. Linux Ubuntu 1604 and 1710 tested. mono-devel package is installed, which is probably not relevant. git clean -xddf (or new git clone) ./configure --with-runtime_preset=fullaot likely also with others (hybridaot) make Many errors like: MONO_PATH="./../../class/lib/build:$MONO_PATH" /s/mono/runtime/mono-wrapper ./../../class/lib/build/sn.exe -q -R ../../class/lib/testing_aot_full/mscorlib.dll ./../../class/mono.snk Couldn't sign the assembly ../../class/lib/testing_aot_full/mscorlib.dll with this key pair. Public key of assembly did not match signing public key. ../../build/library.make:342: recipe for target '../../class/lib/testing_aot_full/mscorlib.dll' failed If you run make V=1 you see the sn command. You can see the installed sn works ok. Remove the -Q for quiet and you see a warning about missing machine.config. Run with ptrace and you see it looking for 4.5/machine.config. Look in the tree and you see 1.1 and 2.0. Copy the 2.0 to 4.5 and problem goes away. And can be edited down a bunch. Actual fix is to move symlink of the file to outside a conditional. Maybe people aren't using fullaot or git clean? Repro is 100% for me. I was going to bisect, but it was occuring as far back as September 2017 so I did not. .
2017-11-28[corlib] Adds Span/Memory testsMarek Safar
2017-11-03[wasm] Build the wasm profile is it was configured in.Rodrigo Kumpera
2017-10-05Add new profile for monodroid tools (#5699)Alexander Köplinger
* Add new profile for monodroid tools This allows the XA build to use these instead of needing to build net_4_x. We build the assemblies against the .NET 4.6 reference assemblies. * Skip monodroid_tools in verify (aka mcs-compileall) Exclude it from the test_profiles since running tests makes no sense there. Also refactor to exclude binary_reference_assemblies as well, it was already excluded manually in mcs-compileall before.
2017-07-19Fix build of "unreal" profileAlexander Köplinger
2017-06-02[runtime] Remove all NACL support. It was unmaintained for a long time. (#4955)Zoltan Varga
https://blog.chromium.org/2017/05/goodbye-pnacl-hello-webassembly.html
2017-04-30[ci] Output nunit xml if "verify" test step failsAlexander Köplinger
Allows us to better catch this on Jenkins.
2017-04-05[tests] Fix the mcs-compileall target in runtime/ (#4637)Alexander Köplinger
It is used as the "verify" step on Jenkins/Wrench and I noticed it didn't run recently. Looks like it was broken a while ago by 695e8f53ae7d2139. Moving the verifiable_files variable at the top is wrong since the $$profile variable is only defined inside the for loop and so we'd get an empty list. When that was fixed it still didn't work as piping to `echo` doesn't work. Replaced it with a Makefile solution instead.
2017-02-23Fix Windows build due to line ending changes in sedAlexander Köplinger
The recent sed update in cygwin [1] changed the way sed handles carriage returns. This meant that every .in file we processed still contained CR, which doesn't work for .sh files. Force LF line endings for those files (and also other shell scripts). [1] https://cygwin.com/ml/cygwin-announce/2017-02/msg00036.html
2017-01-25Updates for winaot profileHenric Müller
2017-01-23[build] Add new profileMarek Safar
2016-12-20[bcl] Rename aot_hybrid profile to testing_aot_hybridAlexander Köplinger
2016-12-20[bcl] Rename aot_only profile to testing_aot_fullAlexander Köplinger
2016-12-12[System] Always use mcs as CodeDOM backend compilerMarek Safar
2016-11-28[build] Roslyn switchMarek Safar
2016-11-24Rename the mobile_static profile to aot_onlyAlexander Köplinger
We decided it's a better name since we're using the profile to test FullAOT scenarios on desktop (as opposed to the mobile profiles). While doing the rename I saw that a lot of the #ifdefs were using MOBILE_STATIC even though the code should actually be included/excluded in all FullAOT scenarios, e.g. System.Reflection.Emit. I replaced those cases with FULL_AOT_RUNTIME instead. For cases where code is specific to this profile, I added a new AOT_ONLY_DESKTOP define.
2016-11-22[profiles] Fix MOBILE assemblies and tests compilation + Rename MOBILE to ↵Ludovic Henry
AOT_HYBRID This only fixes the compilation of the assemblies and the tests. This doesn't fix the failing tests or the crashes.
2016-10-22[btls] Convert BTLS icalls to pinvokes by invoking them using [DllImp… (#3799)Zoltan Varga
* [btls] Convert BTLS icalls to pinvokes by invoking them using [DllImport("__Internal")], which will make it easier to redirect them to a separate dylib in the future. * [btls] Add a --enable-dynamic-btls configure flag to enable compiling btls into a separate shared library instead of embedding it into the runtime.
2016-07-18[mobile_static] Skip verifying ilasm.exe on mobile_staticAlexander Kyte
ILASM.exe has features which a mobile_static runtime will not support. It is invoked with an external mono when used in the runtime. We skip it here because otherwise it will fail to verify.
2016-03-17[mono] Remove al2/dmcs from TEST_SUPPORT_FILES tooAlexander Köplinger
2016-03-17[mono] Remove dmcs from temp install folderAlexander Köplinger
2016-03-17[mono] Remove al2 from temp install folderMarek Safar
2016-03-01Expose mobile_static profile in configure.acAlexander Köplinger
Pass --with-mobile_static to enable it.
2015-11-20Allow mono-wrapper executable to be overridden by environmentJo Shields
This makes it easier to force Cygwin-brokered test suite runs to use MSVC builds of Mono, i.e. by overriding MONO_EXECUTABLE to .../msvc/bin/Win32/mono-sgen.exe
2015-11-17Add monotouch_*_runtime profiles for watchOS and tvOS.Rolf Bjarne Kvinge
2015-09-14Add a monotouch_tv profile.Rolf Bjarne Kvinge
2015-08-13Add specific configure option to enable the WatchOS BCL libraries.Rolf Bjarne Kvinge
2015-07-25[mono-config] update path to libMonoPosixHelper in runtime/ as wellBernhard Urban