Page MenuHomeFreeBSD

lang/mono: take maintainership, update to 6.8.0.105
Needs RevisionPublic

Authored by prj_rootwyrm.com on Jan 21 2020, 6:56 PM.

Details

Summary

Proposal to take ownership of this port and update significantly.
mono@ has basically been dead for over a year, and has not updated the lang/mono port. I have been working closely with upstream for about a year now, and we have made tremendous strides in improving FreeBSD support as well as making upstream more friendly to the ports architecture. I have also worked with them to integrate FreeBSD into the official Mono CI, and we have gotten to a point where nearly all tests are passing or the failure is itself a failure of the test.

At this point I believe we are ready to take the next step and start bringing lang/mono officially current, and I am comfortable enough with the intricacies to take ownership of this port. There will be additional changes needed over time due to changes in the upstream organizational structure; however, these will not affect this port.

Outstanding work currently is confirming successful builds on aarch64 and powerpc64; it is known to not compile under qemu due to an MCS crash.

Test Plan
  • aarch64: need to confirm compiling on hardware or MCS bug
  • powerpc64: need to test compiling, impossible to test with qemu (known limitation)
  • confirm any building dependencies continue to work as normal

Diff Detail

Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
tcberner added inline comments.
Makefile
11

^ why not become part of mono@?

tcberner added inline comments.Jan 21 2020, 7:12 PM
Makefile
25

^

USES=iconv
40
INOTIFY_CONFIGURE_ENABLE=inotify

is not working? analogously for the others

68

^ is it only working with python3.7?

dch added a subscriber: dch.Jan 21 2020, 7:41 PM
prj_rootwyrm.com added inline comments.
Makefile
11

I personally think at this point, mono@ as an organization is better off being retired for now, since it would be an organization of one. (Also I don't have a bit; I'm just this guy on the Internet(TM).) I am fully in favor of reinstating it if this successfully regenerates interest and brings some more users and maintainers to the table though.

25

Whoops, yes, this was a cleanup error on my part. It does have USES=iconv and I just neglected to clean up from other tests being done.

40

There is no equivalent --with-inotify or --enable-inotify, only the --disable-inotify for FreeBSD. All other platforms are assumed to either be Windows, have Linux-equivalent inotify, or fail the -linotify check. FreeBSD passes -linotify if another package installs devel/libinotify but fails #include <sys/inotify.h> due to missing -I/usr/local/include

As a result I'll need to update this patch. I'm working with upstream to figure out how we can fix that lower level issue, which will fix the "(BROKEN)" part fully.
https://github.com/mono/mono/issues/18528

68

3.6+ is preferred (and 2.7 is finally dead!) Would python:3.6+ be more correct here then?

Many thanks to @mikael for attempting an aarch64 hardware build today. This successfully confirmed that it cannot be built under qemu due to a qemu issue. Unfortunately I don't know of any way to say 'for aarch64 but not if it's qemu.' The aarch64 build also encountered a long hang in the Roslyn (MCS) compiler which is a commonly known problem with Roslyn itself, also commonly seen under musl libc Linux. Specifically spinning locks; several issues have been opened upstream and some are still unfixed. The build may need a LONG total time (potentially many hours) if it successfully advances past these hangs, but it needs a solid 4 hours of spinning gears to see if it can move past it.

  • Implemented fixes requested by @tcberner
  • Added files/patch-disable_inotify to fix failure condition when devel/libinotify is installed but lang_mono_UNSET+=INOTIFY is true
tcberner added inline comments.Jan 22 2020, 5:14 AM
Makefile
68

yes

greg_unrelenting.technology added inline comments.
Makefile
75

Please look at bug 229710 — I have a patch for btls there.

Also I'm not sure what with-csc=mcs does — use the old compiler instead of Roslyn? — but with Roslyn it's still called mcs everywhere…

Disabling parallelism (/parallel-) was the fix for the concurrency issue back then, but looks like there are real (but "overkill") memory fixes out there.

Makefile
75

(the patch there should be updated for the new armreg.h with the _VAL things on CURRENT)

romain added a subscriber: romain.Jan 22 2020, 4:30 PM
Makefile
75

mcs is not Roslyn; it's the Mono C Sharp [compiler] (IIRC. Don't hold me to that part of it.) If not selected with --with-csc=mcs then builds will now attempt to use /actual/ Roslyn CSC.exe by default now - which is a very different beast indeed. Mono and Roslyn are completely separate projects and groups.
The compiler issues being hit are actually known ones that exhibit even on certain Linux setups (particularly musl libc) without any real rhyme or reason, and aren't related to a race. They're separate from mono#7017, under mono#7167.

I'll take a look at that patch this evening, after talking with upstream folks today. The .NET 5.0 discussions regarding SSL/TLS are ongoing but that's still a bit out. Some of the changes it makes are already upstream, so I'll need to do some cherry picking, but I'd say there's a decent chance this is upstreamable.

romain added inline comments.
Makefile
11

I refreshed the mono@ team page on the wiki: there is a bunch of people who have been contributing updates to the mono ports, including @feld @dbn @dvl and @russ.haley_gmail.com (I hope these mentions will subscribe them to this review). I invite them to update the wiki page if they are no longer interest in maintaining mono:

https://wiki.freebsd.org/Mono

I second what @tcberner says, joining and providing manpower to mono@ seems better than changing the maintainer of lang/mono.

pkubaj added a subscriber: pkubaj.Jan 23 2020, 1:39 PM

There are two issues:

  • powerpc64-unknown-freebsd target is not supported, use this patch:
--- configure.ac.orig   2020-01-15 08:53:34.000000000 +0100
+++ configure.ac        2020-01-23 12:19:43.480646000 +0100
@@ -4472,7 +4474,7 @@
                ;;
        macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \
         powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* | \
-        powerpc-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )
+        powerpc*-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )
                if test "x$ac_cv_sizeof_void_p" = "x8"; then
                        TARGET=POWERPC64;
                        CPPFLAGS="$CPPFLAGS -D__mono_ppc__ -D__mono_ppc64__"
  • head uses ELFv2 ABI, which doesn't use -mminimal-toc parameter. However, configure.ac forces -mminimal-toc if the compiler binary (CC) doesn't contain "clang" string (our compiler binary is named "cc"). This breaks build and the easiest way is to fix it in our port's Makefile:
 post-patch:
+.if defined(PPC_ABI) && ${PPC_ABI} == ELFv2
+       ${REINPLACE_CMD} -e '/-mminimal-toc/d' ${WRKSRC}/configure.ac
+.endif
        ${REINPLACE_CMD} -e 's|^#!/bin/bash|#!/usr/bin/env bash|g' \

Other than that, you also need to add powerpc64 to ONLY_FOR_ARCHS in the Makefile.

There's also a large number of plist errors:

