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-12[msbuild] Bump to track xplat-master and update roslyn (#16155)Ankit Jain
Prompted by mono/msbuild#126: This includes: - merge mono-2019-06 - SDK update to track dotnet release/3.0.100-preview8 - Roslyn updated to 3.3.0-beta2-19381-14
2019-08-09[build] Remove ILDISASM variable from platform MakefilesAlexander Köplinger
It was written by configure.ac to config.make and is unused anyway.
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-08-07[runtime] Fix an autoconf warning. (#16078)Zoltan Varga
[runtime] Fix an autoconf warning. <!-- 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 -->
2019-08-07[wasm] Compile interp.c with -mllvm -join-liveintervals=false to fix ↵Zoltan Varga
compilation times.
2019-08-06Update NetBSD support (#15938)coypoop
Based on the FreeBSD variation. Needs some additional changes I'm still ironing out.
2019-08-05Bump version to 6.7 (#16031)Jo Shields
* Bump version to 6.7
2019-08-05[netcore] ifdef out unused icalls/files. (#16009)Zoltan Varga
* [netcore] ifdef out unused icalls/files. * Add MONO_EMPTY_SOURCE_FILE.
2019-08-01Bump monolite version. (#15969)Jay Krell
It got out of sync for some reason.
2019-07-31Cleanup and resynchronize Thread/InternalThread fields. (#15910)Jay Krell
- Remove unused. - Add missing that just happened to work. - Synchronize size between netcore and regular. `#if` considered bad. Extracted from https://github.com/mono/mono/pull/15859.
2019-07-31Update Haiku support (#15674)Calvin Buckley
* Build System.Native. * Disable `pthread_mutexattr_setprotocol` use, since it returns EINVAL on Haiku. * Disable the `strerror` cache on Haiku. On Haiku, errors begin at `0x8000_0000` like a Win32 HRESULT. This means the indexing would be on negative numbers, which is a no-no. There are a few alternative ways to keep it though: hashtable, tuple array, offset... Unfortunately, doesn't build all the way through. Has a tendency to bomb out during building `build-unix`. Will investigate why.
2019-07-31configure.ac: Use = as a test(1) operator. (#15876)coypoop
== is a bash extension = is POSIX and equivalent
2019-07-31Remove unused libdl setting (#15884)coypoop
We test dlopen with no library and in libdl later, without the use of this setting. Got the hint since I'm building for a configuration which had it set wrong.
2019-07-27[netcore] Fix building of nupkg (#15855)Alexander Köplinger
When https://github.com/mono/mono/commit/9010d2f290d28dc97ac276e0c0d32a2932b7550f was merged we stopped including mcs/build/config.make. However, that file set the VERSION variable which wasn't migrated to the new netcore/config.make so the nuget package missed the version. Additionally, System.Private.CoreLib sources were moved into the netcore folder and we now seemingly need to pass `-p:IsPackable=true` for dotnet pack to build the nuget package.
2019-07-25ld configure: Add another dash to export-dynamic. (#15717)Jay Krell
GNU ld accept single or double dash, means the same thing. AIX ld warns on single dash, errors on double dash, in autoconf, and then errors on single dash later. We want the double dash so autoconf rejects it on AIX.
2019-07-24[Coop] Convert System.Diagnostics.{FileVersionInfo,Process}. (#15789)Jay Krell
2019-07-17configure/makefile To support updating zlib to 1.2.11. (#15697)Jay Krell
2019-07-13Add configure flag to disable GAC support; disable GAC in netcore (#15681)Aleksey Kliger (λgeek)
* [runtime] Add configure flag to disable GAC support * [netcore] Disable GAC support
2019-07-11Misc AIX/PASE tweaks (#15651)Calvin Buckley
* Partial enablement of alternate stack for AIX/i It turns out much like macOS, AIX doesn't like to do mprotect/valloc for the first thread's guard pages, so skip those. It seems mostly fine except for one or two crashes causes it to grab the wrong IAR and deadlock dumping memory. As such, leave the code and configure script override to disable in place, just change the comment and add support code. * Use Qp2getifaddrs on PASE Not sure if proper way to implement. Reuses getifaddrs code as much as possible, since it's merely a name change based on the docs, due to it being namespaced in case AIX gets it or something. I'm not sure how many of these codepaths still work properly; one had a questionable order of ifdef. This will eventually prepare for CoreFX NetworkInterface, so test it here.
2019-07-11Remove configure cruft -- Interlocked and GetProcessId. (#15633)Jay Krell
They are never checked and all relevant systems have all of them.
2019-07-11Cleanup mono_threads_platform_get_stack_bounds. (#15632)Jay Krell
Fix mingw warning unused function __readfsdword.
2019-07-05Link with -z now or -bind_at_load. (#14562)Jay Krell
Advantages: Dynamic linker gets out of the way of random function calls, in terms of timing, in terms of locking, and in term of success, and possibly in terms of security (readonly function pointers). If you successfully load, then you can make function calls with impunity, without regard as to if they are in the same .so as the caller, well, assuming they are to a leaf like libc, or to something itself built with -z now. The "success" is significant, as otherwise loaded LLVM has unresolved symbols lurking, depending on which code paths you send it down. Disadvantage: Slower startup. Mixed: Platform consistency, since this is how Windows behaves usually (unless you say link /delayload) This will combine well with an upcoming revision of https://github.com/mono/mono/pull/14524. Difficult alternative: Force the binding along sensitive paths by calling their callees earlier. Typical alternative: Ignore the matter. Android: It is believed this switch produces a warning, which is ignored, there is no affect, and it is unclear if the behavior is actually "now" or "lazy". Logs could be checked and a test run, but neither.
2019-07-05Win32 zlib support. (#15509)Jay Krell
Fixes https://github.com/mono/mono/issues/15503 Always statically link on Windows (msvc and mingw). This is a somewhat old zlib, and will be updated shortly (https://github.com/mono/mono/pull/15480) Note that zlib is not valid C++, so always compile as C.
2019-07-03HAVE_DL_LOADER is never used so remove it. (#15500)Jay Krell
2019-07-03AC_DEFINE instead of AC_SUBST MONO_DL_NEED_USCORE. (#15499)Jay Krell
i.e. so it can be used in C instead of make. i.e. so it can actually work. The lone use is here: ``` C:\s\mono2\mono\utils\mono-dl.c(271):#if MONO_DL_NEED_USCORE ```
2019-07-02[runtime] Disable a a AC_TRY_RUN when cross-compiling.Zoltan Varga
2019-06-29Disable compiler server on darwin. Add force-enable option for compiler ↵Katelyn Gadd
server. (#15450)
2019-06-26[sdks] dynamically link libmonosgen to mono-sgen for monodroid host builds ↵Aleksey Kliger (λgeek)
(#15410) * [configure] Cosmetic AC_MSG_WARN fix * [runtime] Mark mono_file_map_error as MONO_API, always Fixed the `--with-static_mono=no` build on non-Win32 * [sdks] dynamically link libmonosgen to mono-sgen for monodroid host builds
2019-06-25Fix tarball build and refresh monolite due to memory model change (#15370)Jay Krell
* Revise monolite due to memory model change. * Fix tarball builds wrt netcore/config.make. * Remove System.Private.CoreLib from mcs/class/Makefile, it was moved to netcore/ * Bump min_mono_version in basic-profile-check The new MONO_DEBUG=clr-memory-model runtime option isn't available in earlier Mono versions.
2019-06-25Add support for Windows x64 Full AOT + LLVM + Interpreter on CI. (#15276)Johan Lorensson
2019-06-24[netcore] Disable more runtime functionality. (#15369)Zoltan Varga
2019-06-21Make copy_stack_data support configurable.lateralusX
By default when called through macros like MONO_ENTER_GC_UNSAFE code will always dump current registers into stack space on hybrid/coop. The registers will be scanned but only when hitting a GC and when running in GC unsafe, that will only happen when we block in the enter or hit a safe point at a later point in time. There are currently a couple of frequent scenarios where we go into GC safe when thread won't be suspended and in that case the copy of the registers will only reflect the state when entering GC unsafe. Commits add option to enable/disable copy_stack_data support in configure step: --enable-copy-stack-data, --disable-copy-stack-data. copy_stack_data is enabled by default on all platforms except desktop platforms macos, linux and windows (both 32/64-bit), since these platforms already support full context as well as capabilities to scan the stack of a running thread.
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-06-14[netcore] Clean up netcore buildMarek Safar
2019-06-12Enable the compiler server by defaultLarry Ewing
2019-06-09[wasm] Prototype for collecting aot profile data. (#14865)Zoltan Varga
* [runtime] Add some options to the aot profiler: - write-at-method=<METHOD> Write the data when <METHOD> is compiled. - send-to-method=<METHOD> Call <METHOD> with the collected data. * [wasm] Fix profiler support in the packager. * [wasm] Add prototype for generating aot profile data. * Fix indentation.
2019-06-07AIX/PASE integration improvements (#14652)Calvin Buckley
* Allow using SysV-style sonames on AIX/PASE This uses a far saner naming convention with libtool, and is consistent with the official PASE RPM repository. However, some loader changes are required to make it "just work" and workaround some real dumb behaviour on AIX's part. Note that while Mono works when built without the different soname tweak, it won't when installed, because the convention is strange and the libtool .la archives won't be installed. It's recommended as such that installation of Mono keeps the libtool files or just uses SVR4 sonames like the rest of the world, even if they're made strange like AIX. * Specify a specific version of unixODBC, make an include A workaround against PASE RPMs of unixODBC not including the just "libodbc.so" except in the development version. If a platform needs a specific version (the macOS reference not changed in the DllMap) then it can be specified in the configure script. AIX doesn't need a special name because both AIX Toolbox and Perzl include non-archive libraries in /opt/freeware/lib - unexpected. * Don't try to use shm_open on PASE due to it not being implemented All this will do is cause a coredump if running the script on PASE, and write an entry to the SLIC diagnostic logs. This test could be re-enabled if i 7.4 supports it properly. * fix ODBC include * Check for what library to use for libintl when dlopenning on AIX These checks are for the benefit of the DllMap. The construct used is kinda hacky, IMHO, but it resolves the concerns of hardcoding. In the event that this doesn't work (it does for me), it falls back to what the IBM RPMs seem to use for linking gettext et al. Not sure of the utility for other platforms, since they usually use sane soname conventions and the one-liner here depends heavily on an AIX developer tool and its output format. The use of cut/awk should work with the stock AIX utils, no GNU necessarily needed.
2019-06-06Fix build on macOS 10.15 Catalina + xcode 11 (#14820)Egor Bogatov
1) CC_MD5_Init, CC_MD5_Update and CC_MD5_Final are deprecated. ```c mono-md5.c:45:2: error: 'CC_MD5_Init' is deprecated: first deprecated in macOS 10.15 - This function is cryptographically broken and should not be used in security contexts. Clients should migrate to SHA256 (or stronger). [-Werror,-Wdeprecated-declarations] CC_MD5_Init (ctx); ^ ``` 2) objc_msgSend is deprecated ``` mono-threads-mach-helper.c:95:17: error: too many arguments to function call, expected 0, have 2 objc_msgSend (value, release); ~~~~~~~~~~~~ ^~~~~~~~~~~~~~ ``` XCode has a special switch `Enable Strict Checking of objc_msgSend Calls` which is now `true` by default. It's fixed by `-DOBJC_OLD_DISPATCH_PROTOTYPES=1` flag to clang or the corresponding define in the source file. 3) Fixes https://github.com/mono/mono/issues/14793 It worked on pre 10.15 without `-framework GSS`, because it got pulled in through the dependencies. You can see it by running DYLD_PRINT_LIBRARIES=1 csharp and then trace it back. On Mojave /System/Library/Frameworks/GSS.framework/Versions/A/GSS got loaded as dependency of /usr/lib/libcups.2.dylib and so on. Unlike Windows, macOS will resolve the symbols to whatever is already available so it was just happy that someone loaded GSS before libmono-native[-compat/-unified].
2019-06-05[runtime] Autoconf check for pthread_mutexattr_setprotocolAleksey Kliger
Android doesn't always declare that function.
2019-06-04Merge pull request #14694 from lateralusX/lateralusX/fix-llvm-build-path-msvcJohan Lorensson
Fix LLVM build break on Windows MSVC.
2019-06-03Bump roslyn to release 3.1.0 (#14778)monojenkins
2019-05-31Bump version to 6.5.0 (#14728)Jo Shields
2019-05-29Fix LLVM build break on Windows MSVC.lateralusX
https://github.com/mono/mono/pull/14607 broke LLVM build on Windows MSVC. This is just a quick fix falling back to old behavior on Windows MSVC. Since all LLVM tools will be available in the same folder as mono runtime binary there is no specific need to point out other build folders hosting LLVM tooling.
2019-05-29Infrastructure support / fixes for making compiler server the default (#14279)Katelyn Gadd
* Fix enabling the compiler server using autogen, and force it off if mcs is being used * autogen updates * Formatting fixes * Fix vbcs getting turned on if unspecified even if mcs was selected * Dynamically evaluate ENABLE_COMPILER_SERVER each time we compile instead of evaluating it once at some arbitrary point during makefile evaluation * More detailed comment based on testing * Handle the /shared option in genproj so it doesn't fail * Raise basic profile check requirement to 6.2 and hopefully assert that named pipes work * Default compiler server to off for now.
2019-05-28[sdks] Build static binaries for Android SDK and LLVM with MXE (#14283)Aleksey Kliger (λgeek)
We used to use the static MXE toolchain, but after switching to Homebrew, we have to explicitly pass flags to build binaries that don't depend on the MinGW32 GCC support libraries (libstdc++-6.dll, libwinpthread-1.dll and others) when building the LLVM and Mono binaries. The simplest approach is just to pass CMAKE_EXE_LINKER_FLAGS=-static to cmake and LDFLAGS=-all-static to libtool. The rest of the changes are just to make it easier to do that by adding a configure flag and updating the SDKs infrastructure. We will also need an LLVM bump to actually build a new llvm archive with the new build flags; until then, building Mono will provision an old build of LLVM with the old build flags that still depends on libstdc++-6.dll. --- An alternative approach instead of passing -all-static and -static would be to probe for the assorted -static-libXYZ flags to GCC at configure time. (For the LLVM build we would need to hardcode them as that build doesn't go through autoconf). Right now Mono doesn't have any other DLL dependencies (other than the core windows DLLs), so -all-static works just as well and is simpler.
2019-05-25[build] Provide in-tree llvm to mono correctly (#14607)Alexander Kyte
2019-05-17[netcore] Build/upload Windows runtime nupkg (#14506)Jo Shields
* [netcore] Switch build properties from /p: to -p: due to MSYS2/dotnet bug * [netcore] Switch from nuget pack to dotnet pack * [netcore] Add Windows x64 build
2019-05-13configure: check for c++ availability (#14461)Angelo Compagnucci
Since commit d8af775, c++ compiler is required to compile. This patch checks if the c++ compiler is available as soon as possible and returns an error in case it is not found. Fixes: https://github.com/mono/mono/issues/14195 Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
2019-05-10[corlib] Change the RuntimeModule.GetGuid and RuntimeAssembly.GetAotId ↵Zoltan Varga
icalls to return a byte array. (#14393) * [corlib] Change the RuntimeModule.GetGuid and RuntimeAssembly.GetAotId icalls to return a byte array instead of a string, so it doesn't have to be parsed by the Guid ctor. Also allocate the arrays in the c# code and pass them to the icalls.
2019-05-03ld -Bsymboli so dynamic linker does not get betweem mono and itself. (#14298)Jay Krell