===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: lib/mono/4.5/Facades/Microsoft.Win32.Registry.AccessControl.dll.mdb
Error: Orphaned: lib/mono/4.5/Facades/System.IO.FileSystem.AccessControl.dll.mdb
Error: Orphaned: lib/mono/4.5/Facades/System.Reflection.TypeExtensions.dll.mdb
Error: Orphaned: lib/mono/4.5/Facades/System.ServiceProcess.ServiceController.dll.mdb
Error: Orphaned: lib/mono/4.5/Facades/System.Text.Encoding.CodePages.dll.mdb
Error: Orphaned: lib/mono/4.5/Facades/System.Threading.AccessControl.dll.mdb
Error: Orphaned: lib/mono/4.5/RabbitMQ.Client.Apigen.exe.mdb
Error: Orphaned: lib/mono/4.5/al.exe.mdb
Error: Orphaned: lib/mono/4.5/aprofutil.exe.mdb
Error: Orphaned: lib/mono/4.5/browsercaps-updater.exe.mdb
Error: Orphaned: lib/mono/4.5/caspol.exe.mdb
Error: Orphaned: lib/mono/4.5/cccheck.exe.mdb
Error: Orphaned: lib/mono/4.5/ccrewrite.exe.mdb
Error: Orphaned: lib/mono/4.5/cert-sync.exe.mdb
Error: Orphaned: lib/mono/4.5/cert2spc.exe.mdb
Error: Orphaned: lib/mono/4.5/certmgr.exe.mdb
Error: Orphaned: lib/mono/4.5/chktrust.exe.mdb
Error: Orphaned: lib/mono/4.5/crlupdate.exe.mdb
Error: Orphaned: lib/mono/4.5/csharp.exe.mdb
Error: Orphaned: lib/mono/4.5/culevel.exe.mdb
Error: Orphaned: lib/mono/4.5/disco.exe.mdb
Error: Orphaned: lib/mono/4.5/dtd2rng.exe.mdb
Error: Orphaned: lib/mono/4.5/dtd2xsd.exe.mdb
Error: Orphaned: lib/mono/4.5/gacutil.exe.mdb
Error: Orphaned: lib/mono/4.5/genxs.exe.mdb
Error: Orphaned: lib/mono/4.5/httpcfg.exe.mdb
Error: Orphaned: lib/mono/4.5/ictool.exe.mdb
Error: Orphaned: lib/mono/4.5/ikdasm.exe.mdb
Error: Orphaned: lib/mono/4.5/ilasm.exe.mdb
Error: Orphaned: lib/mono/4.5/illinkanalyzer.exe.mdb
Error: Orphaned: lib/mono/4.5/installutil.exe.mdb
Error: Orphaned: lib/mono/4.5/installvst.exe.mdb
Error: Orphaned: lib/mono/4.5/lc.exe.mdb
Error: Orphaned: lib/mono/4.5/macpack.exe.mdb
Error: Orphaned: lib/mono/4.5/makecert.exe.mdb
Error: Orphaned: lib/mono/4.5/mconfig.exe.mdb
Error: Orphaned: lib/mono/4.5/mcs.exe.mdb
Error: Orphaned: lib/mono/4.5/mdbrebase.exe.mdb
Error: Orphaned: lib/mono/4.5/mkbundle.exe.mdb
Error: Orphaned: lib/mono/4.5/mod.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-api-diff.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-api-html.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-api-info.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-cil-strip.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-service.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-shlib-cop.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-symbolicate.exe.mdb
Error: Orphaned: lib/mono/4.5/mono-xmltool.exe.mdb
Error: Orphaned: lib/mono/4.5/monop.exe.mdb
Error: Orphaned: lib/mono/4.5/mozroots.exe.mdb
Error: Orphaned: lib/mono/4.5/mscorlib.dll.mdb
Error: Orphaned: lib/mono/4.5/pdb2mdb.exe.mdb
Error: Orphaned: lib/mono/4.5/permview.exe.mdb
Error: Orphaned: lib/mono/4.5/resgen.exe.mdb
Error: Orphaned: lib/mono/4.5/secutil.exe.mdb
Error: Orphaned: lib/mono/4.5/setreg.exe.mdb
Error: Orphaned: lib/mono/4.5/sgen.exe.mdb
Error: Orphaned: lib/mono/4.5/signcode.exe.mdb
Error: Orphaned: lib/mono/4.5/sn.exe.mdb
Error: Orphaned: lib/mono/4.5/soapsuds.exe.mdb
Error: Orphaned: lib/mono/4.5/sqlmetal.exe.mdb
Error: Orphaned: lib/mono/4.5/sqlsharp.exe.mdb
Error: Orphaned: lib/mono/4.5/svcutil.exe.mdb
Error: Orphaned: lib/mono/4.5/wsdl.exe.mdb
Error: Orphaned: lib/mono/4.5/xbuild.exe.mdb
Error: Orphaned: lib/mono/4.5/xsd.exe.mdb
Error: Orphaned: lib/mono/gac/Accessibility/4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll.mdb
Error: Orphaned: lib/mono/gac/Commons.Xml.Relaxng/4.0.0.0__0738eb9f132ed756/Commons.Xml.Relaxng.dll.mdb
Error: Orphaned: lib/mono/gac/CustomMarshalers/4.0.0.0__b03f5f7f11d50a3a/CustomMarshalers.dll.mdb
Error: Orphaned: lib/mono/gac/I18N.CJK/4.0.0.0__0738eb9f132ed756/I18N.CJK.dll.mdb
Error: Orphaned: lib/mono/gac/I18N.MidEast/4.0.0.0__0738eb9f132ed756/I18N.MidEast.dll.mdb
Error: Orphaned: lib/mono/gac/I18N.Other/4.0.0.0__0738eb9f132ed756/I18N.Other.dll.mdb
Error: Orphaned: lib/mono/gac/I18N.Rare/4.0.0.0__0738eb9f132ed756/I18N.Rare.dll.mdb
Error: Orphaned: lib/mono/gac/I18N.West/4.0.0.0__0738eb9f132ed756/I18N.West.dll.mdb
Error: Orphaned: lib/mono/gac/I18N/4.0.0.0__0738eb9f132ed756/I18N.dll.mdb
Error: Orphaned: lib/mono/gac/IBM.Data.DB2/1.0.0.0__7c307b91aa13d208/IBM.Data.DB2.dll.mdb
Error: Orphaned: lib/mono/gac/ICSharpCode.SharpZipLib/4.84.0.0__1b03e6acf1164f73/ICSharpCode.SharpZipLib.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Engine/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Engine/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Engine/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Framework/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Framework/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Framework/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Tasks.Core/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.Core.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Tasks.v12.0/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.v12.0.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Tasks.v4.0/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.v4.0.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Utilities.Core/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.Core.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Utilities.v12.0/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.v12.0.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build.Utilities.v4.0/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.v4.0.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Build/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.CSharp/4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.VisualC/10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualC.dll.mdb
Error: Orphaned: lib/mono/gac/Microsoft.Web.Infrastructure/1.0.0.0__31bf3856ad364e35/Microsoft.Web.Infrastructure.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.CSharp/4.0.0.0__0738eb9f132ed756/Mono.CSharp.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Cairo/4.0.0.0__0738eb9f132ed756/Mono.Cairo.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Cecil/0.11.0.0__0738eb9f132ed756/Mono.Cecil.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Cecil/0.9.5.0__0738eb9f132ed756/Mono.Cecil.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.CodeContracts/4.0.0.0__0738eb9f132ed756/Mono.CodeContracts.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.CompilerServices.SymbolWriter/4.0.0.0__0738eb9f132ed756/Mono.CompilerServices.SymbolWriter.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Data.Sqlite/4.0.0.0__0738eb9f132ed756/Mono.Data.Sqlite.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Data.Tds/4.0.0.0__0738eb9f132ed756/Mono.Data.Tds.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Debugger.Soft/4.0.0.0__0738eb9f132ed756/Mono.Debugger.Soft.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Http/4.0.0.0__0738eb9f132ed756/Mono.Http.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Management/4.0.0.0__0738eb9f132ed756/Mono.Management.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Messaging.RabbitMQ/4.0.0.0__0738eb9f132ed756/Mono.Messaging.RabbitMQ.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Messaging/4.0.0.0__0738eb9f132ed756/Mono.Messaging.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Parallel/4.0.0.0__0738eb9f132ed756/Mono.Parallel.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Posix/4.0.0.0__0738eb9f132ed756/Mono.Posix.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Profiler.Log/4.0.0.0__0738eb9f132ed756/Mono.Profiler.Log.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Security.Win32/4.0.0.0__0738eb9f132ed756/Mono.Security.Win32.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Security/4.0.0.0__0738eb9f132ed756/Mono.Security.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Simd/4.0.0.0__0738eb9f132ed756/Mono.Simd.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.Tasklets/4.0.0.0__0738eb9f132ed756/Mono.Tasklets.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.WebBrowser/4.0.0.0__0738eb9f132ed756/Mono.WebBrowser.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.XBuild.Tasks/12.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.XBuild.Tasks/14.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.dll.mdb
Error: Orphaned: lib/mono/gac/Mono.XBuild.Tasks/4.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.dll.mdb
Error: Orphaned: lib/mono/gac/Novell.Directory.Ldap/4.0.0.0__0738eb9f132ed756/Novell.Directory.Ldap.dll.mdb
Error: Orphaned: lib/mono/gac/PEAPI/4.0.0.0__0738eb9f132ed756/PEAPI.dll.mdb
Error: Orphaned: lib/mono/gac/RabbitMQ.Client/4.0.0.0__b03f5f7f11d50a3a/RabbitMQ.Client.dll.mdb
Error: Orphaned: lib/mono/gac/SMDiagnostics/0.0.0.0__b77a5c561934e089/SMDiagnostics.dll.mdb
Error: Orphaned: lib/mono/gac/System.ComponentModel.Composition/4.0.0.0__b77a5c561934e089/System.ComponentModel.Composition.dll.mdb
Error: Orphaned: lib/mono/gac/System.ComponentModel.DataAnnotations/4.0.0.0__31bf3856ad364e35/System.ComponentModel.DataAnnotations.dll.mdb
Error: Orphaned: lib/mono/gac/System.Configuration.Install/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.Install.dll.mdb
Error: Orphaned: lib/mono/gac/System.Configuration/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.mdb
Error: Orphaned: lib/mono/gac/System.Core/4.0.0.0__b77a5c561934e089/System.Core.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.DataSetExtensions/4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.Entity/4.0.0.0__b77a5c561934e089/System.Data.Entity.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.Linq/4.0.0.0__b77a5c561934e089/System.Data.Linq.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.OracleClient/4.0.0.0__b77a5c561934e089/System.Data.OracleClient.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.Services.Client/4.0.0.0__b77a5c561934e089/System.Data.Services.Client.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data.Services/4.0.0.0__b77a5c561934e089/System.Data.Services.dll.mdb
Error: Orphaned: lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.dll.mdb
Error: Orphaned: lib/mono/gac/System.Deployment/4.0.0.0__b03f5f7f11d50a3a/System.Deployment.dll.mdb
Error: Orphaned: lib/mono/gac/System.Design/4.0.0.0__b03f5f7f11d50a3a/System.Design.dll.mdb
Error: Orphaned: lib/mono/gac/System.DirectoryServices.Protocols/4.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.Protocols.dll.mdb
Error: Orphaned: lib/mono/gac/System.DirectoryServices/4.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.dll.mdb
Error: Orphaned: lib/mono/gac/System.Drawing.Design/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.Design.dll.mdb
Error: Orphaned: lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.mdb
Error: Orphaned: lib/mono/gac/System.Dynamic/4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll.mdb
Error: Orphaned: lib/mono/gac/System.EnterpriseServices/4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll.mdb
Error: Orphaned: lib/mono/gac/System.IO.Compression.FileSystem/4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.dll.mdb
Error: Orphaned: lib/mono/gac/System.IO.Compression/4.0.0.0__b77a5c561934e089/System.IO.Compression.dll.mdb
Error: Orphaned: lib/mono/gac/System.IdentityModel.Selectors/4.0.0.0__b77a5c561934e089/System.IdentityModel.Selectors.dll.mdb
Error: Orphaned: lib/mono/gac/System.IdentityModel/4.0.0.0__b77a5c561934e089/System.IdentityModel.dll.mdb
Error: Orphaned: lib/mono/gac/System.Json.Microsoft/4.0.0.0__31bf3856ad364e35/System.Json.Microsoft.dll.mdb
Error: Orphaned: lib/mono/gac/System.Json/4.0.0.0__31bf3856ad364e35/System.Json.dll.mdb
Error: Orphaned: lib/mono/gac/System.Management/4.0.0.0__b03f5f7f11d50a3a/System.Management.dll.mdb
Error: Orphaned: lib/mono/gac/System.Messaging/4.0.0.0__b03f5f7f11d50a3a/System.Messaging.dll.mdb
Error: Orphaned: lib/mono/gac/System.Net.Http.Formatting/4.0.0.0__31bf3856ad364e35/System.Net.Http.Formatting.dll.mdb
Error: Orphaned: lib/mono/gac/System.Net.Http.WebRequest/4.0.0.0__b03f5f7f11d50a3a/System.Net.Http.WebRequest.dll.mdb
Error: Orphaned: lib/mono/gac/System.Net.Http/4.0.0.0__b03f5f7f11d50a3a/System.Net.Http.dll.mdb
Error: Orphaned: lib/mono/gac/System.Net/4.0.0.0__b03f5f7f11d50a3a/System.Net.dll.mdb
Error: Orphaned: lib/mono/gac/System.Numerics.Vectors/4.0.0.0__b03f5f7f11d50a3a/System.Numerics.Vectors.dll.mdb
Error: Orphaned: lib/mono/gac/System.Numerics/4.0.0.0__b77a5c561934e089/System.Numerics.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Core/2.2.0.0__31bf3856ad364e35/System.Reactive.Core.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Debugger/2.2.0.0__31bf3856ad364e35/System.Reactive.Debugger.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Experimental/2.2.0.0__31bf3856ad364e35/System.Reactive.Experimental.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Interfaces/2.2.0.0__31bf3856ad364e35/System.Reactive.Interfaces.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Linq/2.2.0.0__31bf3856ad364e35/System.Reactive.Linq.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Observable.Aliases/0.0.0.0__31bf3856ad364e35/System.Reactive.Observable.Aliases.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.PlatformServices/2.2.0.0__31bf3856ad364e35/System.Reactive.PlatformServices.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Providers/2.2.0.0__31bf3856ad364e35/System.Reactive.Providers.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Runtime.Remoting/2.2.0.0__31bf3856ad364e35/System.Reactive.Runtime.Remoting.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Windows.Forms/2.2.0.0__31bf3856ad364e35/System.Reactive.Windows.Forms.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reactive.Windows.Threading/2.2.0.0__31bf3856ad364e35/System.Reactive.Windows.Threading.dll.mdb
Error: Orphaned: lib/mono/gac/System.Reflection.Context/4.0.0.0__b77a5c561934e089/System.Reflection.Context.dll.mdb
Error: Orphaned: lib/mono/gac/System.Runtime.Caching/4.0.0.0__b03f5f7f11d50a3a/System.Runtime.Caching.dll.mdb
Error: Orphaned: lib/mono/gac/System.Runtime.DurableInstancing/4.0.0.0__31bf3856ad364e35/System.Runtime.DurableInstancing.dll.mdb
Error: Orphaned: lib/mono/gac/System.Runtime.Remoting/4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll.mdb
Error: Orphaned: lib/mono/gac/System.Runtime.Serialization.Formatters.Soap/4.0.0.0__b03f5f7f11d50a3a/System.Runtime.Serialization.Formatters.Soap.dll.mdb
Error: Orphaned: lib/mono/gac/System.Runtime.Serialization/4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll.mdb
Error: Orphaned: lib/mono/gac/System.Security/4.0.0.0__b03f5f7f11d50a3a/System.Security.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel.Activation/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Activation.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel.Discovery/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Discovery.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel.Internals/0.0.0.0__b77a5c561934e089/System.ServiceModel.Internals.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel.Routing/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Routing.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel.Web/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Web.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceModel/4.0.0.0__b77a5c561934e089/System.ServiceModel.dll.mdb
Error: Orphaned: lib/mono/gac/System.ServiceProcess/4.0.0.0__b03f5f7f11d50a3a/System.ServiceProcess.dll.mdb
Error: Orphaned: lib/mono/gac/System.Threading.Tasks.Dataflow/4.0.0.0__b77a5c561934e089/System.Threading.Tasks.Dataflow.dll.mdb
Error: Orphaned: lib/mono/gac/System.Transactions/4.0.0.0__b77a5c561934e089/System.Transactions.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Abstractions/4.0.0.0__31bf3856ad364e35/System.Web.Abstractions.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.ApplicationServices/4.0.0.0__31bf3856ad364e35/System.Web.ApplicationServices.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.DynamicData/4.0.0.0__31bf3856ad364e35/System.Web.DynamicData.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Extensions.Design/4.0.0.0__31bf3856ad364e35/System.Web.Extensions.Design.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Extensions/4.0.0.0__31bf3856ad364e35/System.Web.Extensions.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Http.SelfHost/4.0.0.0__31bf3856ad364e35/System.Web.Http.SelfHost.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Http.WebHost/4.0.0.0__31bf3856ad364e35/System.Web.Http.WebHost.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Http/4.0.0.0__31bf3856ad364e35/System.Web.Http.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Mobile/4.0.0.0__b03f5f7f11d50a3a/System.Web.Mobile.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Mvc/3.0.0.0__31bf3856ad364e35/System.Web.Mvc.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Razor/2.0.0.0__31bf3856ad364e35/System.Web.Razor.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.RegularExpressions/4.0.0.0__b03f5f7f11d50a3a/System.Web.RegularExpressions.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Routing/4.0.0.0__31bf3856ad364e35/System.Web.Routing.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.Services/4.0.0.0__b03f5f7f11d50a3a/System.Web.Services.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.WebPages.Deployment/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Deployment.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.WebPages.Razor/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web.WebPages/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.dll.mdb
Error: Orphaned: lib/mono/gac/System.Web/4.0.0.0__b03f5f7f11d50a3a/System.Web.dll.mdb
Error: Orphaned: lib/mono/gac/System.Windows.Forms.DataVisualization/4.0.0.0__31bf3856ad364e35/System.Windows.Forms.DataVisualization.dll.mdb
Error: Orphaned: lib/mono/gac/System.Windows.Forms/4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.mdb
Error: Orphaned: lib/mono/gac/System.Workflow.Activities/4.0.0.0__31bf3856ad364e35/System.Workflow.Activities.dll.mdb
Error: Orphaned: lib/mono/gac/System.Workflow.ComponentModel/4.0.0.0__31bf3856ad364e35/System.Workflow.ComponentModel.dll.mdb
Error: Orphaned: lib/mono/gac/System.Workflow.Runtime/4.0.0.0__31bf3856ad364e35/System.Workflow.Runtime.dll.mdb
Error: Orphaned: lib/mono/gac/System.Xaml/4.0.0.0__b77a5c561934e089/System.Xaml.dll.mdb
Error: Orphaned: lib/mono/gac/System.Xml.Linq/4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll.mdb
Error: Orphaned: lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll.mdb
Error: Orphaned: lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll.mdb
Error: Orphaned: lib/mono/gac/WebMatrix.Data/4.0.0.0__0738eb9f132ed756/WebMatrix.Data.dll.mdb
Error: Orphaned: lib/mono/gac/WindowsBase/4.0.0.0__31bf3856ad364e35/WindowsBase.dll.mdb
Error: Orphaned: lib/mono/gac/cscompmgd/0.0.0.0__b03f5f7f11d50a3a/cscompmgd.dll.mdb
Error: Orphaned: lib/mono/gac/mono-service/4.0.0.0__0738eb9f132ed756/mono-service.exe.mdb
Error: Orphaned: lib/mono/gac/monodoc/1.0.0.0__0738eb9f132ed756/monodoc.dll.mdb
Error: Orphaned: lib/mono/mono-configuration-crypto/4.5/Mono.Configuration.Crypto.dll.mdb
Error: Orphaned: lib/mono/mono-configuration-crypto/4.5/mono-configuration-crypto.exe.mdb
Error: Orphaned: lib/mono/xbuild/12.0/bin/xbuild.exe.mdb
Error: Orphaned: lib/mono/xbuild/14.0/bin/xbuild.exe.mdb
Error: Orphaned: lib/mono/xbuild/Microsoft/NuGet/Microsoft.NuGet.Build.Tasks.dll.mdb
===> Checking for items in pkg-plist which are not in STAGEDIR
Error: Missing: lib/libmono-btls-shared.so
Error: Missing: lib/mono/4.5/Facades/Microsoft.Win32.Registry.AccessControl.pdb
Error: Missing: lib/mono/4.5/Facades/System.IO.FileSystem.AccessControl.pdb
Error: Missing: lib/mono/4.5/Facades/System.Reflection.TypeExtensions.pdb
Error: Missing: lib/mono/4.5/Facades/System.ServiceProcess.ServiceController.pdb
Error: Missing: lib/mono/4.5/Facades/System.Text.Encoding.CodePages.pdb
Error: Missing: lib/mono/4.5/Facades/System.Threading.AccessControl.pdb
Error: Missing: lib/mono/4.5/Mono.Btls.Interface.dll
Error: Missing: lib/mono/4.5/RabbitMQ.Client.Apigen.pdb
Error: Missing: lib/mono/4.5/al.pdb
Error: Missing: lib/mono/4.5/aprofutil.pdb
Error: Missing: lib/mono/4.5/browsercaps-updater.pdb
Error: Missing: lib/mono/4.5/caspol.pdb
Error: Missing: lib/mono/4.5/cccheck.pdb
Error: Missing: lib/mono/4.5/ccrewrite.pdb
Error: Missing: lib/mono/4.5/cert-sync.pdb
Error: Missing: lib/mono/4.5/cert2spc.pdb
Error: Missing: lib/mono/4.5/certmgr.pdb
Error: Missing: lib/mono/4.5/chktrust.pdb
Error: Missing: lib/mono/4.5/crlupdate.pdb
Error: Missing: lib/mono/4.5/csharp.pdb
Error: Missing: lib/mono/4.5/culevel.pdb
Error: Missing: lib/mono/4.5/disco.pdb
Error: Missing: lib/mono/4.5/dtd2rng.pdb
Error: Missing: lib/mono/4.5/dtd2xsd.pdb
Error: Missing: lib/mono/4.5/gacutil.pdb
Error: Missing: lib/mono/4.5/genxs.pdb
Error: Missing: lib/mono/4.5/httpcfg.pdb
Error: Missing: lib/mono/4.5/ictool.pdb
Error: Missing: lib/mono/4.5/ikdasm.pdb
Error: Missing: lib/mono/4.5/ilasm.pdb
Error: Missing: lib/mono/4.5/illinkanalyzer.pdb
Error: Missing: lib/mono/4.5/installutil.pdb
Error: Missing: lib/mono/4.5/installvst.pdb
Error: Missing: lib/mono/4.5/lc.pdb
Error: Missing: lib/mono/4.5/macpack.pdb
Error: Missing: lib/mono/4.5/makecert.pdb
Error: Missing: lib/mono/4.5/mconfig.pdb
Error: Missing: lib/mono/4.5/mcs.pdb
Error: Missing: lib/mono/4.5/mdbrebase.pdb
Error: Missing: lib/mono/4.5/mdoc.exe
Error: Missing: lib/mono/4.5/mdoc.pdb
Error: Missing: lib/mono/4.5/mkbundle.pdb
Error: Missing: lib/mono/4.5/mod.pdb
Error: Missing: lib/mono/4.5/mono-api-diff.pdb
Error: Missing: lib/mono/4.5/mono-api-html.pdb
Error: Missing: lib/mono/4.5/mono-api-info.pdb
Error: Missing: lib/mono/4.5/mono-cil-strip.pdb
Error: Missing: lib/mono/4.5/mono-service.pdb
Error: Missing: lib/mono/4.5/mono-shlib-cop.pdb
Error: Missing: lib/mono/4.5/mono-symbolicate.pdb
Error: Missing: lib/mono/4.5/mono-xmltool.pdb
Error: Missing: lib/mono/4.5/monolinker.exe
Error: Missing: lib/mono/4.5/monolinker.pdb
Error: Missing: lib/mono/4.5/monop.pdb
Error: Missing: lib/mono/4.5/mozroots.pdb
Error: Missing: lib/mono/4.5/mscorlib.pdb
Error: Missing: lib/mono/4.5/pdb2mdb.pdb
Error: Missing: lib/mono/4.5/permview.pdb
Error: Missing: lib/mono/4.5/resgen.pdb
Error: Missing: lib/mono/4.5/secutil.pdb
Error: Missing: lib/mono/4.5/setreg.pdb
Error: Missing: lib/mono/4.5/sgen.pdb
Error: Missing: lib/mono/4.5/signcode.pdb
Error: Missing: lib/mono/4.5/sn.pdb
Error: Missing: lib/mono/4.5/soapsuds.pdb
Error: Missing: lib/mono/4.5/sqlmetal.pdb
Error: Missing: lib/mono/4.5/sqlsharp.pdb
Error: Missing: lib/mono/4.5/svcutil.pdb
Error: Missing: lib/mono/4.5/wsdl.pdb
Error: Missing: lib/mono/4.5/xbuild.pdb
Error: Missing: lib/mono/4.5/xsd.pdb
Error: Missing: lib/mono/gac/Accessibility/4.0.0.0__b03f5f7f11d50a3a/Accessibility.pdb
Error: Missing: lib/mono/gac/Commons.Xml.Relaxng/4.0.0.0__0738eb9f132ed756/Commons.Xml.Relaxng.pdb
Error: Missing: lib/mono/gac/CustomMarshalers/4.0.0.0__b03f5f7f11d50a3a/CustomMarshalers.pdb
Error: Missing: lib/mono/gac/I18N.CJK/4.0.0.0__0738eb9f132ed756/I18N.CJK.pdb
Error: Missing: lib/mono/gac/I18N.MidEast/4.0.0.0__0738eb9f132ed756/I18N.MidEast.pdb
Error: Missing: lib/mono/gac/I18N.Other/4.0.0.0__0738eb9f132ed756/I18N.Other.pdb
Error: Missing: lib/mono/gac/I18N.Rare/4.0.0.0__0738eb9f132ed756/I18N.Rare.pdb
Error: Missing: lib/mono/gac/I18N.West/4.0.0.0__0738eb9f132ed756/I18N.West.pdb
Error: Missing: lib/mono/gac/I18N/4.0.0.0__0738eb9f132ed756/I18N.pdb
Error: Missing: lib/mono/gac/IBM.Data.DB2/1.0.0.0__7c307b91aa13d208/IBM.Data.DB2.pdb
Error: Missing: lib/mono/gac/ICSharpCode.SharpZipLib/4.84.0.0__1b03e6acf1164f73/ICSharpCode.SharpZipLib.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Engine/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Engine/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Engine/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Engine.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Framework/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Framework/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Framework/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Framework.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Tasks.Core/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.Core.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Tasks.v12.0/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.v12.0.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Tasks.v4.0/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Tasks.v4.0.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Utilities.Core/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.Core.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Utilities.v12.0/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.v12.0.pdb
Error: Missing: lib/mono/gac/Microsoft.Build.Utilities.v4.0/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.Utilities.v4.0.pdb
Error: Missing: lib/mono/gac/Microsoft.Build/12.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.pdb
Error: Missing: lib/mono/gac/Microsoft.Build/14.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.pdb
Error: Missing: lib/mono/gac/Microsoft.Build/4.0.0.0__b03f5f7f11d50a3a/Microsoft.Build.pdb
Error: Missing: lib/mono/gac/Microsoft.CSharp/4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.pdb
Error: Missing: lib/mono/gac/Microsoft.VisualC/10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualC.pdb
Error: Missing: lib/mono/gac/Microsoft.Web.Infrastructure/1.0.0.0__31bf3856ad364e35/Microsoft.Web.Infrastructure.pdb
Error: Missing: lib/mono/gac/Mono.Btls.Interface/4.0.0.0__0738eb9f132ed756/Mono.Btls.Interface.dll
Error: Missing: lib/mono/gac/Mono.Btls.Interface/4.0.0.0__0738eb9f132ed756/Mono.Btls.Interface.pdb
Error: Missing: lib/mono/gac/Mono.CSharp/4.0.0.0__0738eb9f132ed756/Mono.CSharp.pdb
Error: Missing: lib/mono/gac/Mono.Cairo/4.0.0.0__0738eb9f132ed756/Mono.Cairo.pdb
Error: Missing: lib/mono/gac/Mono.Cecil/0.11.0.0__0738eb9f132ed756/Mono.Cecil.pdb
Error: Missing: lib/mono/gac/Mono.Cecil/0.9.5.0__0738eb9f132ed756/Mono.Cecil.pdb
Error: Missing: lib/mono/gac/Mono.CodeContracts/4.0.0.0__0738eb9f132ed756/Mono.CodeContracts.pdb
Error: Missing: lib/mono/gac/Mono.CompilerServices.SymbolWriter/4.0.0.0__0738eb9f132ed756/Mono.CompilerServices.SymbolWriter.pdb
Error: Missing: lib/mono/gac/Mono.Data.Sqlite/4.0.0.0__0738eb9f132ed756/Mono.Data.Sqlite.pdb
Error: Missing: lib/mono/gac/Mono.Data.Tds/4.0.0.0__0738eb9f132ed756/Mono.Data.Tds.pdb
Error: Missing: lib/mono/gac/Mono.Debugger.Soft/4.0.0.0__0738eb9f132ed756/Mono.Debugger.Soft.pdb
Error: Missing: lib/mono/gac/Mono.Http/4.0.0.0__0738eb9f132ed756/Mono.Http.pdb
Error: Missing: lib/mono/gac/Mono.Management/4.0.0.0__0738eb9f132ed756/Mono.Management.pdb
Error: Missing: lib/mono/gac/Mono.Messaging.RabbitMQ/4.0.0.0__0738eb9f132ed756/Mono.Messaging.RabbitMQ.pdb
Error: Missing: lib/mono/gac/Mono.Messaging/4.0.0.0__0738eb9f132ed756/Mono.Messaging.pdb
Error: Missing: lib/mono/gac/Mono.Parallel/4.0.0.0__0738eb9f132ed756/Mono.Parallel.pdb
Error: Missing: lib/mono/gac/Mono.Posix/4.0.0.0__0738eb9f132ed756/Mono.Posix.pdb
Error: Missing: lib/mono/gac/Mono.Profiler.Log/4.0.0.0__0738eb9f132ed756/Mono.Profiler.Log.pdb
Error: Missing: lib/mono/gac/Mono.Security.Win32/4.0.0.0__0738eb9f132ed756/Mono.Security.Win32.pdb
Error: Missing: lib/mono/gac/Mono.Security/4.0.0.0__0738eb9f132ed756/Mono.Security.pdb
Error: Missing: lib/mono/gac/Mono.Simd/4.0.0.0__0738eb9f132ed756/Mono.Simd.pdb
Error: Missing: lib/mono/gac/Mono.Tasklets/4.0.0.0__0738eb9f132ed756/Mono.Tasklets.pdb
Error: Missing: lib/mono/gac/Mono.WebBrowser/4.0.0.0__0738eb9f132ed756/Mono.WebBrowser.pdb
Error: Missing: lib/mono/gac/Mono.XBuild.Tasks/12.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.pdb
Error: Missing: lib/mono/gac/Mono.XBuild.Tasks/14.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.pdb
Error: Missing: lib/mono/gac/Mono.XBuild.Tasks/4.0.0.0__0738eb9f132ed756/Mono.XBuild.Tasks.pdb
Error: Missing: lib/mono/gac/Novell.Directory.Ldap/4.0.0.0__0738eb9f132ed756/Novell.Directory.Ldap.pdb
Error: Missing: lib/mono/gac/PEAPI/4.0.0.0__0738eb9f132ed756/PEAPI.pdb
Error: Missing: lib/mono/gac/RabbitMQ.Client/4.0.0.0__b03f5f7f11d50a3a/RabbitMQ.Client.pdb
Error: Missing: lib/mono/gac/SMDiagnostics/0.0.0.0__b77a5c561934e089/SMDiagnostics.pdb
Error: Missing: lib/mono/gac/System.ComponentModel.Composition/4.0.0.0__b77a5c561934e089/System.ComponentModel.Composition.pdb
Error: Missing: lib/mono/gac/System.ComponentModel.DataAnnotations/4.0.0.0__31bf3856ad364e35/System.ComponentModel.DataAnnotations.pdb
Error: Missing: lib/mono/gac/System.Configuration.Install/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.Install.pdb
Error: Missing: lib/mono/gac/System.Configuration/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.pdb
Error: Missing: lib/mono/gac/System.Core/4.0.0.0__b77a5c561934e089/System.Core.pdb
Error: Missing: lib/mono/gac/System.Data.DataSetExtensions/4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.pdb
Error: Missing: lib/mono/gac/System.Data.Entity/4.0.0.0__b77a5c561934e089/System.Data.Entity.pdb
Error: Missing: lib/mono/gac/System.Data.Linq/4.0.0.0__b77a5c561934e089/System.Data.Linq.pdb
Error: Missing: lib/mono/gac/System.Data.OracleClient/4.0.0.0__b77a5c561934e089/System.Data.OracleClient.pdb
Error: Missing: lib/mono/gac/System.Data.Services.Client/4.0.0.0__b77a5c561934e089/System.Data.Services.Client.pdb
Error: Missing: lib/mono/gac/System.Data.Services/4.0.0.0__b77a5c561934e089/System.Data.Services.pdb
Error: Missing: lib/mono/gac/System.Data/4.0.0.0__b77a5c561934e089/System.Data.pdb
Error: Missing: lib/mono/gac/System.Deployment/4.0.0.0__b03f5f7f11d50a3a/System.Deployment.pdb
Error: Missing: lib/mono/gac/System.Design/4.0.0.0__b03f5f7f11d50a3a/System.Design.pdb
Error: Missing: lib/mono/gac/System.DirectoryServices.Protocols/4.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.Protocols.pdb
Error: Missing: lib/mono/gac/System.DirectoryServices/4.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.pdb
Error: Missing: lib/mono/gac/System.Drawing.Design/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.Design.pdb
Error: Missing: lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.pdb
Error: Missing: lib/mono/gac/System.Dynamic/4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.pdb
Error: Missing: lib/mono/gac/System.EnterpriseServices/4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.pdb
Error: Missing: lib/mono/gac/System.IO.Compression.FileSystem/4.0.0.0__b77a5c561934e089/System.IO.Compression.FileSystem.pdb
Error: Missing: lib/mono/gac/System.IO.Compression/4.0.0.0__b77a5c561934e089/System.IO.Compression.pdb
Error: Missing: lib/mono/gac/System.IdentityModel.Selectors/4.0.0.0__b77a5c561934e089/System.IdentityModel.Selectors.pdb
Error: Missing: lib/mono/gac/System.IdentityModel/4.0.0.0__b77a5c561934e089/System.IdentityModel.pdb
Error: Missing: lib/mono/gac/System.Json.Microsoft/4.0.0.0__31bf3856ad364e35/System.Json.Microsoft.pdb
Error: Missing: lib/mono/gac/System.Json/4.0.0.0__31bf3856ad364e35/System.Json.pdb
Error: Missing: lib/mono/gac/System.Management/4.0.0.0__b03f5f7f11d50a3a/System.Management.pdb
Error: Missing: lib/mono/gac/System.Messaging/4.0.0.0__b03f5f7f11d50a3a/System.Messaging.pdb
Error: Missing: lib/mono/gac/System.Net.Http.Formatting/4.0.0.0__31bf3856ad364e35/System.Net.Http.Formatting.pdb
Error: Missing: lib/mono/gac/System.Net.Http.WebRequest/4.0.0.0__b03f5f7f11d50a3a/System.Net.Http.WebRequest.pdb
Error: Missing: lib/mono/gac/System.Net.Http/4.0.0.0__b03f5f7f11d50a3a/System.Net.Http.pdb
Error: Missing: lib/mono/gac/System.Net/4.0.0.0__b03f5f7f11d50a3a/System.Net.pdb
Error: Missing: lib/mono/gac/System.Numerics.Vectors/4.0.0.0__b03f5f7f11d50a3a/System.Numerics.Vectors.pdb
Error: Missing: lib/mono/gac/System.Numerics/4.0.0.0__b77a5c561934e089/System.Numerics.pdb
Error: Missing: lib/mono/gac/System.Reactive.Core/2.2.0.0__31bf3856ad364e35/System.Reactive.Core.pdb
Error: Missing: lib/mono/gac/System.Reactive.Debugger/2.2.0.0__31bf3856ad364e35/System.Reactive.Debugger.pdb
Error: Missing: lib/mono/gac/System.Reactive.Experimental/2.2.0.0__31bf3856ad364e35/System.Reactive.Experimental.pdb
Error: Missing: lib/mono/gac/System.Reactive.Interfaces/2.2.0.0__31bf3856ad364e35/System.Reactive.Interfaces.pdb
Error: Missing: lib/mono/gac/System.Reactive.Linq/2.2.0.0__31bf3856ad364e35/System.Reactive.Linq.pdb
Error: Missing: lib/mono/gac/System.Reactive.Observable.Aliases/0.0.0.0__31bf3856ad364e35/System.Reactive.Observable.Aliases.pdb
Error: Missing: lib/mono/gac/System.Reactive.PlatformServices/2.2.0.0__31bf3856ad364e35/System.Reactive.PlatformServices.pdb
Error: Missing: lib/mono/gac/System.Reactive.Providers/2.2.0.0__31bf3856ad364e35/System.Reactive.Providers.pdb
Error: Missing: lib/mono/gac/System.Reactive.Runtime.Remoting/2.2.0.0__31bf3856ad364e35/System.Reactive.Runtime.Remoting.pdb
Error: Missing: lib/mono/gac/System.Reactive.Windows.Forms/2.2.0.0__31bf3856ad364e35/System.Reactive.Windows.Forms.pdb
Error: Missing: lib/mono/gac/System.Reactive.Windows.Threading/2.2.0.0__31bf3856ad364e35/System.Reactive.Windows.Threading.pdb
Error: Missing: lib/mono/gac/System.Reflection.Context/4.0.0.0__b77a5c561934e089/System.Reflection.Context.pdb
Error: Missing: lib/mono/gac/System.Runtime.Caching/4.0.0.0__b03f5f7f11d50a3a/System.Runtime.Caching.pdb
Error: Missing: lib/mono/gac/System.Runtime.DurableInstancing/4.0.0.0__31bf3856ad364e35/System.Runtime.DurableInstancing.pdb
Error: Missing: lib/mono/gac/System.Runtime.Remoting/4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.pdb
Error: Missing: lib/mono/gac/System.Runtime.Serialization.Formatters.Soap/4.0.0.0__b03f5f7f11d50a3a/System.Runtime.Serialization.Formatters.Soap.pdb
Error: Missing: lib/mono/gac/System.Runtime.Serialization/4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.pdb
Error: Missing: lib/mono/gac/System.Security/4.0.0.0__b03f5f7f11d50a3a/System.Security.pdb
Error: Missing: lib/mono/gac/System.ServiceModel.Activation/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Activation.pdb
Error: Missing: lib/mono/gac/System.ServiceModel.Discovery/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Discovery.pdb
Error: Missing: lib/mono/gac/System.ServiceModel.Internals/0.0.0.0__b77a5c561934e089/System.ServiceModel.Internals.pdb
Error: Missing: lib/mono/gac/System.ServiceModel.Routing/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Routing.pdb
Error: Missing: lib/mono/gac/System.ServiceModel.Web/4.0.0.0__31bf3856ad364e35/System.ServiceModel.Web.pdb
Error: Missing: lib/mono/gac/System.ServiceModel/4.0.0.0__b77a5c561934e089/System.ServiceModel.pdb
Error: Missing: lib/mono/gac/System.ServiceProcess/4.0.0.0__b03f5f7f11d50a3a/System.ServiceProcess.pdb
Error: Missing: lib/mono/gac/System.Threading.Tasks.Dataflow/4.0.0.0__b77a5c561934e089/System.Threading.Tasks.Dataflow.pdb
Error: Missing: lib/mono/gac/System.Transactions/4.0.0.0__b77a5c561934e089/System.Transactions.pdb
Error: Missing: lib/mono/gac/System.Web.Abstractions/4.0.0.0__31bf3856ad364e35/System.Web.Abstractions.pdb
Error: Missing: lib/mono/gac/System.Web.ApplicationServices/4.0.0.0__31bf3856ad364e35/System.Web.ApplicationServices.pdb
Error: Missing: lib/mono/gac/System.Web.DynamicData/4.0.0.0__31bf3856ad364e35/System.Web.DynamicData.pdb
Error: Missing: lib/mono/gac/System.Web.Extensions.Design/4.0.0.0__31bf3856ad364e35/System.Web.Extensions.Design.pdb
Error: Missing: lib/mono/gac/System.Web.Extensions/4.0.0.0__31bf3856ad364e35/System.Web.Extensions.pdb
Error: Missing: lib/mono/gac/System.Web.Http.SelfHost/4.0.0.0__31bf3856ad364e35/System.Web.Http.SelfHost.pdb
Error: Missing: lib/mono/gac/System.Web.Http.WebHost/4.0.0.0__31bf3856ad364e35/System.Web.Http.WebHost.pdb
Error: Missing: lib/mono/gac/System.Web.Http/4.0.0.0__31bf3856ad364e35/System.Web.Http.pdb
Error: Missing: lib/mono/gac/System.Web.Mobile/4.0.0.0__b03f5f7f11d50a3a/System.Web.Mobile.pdb
Error: Missing: lib/mono/gac/System.Web.Mvc/3.0.0.0__31bf3856ad364e35/System.Web.Mvc.pdb
Error: Missing: lib/mono/gac/System.Web.Razor/2.0.0.0__31bf3856ad364e35/System.Web.Razor.pdb
Error: Missing: lib/mono/gac/System.Web.RegularExpressions/4.0.0.0__b03f5f7f11d50a3a/System.Web.RegularExpressions.pdb
Error: Missing: lib/mono/gac/System.Web.Routing/4.0.0.0__31bf3856ad364e35/System.Web.Routing.pdb
Error: Missing: lib/mono/gac/System.Web.Services/4.0.0.0__b03f5f7f11d50a3a/System.Web.Services.pdb
Error: Missing: lib/mono/gac/System.Web.WebPages.Deployment/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Deployment.pdb
Error: Missing: lib/mono/gac/System.Web.WebPages.Razor/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.pdb
Error: Missing: lib/mono/gac/System.Web.WebPages/2.0.0.0__31bf3856ad364e35/System.Web.WebPages.pdb
Error: Missing: lib/mono/gac/System.Web/4.0.0.0__b03f5f7f11d50a3a/System.Web.pdb
Error: Missing: lib/mono/gac/System.Windows.Forms.DataVisualization/4.0.0.0__31bf3856ad364e35/System.Windows.Forms.DataVisualization.pdb
Error: Missing: lib/mono/gac/System.Windows.Forms/4.0.0.0__b77a5c561934e089/System.Windows.Forms.pdb
Error: Missing: lib/mono/gac/System.Workflow.Activities/4.0.0.0__31bf3856ad364e35/System.Workflow.Activities.pdb
Error: Missing: lib/mono/gac/System.Workflow.ComponentModel/4.0.0.0__31bf3856ad364e35/System.Workflow.ComponentModel.pdb
Error: Missing: lib/mono/gac/System.Workflow.Runtime/4.0.0.0__31bf3856ad364e35/System.Workflow.Runtime.pdb
Error: Missing: lib/mono/gac/System.Xaml/4.0.0.0__b77a5c561934e089/System.Xaml.pdb
Error: Missing: lib/mono/gac/System.Xml.Linq/4.0.0.0__b77a5c561934e089/System.Xml.Linq.pdb
Error: Missing: lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.pdb
Error: Missing: lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.pdb
Error: Missing: lib/mono/gac/WebMatrix.Data/4.0.0.0__0738eb9f132ed756/WebMatrix.Data.pdb
Error: Missing: lib/mono/gac/WindowsBase/4.0.0.0__31bf3856ad364e35/WindowsBase.pdb
Error: Missing: lib/mono/gac/cscompmgd/0.0.0.0__b03f5f7f11d50a3a/cscompmgd.pdb
Error: Missing: lib/mono/gac/mono-service/4.0.0.0__0738eb9f132ed756/mono-service.pdb
Error: Missing: lib/mono/gac/monodoc/1.0.0.0__0738eb9f132ed756/monodoc.pdb
Error: Missing: lib/mono/mono-configuration-crypto/4.5/Mono.Configuration.Crypto.pdb
Error: Missing: lib/mono/mono-configuration-crypto/4.5/mono-configuration-crypto.pdb
Error: Missing: lib/mono/xbuild/12.0/bin/xbuild.pdb
Error: Missing: lib/mono/xbuild/14.0/bin/xbuild.pdb
Error: Missing: lib/mono/xbuild/Microsoft/NuGet/Microsoft.NuGet.Build.Tasks.pdb
Error: Missing: lib/monodoc/monodoc.xml
Error: Missing: lib/monodoc/sources/Mono.source
Error: Missing: lib/monodoc/sources/Mono.tree
Error: Missing: lib/monodoc/sources/Mono.zip
Error: Missing: lib/monodoc/sources/Novell.source
Error: Missing: lib/monodoc/sources/Novell.tree
Error: Missing: lib/monodoc/sources/Novell.zip
Error: Missing: lib/monodoc/sources/cs-errors.tree
Error: Missing: lib/monodoc/sources/cs-errors.zip
Error: Missing: lib/monodoc/sources/ecma334.tree
Error: Missing: lib/monodoc/sources/ecma334.zip
Error: Missing: lib/monodoc/sources/lang-csharp.source
Error: Missing: lib/monodoc/sources/netdocs.source
Error: Missing: lib/monodoc/sources/netdocs.tree
Error: Missing: lib/monodoc/sources/netdocs.zip

@pkubaj Amusingly, those plist errors are fully expected - ppc ISA produces different binary sets than x86. I forgot to note the change to Mono's makefiles to turn on ppc64; that's definitely on me. But honestly, I'm far more surprised it built at all. (I only have qemu where ppc64 is "no.") Can you please try without --disable-btls? I do expect failure there, but, hey! Maybe we'll be surprised, right?

The fix you proposed for configure.ac is actually incorrect though; that needs to be much more generalized because the absence of -mminimal-toc can't be assumed as FreeBSD-specific. That's a damn good catch of a weak test. I opened https://github.com/mono/mono/issues/18554 for this and I'll get this in upstream ASAP.

@pkubaj Amusingly, those plist errors are fully expected - ppc ISA produces different binary sets than x86. I forgot to note the change to Mono's makefiles to turn on ppc64; that's definitely on me. But honestly, I'm far more surprised it built at all. (I only have qemu where ppc64 is "no.") Can you please try without --disable-btls? I do expect failure there, but, hey! Maybe we'll be surprised, right?

The fix you proposed for configure.ac is actually incorrect though; that needs to be much more generalized because the absence of -mminimal-toc can't be assumed as FreeBSD-specific. That's a damn good catch of a weak test. I opened https://github.com/mono/mono/issues/18554 for this and I'll get this in upstream ASAP.

--disable-btls is only added on aarch64. On powerpc64 CONFIGURE_ARGS is the same as on amd64.

I was able to enable BTLS with:

CONFIGURE_ARGS_powerpc64=--enable-btls

in Makefile.

And:

@@ -4486,6 +4488,10 @@
                arch_target=ppc;
                case $host_os in
                  aix*|os400*)
+                       BTLS_SUPPORTED=yes
+                       BTLS_PLATFORM=powerpc
+                       ;;
+                 freebsd*)
                        BTLS_SUPPORTED=yes
                        BTLS_PLATFORM=powerpc
                        ;;

in configure.ac.

This works on both 12.1 and head.

@pkubaj can you please drop this attachment into files/ and re-test? Thanks!

Makefile
11

Okay, so what about for those of us who do not have a bit then? Also I have spoken with @feld and he stepped down from groups because he just doesn't have time, so he's not actually part of mono@.

And we did put the question of 'is anybody still alive' to the mailing list something like a year ago with no response. I also asked ports@ and got a lot of "please update it" with no response from any of the mono folks. I also reached out to individuals back then, same lack of response. The mailing list hasn't had any non-automated or non-spam traffic in over a year. There's multiple bugs including numerous ones with (now obsoleted by upstream) patches that have been open well over a year unaddressed.

As I said; I'm not unopposed at all to resurrecting mono@ but as a project, we really need to be certain that it's going to maintain stewardship of specific ports and not simply be a dumping ground for all things .NET. Especially as this is hoped to just be the beginning. My intent is to start here with Mono (the relatively low-hanging fruit,) and to progress onto full CoreCLR which fans out to dozens of things including better Azure and Azure Pipelines support.

dvl added a comment.EditedJan 27 2020, 7:45 PM

I have a clean testport of the raw diff on FreeBSD 12.1

EDIT: oops, I have these to report:

WARN: Makefile: [63]: whitespace before end of line.
WARN: Makefile: DEVELOPER is listed in OPTIONS_DEFINE, but no PORT_OPTIONS:MDEVELOPER appears.
WARN: Makefile: possible use of absolute pathname "/usr/local".
WARN: Makefile: possible direct use of "LOCALBASE?= /usr/local" found. if so, use ${PREFIX} or ${LOCALBASE}, as appropriate.
WARN: Makefile: use of DISTFILES with single file discouraged. distribution filename should be set by DISTNAME and EXTRACT_SUFX.

I have run time tested this patch with multimedia/emby-server for a few days now and it has worked fine. Build is clean on my system too (12-STABLE).

lwhsu added inline comments.Jan 30 2020, 4:06 AM
Makefile
11

I think changing the maintainer doesn't mean to sentence that mono@ is dead. We still have freebsd-mono@ mailing list and mono@ is forwarding to it.

Having him listed in the maintainer explicitly marks his responsibility, which is also a good thing.

I believe that @prj_rootwyrm.com is happy to see that more people join the mono and .NET efforts. Joining (or reviving?) the mono@ team and being the maintainer of mono port shouldn't be conflict. And I recommend him doing both. Note that being a committer isn't the requirement to join a ports team, he just need a committer to help get the patch from him or reviewed by him to commit to the tree. Helping mono@ is also a good practice for him to become a committer in the future.

I suggest that after other parts of this patch are good to commit, we can just let it go into the tree. This can attract more contributors and developers. When more people are contributing to mono@ and @prj_rootwyrm.com are feeling good, we can of course transfer the maintainershop to mono@ again.

Before commiting this patch, please also fix pkg-plist.
You could probably do it like:

.if ${ARCH} == powerpc64
PLIST_SUB+=DLL=""
.else
PLIST_SUB+=DLL="DLL"
.endif

and replace dll with %%DLL%% in pkg-plist.

  • Update to 6.8.0.105
  • Includes fix for powerpc64 building (patch has been upstreamed)
  • Includes @greg_unrelenting.technology 's patch partially; testing is required here. All of the Mono changes were already done upstream except for the boringssl portion. Some were done slightly differently (e.g. REDZONE is for all !APPLE) and revisions were necessary to boehm being deprecated/externalized.

The issue with MCS/CSC insta-crashing on qemu is a known issue due to qemu limitations and Roslyn behaviors, so if anyone knows how I can say "aarch64 as long as it's not qemu" that would be very helpful. Users on qemu should expect this port to NOT build, while users on native arm should have no issues.

arrowd added a subscriber: arrowd.Feb 9 2020, 6:59 AM

if anyone knows how I can say "aarch64 as long as it's not qemu" that would be very helpful. Users on qemu should expect this port to NOT build, while users on native arm should have no issues.

lang/ghc has

.ifdef QEMU_EMULATING
IGNORE= qemu-user-static isn't able to build lang/ghc, but it builds fine on a real hardware
.endif
  • Update to 6.8.0.105
  • Includes fix for powerpc64 building (patch has been upstreamed)
  • Includes @greg_unrelenting.technology 's patch partially; testing is required here. All of the Mono changes were already done upstream except for the boringssl portion. Some were done slightly differently (e.g. REDZONE is for all !APPLE) and revisions were necessary to boehm being deprecated/externalized.

The issue with MCS/CSC insta-crashing on qemu is a known issue due to qemu limitations and Roslyn behaviors, so if anyone knows how I can say "aarch64 as long as it's not qemu" that would be very helpful. Users on qemu should expect this port to NOT build, while users on native arm should have no issues.

This last version update has some plist issues for me as well (amd64 on STABLE12). Please check with Poudriere for QA before updating the diff. If possible. ;-).

! In D23300#518091, @driesm.michiels_gmail.com wrote:

This last version update has some plist issues for me as well (amd64 on STABLE12). Please check with Poudriere for QA before updating the diff. If possible. ;-).

Well, this is definitely "interesting" in the "that's not supposed to happen" vein. I did get reproduction of the plist issue with poudriere, using -t, but no warnings or missing files _without_ -t. Which obviously is wrong both ways.
The problem here is that ppc64 (ELFv1 and v2 both) install everything in plist _plus_ everything %%PPC64%%. However, upon reviewing a similar situation, it looks like I took the 'old bad way' approach. Which is moot when I took the diff from the wrong svn tree, so it was missing the whole %%PPC64%% handling block anyway! (Pointy-hat awarded to: me.)

This diff should resolve the plist issue fully and much more correctly.

This diff should resolve the plist issue fully and much more correctly.

Yes looks good in Poudriere again here too. Thank you.

pkubaj requested changes to this revision.Feb 11 2020, 8:50 PM

On powerpc64, I'm still getting:

configure: error: unknown target

This is because in configure.ac, there's neither powerpc64-*-freebsd, nor powerpc*-*-freebsd:

macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \
powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* | \
powerpc-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )
This revision now requires changes to proceed.Feb 11 2020, 8:50 PM
mat added inline comments.Feb 12 2020, 2:37 PM
Makefile
31–67

Wrong place in the Makefile. See Chapter 15. Order of Variables in Port Makefiles.

Also, the .if will never work, PORT_OPTIONS is only defined after including bsd.port.options.mk. You would be better of using a helper in this case.

78–80

Before any include, ARCH is not defined, so this cannot possibly work.

Also, at that point, PLIST is not set, so no need to use +=.

On powerpc64, I'm still getting:

configure: error: unknown target

This is because in configure.ac, there's neither powerpc64-*-freebsd, nor powerpc*-*-freebsd:

Wups. Classic typo error on my part when re-splitting out the patch from when I upstreamed. That actually should read as it does in upstream:

powerpc*-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )

Note that the behavior around the AC_CHECK_COMPILE_FLAG for -mminimal-toc that seems wrong, is actually deliberate. I put the ELFv1 and ELFv2 flags in that way strictly to expose them as hinges in the event problems are uncovered that are FreeBSD specific. The other way actively broke AIX builds, and setting things more globally would break PASE (which is non-ELF.) And yes, Mono really builds on OS/400 and PASE.

mat added a comment.Feb 12 2020, 3:18 PM

Also, could you use devel/arcanist, or at least generate a diff with full context like it does, with svn diff -x -U9999 or git diff -U9999.

  • Reorder Makefile and expand to svn diff -x -U999999 as requested by @mat
  • Fixed typo in files/patch-powerpc64; this now matches powerpc*-*-freebsd* as in upstream
  • Correctly mark BROKEN for QEMU_EMULATING; Roslyn is very picky about POSIX and does not like qemu
  • Fix .if ${ARCH} PLIST handling by switching to pre/post.mk; accurate plists are still needed for ppc64 ELFv1, arm*, and arm64* This is based on https://reviews.freebsd.org/D22451
  • Remove "EXPERIMENTAL" from Ninja; this is well-tested and perfectly safe. It will remain non-default because of the number of dependencies it pulls in.
  • Remove 'TZ' from MAKE_ENV; this actually hasn't been necessary for a while
  • Correct branch comment; 6.8.0.105 is actually branch 2020-02
pkubaj requested changes to this revision.Feb 17 2020, 9:31 PM

It still fails with:

configure: error: unknown target

on powerpc64.
Since I may have worded myself wrong before, here's a complete patch for configure.ac:

--- configure.ac.orig   2020-02-17 20:58:04.818069000 +0000
+++ configure.ac        2020-02-17 21:30:00.091801000 +0000
@@ -4467,13 +4467,27 @@
                ;;
        macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \
         powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* | \
-        powerpc-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )
+        powerpc*-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* )
                if test "x$ac_cv_sizeof_void_p" = "x8"; then
                        TARGET=POWERPC64;
                        CPPFLAGS="$CPPFLAGS -D__mono_ppc__ -D__mono_ppc64__"
-                       if ! (echo $CC | grep -q -- 'clang'); then
-                               CFLAGS="$CFLAGS -mminimal-toc"
-                       fi
+                       AC_MSG_NOTICE([Checking for PowerPC ISA -mminimal-toc support])
+                       AX_CHECK_COMPILE_FLAG(
+                               [-mminimal-toc],
+                               [CFLAGS="$CFLAGS -mminimal-toc"],
+                               [CFLAGS="$CFLAGS"]
+                       )
+                       case "$host" in
+                               powerpc*-*-freebsd*)
+                                       # We need to be aware if we are ELFv1 or v2 here
+                                       AC_MSG_NOTICE([Checking FreeBSD ELF version])
+                                       if ! ( echo | cc -dM -E - | awk '/_CALL_ELF/ {print $NF}'); then
+                                               AC_DEFINE([POWERPC_ELF], 1, [PowerPC ELFv1])
+                                       else
+                                               AC_DEFINE([POWERPC_ELFV2], 1, [PowerPC ELFv2])
+                                       fi
+                                       ;;
+                       esac
                else
                        TARGET=POWERPC;
                        CPPFLAGS="$CPPFLAGS -D__mono_ppc__"
This revision now requires changes to proceed.Feb 17 2020, 9:31 PM
prj_rootwyrm.com retitled this revision from lang/mono: take maintainership, update to 6.8.0.96 to lang/mono: take maintainership, update to 6.8.0.105.

Apologies for the apparent radio silence; I've actually been working on some high priority issues in upstream and trying to sort out inotify. The patch issue with ppc64 was actually just an SVN hiccup. Upstream patch is correct and will be in next release. This should be ready to go for ppc64 and aarch64.
@greg_unrelenting.technology - your patch should ONLY need to touch external/boringssl/crypto/cpu-aarch64-linux.c at this point, but I can't test here. If that's the case, can you please submit a PR with it to https://github.com/mono/boringssl ?

The inotify issue is now fixed, however, testing with real-world identified that it is extremely necessary, and some minor linking issues were found related to NuGet handling. So some significant changes are in this commit. It should be ready to go as of now though.

  • Removed INOTIFY option; devel/libinotify is now a hard dependency due to file permission reading issues
  • Added dependency on archivers/zip; the absence could now prevent some NuGet consumers from working
  • Removed SQLITE option; databases/sqlite3 is now a hard dependency (virtually guaranteed present anyway)
  • Renamed DEVELOP option to MONODEV, clarified that it is for Mono development
  • Switched to use of autogen.sh to bring patches in line with upstream (due to how tarballs are generated)
  • Removed virtually all ${REINPLACE_CMD} as these are no longer necessary

Most of the SHEBANG_FIX files will also no longer need SHEBANG_FIX (meaning it will only need BINARY_ALIAS for python3) in the future, but 6.8.0.105 isn't there yet, so I'm putting that review off for the next release.

pkubaj requested changes to this revision.Mar 17 2020, 7:52 PM

It doesn't apply after r526962:

pkubaj@talos:$/usr/ports/lang/mono$ doas svn patch D23300.diff
C         Makefile
>         rejected hunk @@ -2,94 +2,118 @@
U         distinfo
A         files/patch-btls-aarch64
D         files/patch-configure.ac
D         files/patch-mcs_class_Mono.Security_Mono.Security.Cryptography_KeyPairPersistence.cs
D         files/patch-mcs_class_Mono.Security_Mono.Security.X509_X509StoreManager.cs
D         files/patch-mcs_tools_mono-configuration-crypto_lib_Mono.Configuration.Crypto_KeyContainerCollection.cs
D         files/patch-mcs_tools_xbuild_data_12.0_Microsoft.CSharp.targets
D         files/patch-mcs_tools_xbuild_data_14.0_Microsoft.CSharp.targets
A         files/patch-mono_configure.ac
D         files/patch-mono_eglib_gfile-posix.c
A         files/patch-mono_metadata_Makefile.am
G         files/patch-mono_mini_Makefile.am.in
>         hunk @@ -1,11 +0,0 @@ already applied
D         files/patch-mono_mini_tramp-amd64.c
D         files/patch-mono_utils_mono-context.h
D         files/patch-mono_utils_mono-threads.c
D         files/patch-scripts_mono-heapviz
U         pkg-message
U         pkg-plist
A         pkg-plist.powerpc
Summary of conflicts:
  Text conflicts: 1

Can you rebase Makefile patch?

This revision now requires changes to proceed.Mar 17 2020, 7:52 PM

@greg_unrelenting.technology - your patch should ONLY need to touch external/boringssl/crypto/cpu-aarch64-linux.c at this point, but I can't test here. If that's the case, can you please submit a PR with it to https://github.com/mono/boringssl ?

Here: https://github.com/mono/boringssl/pull/23

It doesn't apply after r526962:

Oof.. and r526962 is unnecessary with 6.8.0.105 (because the port was written to require a minimum python 3.6) so I end up bulldozing it anyways. However, testing the rebase exposed a problem I missed - misbehavior with ccache that breaks builds. Only reason I caught it is three-way testing. So if a PORTREV bump is needed and the builder uses ccacche, it WILL fail to build correctly. Added NO_CCACHE= yes to prevent this in the event PORTREV is bumped.

I also redid the patches slightly, combining the inotify fix into a single patch file.

Noting here that as of today, all patches to 6.8.0.105 have been upstreamed
https://github.com/mono/boringssl/pull/23
https://github.com/mono/mono/pull/19234

pkubaj accepted this revision.Mar 21 2020, 1:07 AM

Builds fine, but I still have pkg-plist errors, probably because of missing pkg-plist.powerpc. And since this file is missing, all the files that are installed are orphaned.

I'm attaching pkg-plist.powerpc that I myself generated.

Other than this issue, it seems ok.

This revision is now accepted and ready to land.Mar 21 2020, 1:07 AM
mikael accepted this revision.Mar 21 2020, 3:45 PM
mikael removed reviewers: linimon, pkubaj.

It builds fine on aarch64, nice work!

It builds fine on aarch64, nice work!

hm, was that not on -current? I see the ifndef ID_AA64ISAR0_AES_VAL stuff from my github PR didn't make it here yet

It builds fine on aarch64, nice work!

hm, was that not on -current? I see the ifndef ID_AA64ISAR0_AES_VAL stuff from my github PR didn't make it here yet

Oups, yeah, I manually patched it.

How close are we to getting this committed? Are there still some open points or is it fine as is ATM?

Time has come that someone commits this accepted review.

I am a mentored committer so I can do it once my mentors give me approval.
@gerald, @tcberner: Can I proceed?

Time has come that someone commits this accepted review.

I am a mentored committer so I can do it once my mentors give me approval.
@gerald, @tcberner: Can I proceed?

Don't forget about pkg-plist.powerpc that I attached.

Time has come that someone commits this accepted review.

I am a mentored committer so I can do it once my mentors give me approval.
@gerald, @tcberner: Can I proceed?

Don't forget about pkg-plist.powerpc that I attached.

Thank you very much for pointing at it :)

tobik added a subscriber: tobik.Apr 14 2020, 3:55 PM
tobik added inline comments.
Makefile
70

This does not look ready to me. All the options are broken now because they are defined after bsd.port.options.mk.

@tobik : you are right. I won't commit it blindly even it has already been approved and I will review it carefully. Thanks!

salvadore added inline comments.Apr 14 2020, 9:27 PM
Makefile
27

^ iconv is still present here, although you added USES=iconv.

salvadore requested changes to this revision.Apr 15 2020, 3:05 PM

Thanks!

@prj_rootwyrm.com:
Can you please recreate the patch including all the files and changes requested? This include:

Thanks.

This revision now requires changes to proceed.Apr 15 2020, 3:05 PM
justin_kyryli.uk rescinded a token.
justin_kyryli.uk awarded a token.
pkubaj requested changes to this revision.Sun, May 24, 9:55 PM

Looking at the diff between pkg-plist and pkg-plist.powerpc, I noticed I missed this at the end of pkg-plist.powerpc:

@postexec %%PREFIX%%/bin/cert-sync %%LOCALBASE%%/share/certs/ca-root-nss.crt
@postunexec rm -rf %%LOCALBASE%%/share/.mono

Please add this.