[PATCH] [WIP] gnu: mono: Update to 6.8.0.105.

  • Done
  • quality assurance status badge
Details
3 participants
  • Brett Gilio
  • Pierre Neidhardt
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Pierre Neidhardt
Severity
normal
P
P
Pierre Neidhardt wrote on 20 Feb 2020 17:23
(address . guix-patches@gnu.org)
20200220162336.18848-1-mail@ambrevar.xyz
* gnu/packages/mono.scm (mono): Update to 6.8.0.105.
---
gnu/packages/mono.scm | 81 ++++++++++++++-----
.../patches/mono-mdoc-timestamping.patch | 4 +-
.../patches/mono-pkgconfig-before-gac.patch | 65 +++++++++++++++
3 files changed, 130 insertions(+), 20 deletions(-)
create mode 100644 gnu/packages/patches/mono-pkgconfig-before-gac.patch

Toggle diff (233 lines)
diff --git a/gnu/packages/mono.scm b/gnu/packages/mono.scm
index 5447dd2300..e663140d5c 100644
--- a/gnu/packages/mono.scm
+++ b/gnu/packages/mono.scm
@@ -19,6 +19,9 @@
(define-module (gnu packages mono)
#:use-module ((guix licenses) #:prefix license:)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
@@ -29,6 +32,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages xml)
+ #:use-module (gnu packages xorg)
#:use-module (gnu packages)
#:use-module (guix packages)
#:use-module (guix download)
@@ -38,32 +42,60 @@
(define-public mono
(package
(name "mono")
- (version "4.4.1.0")
+ (version "6.8.0.105")
(source (origin
(method url-fetch)
(uri (string-append
- "http://download.mono-project.com/sources/mono/"
- name "-" version
- ".tar.bz2"))
+ "https://download.mono-project.com/sources/mono/"
+ name "-" version ".tar.xz"))
(sha256
(base32
- "0jibyvyv2jy8dq5ij0j00iq3v74r0y90dcjc3dkspcfbnn37cphn"))
- (patches (search-patches "mono-mdoc-timestamping.patch"))))
+ "0y11c7w6r96laqckfxnk1ya42hx2c1nfqvdgbpmsk1iw9k29k1sp"))
+ (patches (search-patches "mono-pkgconfig-before-gac.patch"
+ ;; TODO: Update this patch.
+ ;; "mono-mdoc-timestamping.patch"
+ ))))
(build-system gnu-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
("glib" ,glib)
("libxslt" ,libxslt)
("perl" ,perl)
- ("python" ,python-2)))
+ ("python" ,python-2)
+ ("cmake" ,cmake)
+ ("which" ,which)
+ ("libgdiplus" ,libgdiplus)
+ ("libx11" ,libx11)
+ ;; TODO: Test if these 2 are necessary.
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
(lambda _
(substitute* "mono/mini/Makefile.in"
- (("build_date = [^;]*;")
- "build_date = (void*) 0;"))
+ (("build_date = [^;]*;")
+ "build_date = (void*) 0;"))
+ #t))
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "mono/eglib/test/path.c"
+ (("const gchar \\*newdir = \"/bin\";")
+ (string-append "const gchar *newdir = \"/tmp\";")))
+ #t))
+ ;; TODO: Update Mono certs. We need a certificate bundle, which nss-certs does not have.
+ ;; (add-after 'install 'update-mono-key-store
+ ;; (lambda* (#:key outputs inputs #:allow-other-keys)
+ ;; (let* ((out (assoc-ref outputs "out"))
+ ;; (ca (assoc-ref inputs "nss-certs"))
+ ;; (cert-sync (string-append out "/bin/cert-sync"))))
+ ;; (invoke cert-sync (string-append ca "/etc/ssl/certs/ca-bundle.crt")
+ (add-after 'install 'install-gmcs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (symlink (string-append out "/bin/mcs")
+ (string-append out "/bin/gmcs")))
#t))
(add-after 'unpack 'set-env
(lambda _ ;;* (#:key inputs #:allow-other-keys)
@@ -72,13 +104,15 @@
;; ZIP files have "DOS time" which starts in Jan 1980.
(setenv "SOURCE_DATE_EPOCH" "315532800")
#t))
- (add-after 'unpack 'fix-includes
- (lambda _
- ;; makedev is in <sys/sysmacros.h> now. Include it.
- (substitute* "mono/io-layer/processes.c"
- (("#ifdef HAVE_SYS_MKDEV_H") "#if 1")
- (("sys/mkdev.h") "sys/sysmacros.h"))
- #t))
+ ;; TODO: This fix seems obsolete in Mono 6.
+ ;; (add-after 'unpack 'fix-includes
+ ;; (lambda _
+ ;; ;; makedev is in <sys/sysmacros.h> now. Include it.
+ ;; (substitute* "mono/io-layer/processes.c"
+ ;; (("#ifdef HAVE_SYS_MKDEV_H") "#if 1")
+ ;; (("sys/mkdev.h") "sys/sysmacros.h"))
+ ;; #t))
+ ;; TODO: Those patches don't seem to be useful anymore.
(add-after 'unpack 'patch-tests
(lambda _ ;;* (#:key inputs #:allow-other-keys)
(substitute* "mono/tests/Makefile.in"
@@ -116,19 +150,30 @@
"NO_TEST:=true\n"
all
"\nrun-test-lib:\n\t@echo skipping test\n"))))))
- ;; these 4 tests fail
+ ;; TODO: Do these 4 tests still fail?
#:make-flags `(,(string-append "PLATFORM_DISABLED_TESTS="
" appdomain-unload.exe"
" delegate2.exe"
" finally_guard.exe"
" remoting4.exe"))
- ;; running tests in parallel fails
+ #:configure-flags (list
+ (string-append "--x-includes="
+ (assoc-ref %build-inputs "libx11")
+ "/include")
+ (string-append "--x-libraries="
+ (assoc-ref %build-inputs "libx11")
+ "/lib")
+ (string-append "--with-libgdiplus="
+ (assoc-ref %build-inputs "libgdiplus")
+ "/lib/libgdiplus.so"))
+ ;; TODO: Does running tests in parallel fail?
#:parallel-tests? #f))
(synopsis "Compiler and libraries for the C# programming language")
(description "Mono is a compiler, vm, debugger and set of libraries for
C#, a C-style programming language from Microsoft that is very similar to
Java.")
(home-page "https://www.mono-project.com/")
+ ;; TODO: Still x11?
(license license:x11)))
(define-public libgdiplus
diff --git a/gnu/packages/patches/mono-mdoc-timestamping.patch b/gnu/packages/patches/mono-mdoc-timestamping.patch
index d5191a93eb..f7ae99a34f 100644
--- a/gnu/packages/patches/mono-mdoc-timestamping.patch
+++ b/gnu/packages/patches/mono-mdoc-timestamping.patch
@@ -1,5 +1,5 @@
---- mono-4.4.1/mcs/class/monodoc/Monodoc/storage/ZipStorage.cs.orig 2018-11-26 22:16:25.008879747 +0100
-+++ mono-4.4.1/mcs/class/monodoc/Monodoc/storage/ZipStorage.cs 2018-11-26 22:21:53.969770985 +0100
+--- mono-4.4.1/external/api-doc-tools/monodoc/Monodoc/storage/ZipStorage.cs.orig 2018-11-26 22:16:25.008879747 +0100
++++ mono-4.4.1/external/api-doc-tools/monodoc/Monodoc/storage/ZipStorage.cs 2018-11-26 22:21:53.969770985 +0100
@@ -74,6 +74,12 @@
id = GetNewCode ();
diff --git a/gnu/packages/patches/mono-pkgconfig-before-gac.patch b/gnu/packages/patches/mono-pkgconfig-before-gac.patch
new file mode 100644
index 0000000000..7632d85039
--- /dev/null
+++ b/gnu/packages/patches/mono-pkgconfig-before-gac.patch
@@ -0,0 +1,65 @@
+diff -Naur mono-4.0.1.old/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets mono-4.0.1/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets
+--- mono-4.0.1.old/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets 2015-04-24 02:26:18.000000000 +0100
++++ mono-4.0.1/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets 2015-05-26 00:52:33.997847464 +0100
+@@ -229,8 +229,8 @@
+ $(ReferencePath);
+ @(AdditionalReferencePath);
+ {HintPathFromItem};
+- {TargetFrameworkDirectory};
+ {PkgConfig};
++ {TargetFrameworkDirectory};
+ {GAC};
+ {RawFileName};
+ $(OutDir)
+diff -Naur mono-4.0.1.old/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets mono-4.0.1/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets
+--- mono-4.0.1.old/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets 2015-04-24 02:26:18.000000000 +0100
++++ mono-4.0.1/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets 2015-05-26 00:52:41.832612748 +0100
+@@ -214,8 +214,8 @@
+ $(ReferencePath);
+ @(AdditionalReferencePath);
+ {HintPathFromItem};
+- {TargetFrameworkDirectory};
+ {PkgConfig};
++ {TargetFrameworkDirectory};
+ {GAC};
+ {RawFileName};
+ $(OutDir)
+diff -Naur mono-4.0.1.old/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets mono-4.0.1/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets
+--- mono-4.0.1.old/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets 2015-04-24 02:26:18.000000000 +0100
++++ mono-4.0.1/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets 2015-05-26 00:52:46.298478961 +0100
+@@ -139,8 +139,8 @@
+ $(ReferencePath);
+ @(AdditionalReferencePath);
+ {HintPathFromItem};
+- {TargetFrameworkDirectory};
+ {PkgConfig};
++ {TargetFrameworkDirectory};
+ {GAC};
+ {RawFileName};
+ $(OutDir)
+diff -Naur mono-4.0.1.old/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets mono-4.0.1/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets
+--- mono-4.0.1.old/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets 2015-04-24 02:26:18.000000000 +0100
++++ mono-4.0.1/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets 2015-05-26 00:52:52.119304583 +0100
+@@ -167,8 +167,8 @@
+ $(ReferencePath);
+ @(AdditionalReferencePath);
+ {HintPathFromItem};
+- {TargetFrameworkDirectory};
+ {PkgConfig};
++ {TargetFrameworkDirectory};
+ {GAC};
+ {RawFileName};
+ $(OutDir)
+diff -Naur mono-4.0.1.old/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets mono-4.0.1/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets
+--- mono-4.0.1.old/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets 2015-04-24 02:26:18.000000000 +0100
++++ mono-4.0.1/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets 2015-05-26 00:52:56.519172776 +0100
+@@ -229,8 +229,8 @@
+ $(ReferencePath);
+ @(AdditionalReferencePath);
+ {HintPathFromItem};
+- {TargetFrameworkDirectory};
+ {PkgConfig};
++ {TargetFrameworkDirectory};
+ {GAC};
+ {RawFileName};
+ $(OutDir)
--
2.25.0
P
P
Pierre Neidhardt wrote on 20 Feb 2020 17:46
Re: bug#39695: Acknowledgement ([PATCH] [WIP] gnu: mono: Update to 6.8.0.105.)
(address . 39695@debbugs.gnu.org)
87lfox5hqq.fsf@ambrevar.xyz
The tests don't pass at the moment, but I can't figure out why.

During the build phase, I see this:

Toggle snippet (19 lines)
...
cd /tmp/guix-build-mono-6.8.0.105.drv-0/mono-6.8.0.105/mcs && make --no-print-directory -s NO_DIR_CHECK=1 PROFILES='binary_reference_assemblies net_4_x xbuild_12 xbuild_14 ' CC='gcc' all-profiles
mkdir -p -- build/deps
make[6]: mono: Command not found
make[6]: *** [build/profiles/build.make:134: build/deps/basic-profile-check.exe] Error 127
*** The runtime 'mono' doesn't appear to be usable.
*** Trying the 'monolite-linux/ABB721D6-116A-4555-B4FD-9248146D2051' directory.
Microsoft (R) Visual C# Compiler version 3.5.0-beta1-19606-04 (d2bd58c6)
Copyright (C) Microsoft Corporation. All rights reserved.

/gnu/store/29jhbbg1hf557x8j53f9sxd9imlmf02a-bash-minimal-5.0.7/bin/sh: git: command not found
/gnu/store/29jhbbg1hf557x8j53f9sxd9imlmf02a-bash-minimal-5.0.7/bin/sh: git: command not found
/gnu/store/29jhbbg1hf557x8j53f9sxd9imlmf02a-bash-minimal-5.0.7/bin/sh: git: command not found
/gnu/store/29jhbbg1hf557x8j53f9sxd9imlmf02a-bash-minimal-5.0.7/bin/sh: git: command not found
mkdir -p -- ../../class/lib/build-linux/tmp/
CSC [build-linux] gensources.exe
...

During the check phase, I see this:

Toggle snippet (46 lines)
...
MDOC [net_4_x-linux] Novell.tree
Warning: couldn't process directory `./../class/Commons.Xml.Relaxng/Documentation/en' as it has no index.xml file
Error reading namespace XML for global at ./../class/Novell.Directory.Ldap/Documentation/en/ns-global.xml
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/IThreadRunnable.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/Integer32.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+SingleThreadModel.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+Tokenizer.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+DateTimeFormatManager.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+DateTimeFormatManager+DateTimeFormatHashTable.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+ArrayListSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+ThreadClass.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+CollectionSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+ListCollectionSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+ArraysSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+SetSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+AbstractSetSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+MessageDigestSupport.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Novell.Directory.Ldap/Documentation/en/global/SupportClass+SecureRandomSupport.xml' as it doesn't exist
Error reading namespace XML for Novell.Directory.Ldap.Asn1 at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.Asn1.xml
Error reading namespace XML for Novell.Directory.Ldap.Rfc2251 at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.Rfc2251.xml
Error reading namespace XML for Novell.Directory.Ldap at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.xml
Error reading namespace XML for Novell.Directory.Ldap.Utilclass at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.Utilclass.xml
Error reading namespace XML for Novell.Directory.Ldap.Extensions at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.Extensions.xml
Warning: couldn't process type file `./../class/Mono.Debugger.Soft/Documentation/en/Mono.Debugger.Soft/AssemblyLoadEventRequest.xml' as it doesn't exist
Error reading namespace XML for Novell.Directory.Ldap.Controls at ./../class/Novell.Directory.Ldap/Documentation/en/ns-Novell.Directory.Ldap.Controls.xml
Warning: couldn't process type file `./../class/Mono.Posix/Documentation/en/Mono.Unix.Native/EpollEvent.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Posix/Documentation/en/Mono.Unix.Native/EpollEvents.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Posix/Documentation/en/Mono.Unix.Native/EpollFlags.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Posix/Documentation/en/Mono.Unix.Native/EpollOp.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Posix/Documentation/en/Mono.Unix.Native/RealTimeSignum.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Security.Win32/Documentation/en/Mono.Security.Cryptography/MD2.xml' as it doesn't exist
Warning: couldn't process type file `./../class/Mono.Security.Win32/Documentation/en/Mono.Security.Cryptography/MD4.xml' as it doesn't exist
Error reading namespace XML for Mono.Security.Cryptography at ./../class/System.Core/Documentation/en/ns-Mono.Security.Cryptography.xml
Warning: couldn't process type file `./../class/System.Design/Documentation/en/System.Web.UI.Design.WebControls/DataSourceIDConverter.xml' as it doesn't exist
Warning: couldn't process directory `./../class/System.DirectoryServices/Documentation/en' as it has no index.xml file
Error reading namespace XML for System.Resources at ./../class/System.Web/Documentation/en/ns-System.Resources.xml
Warning: couldn't process type file `./../class/System.Web/Documentation/en/System.Resources/ResXFileRef.xml' as it doesn't exist
Warning: couldn't process type file `./../class/System.Web/Documentation/en/System.Resources/ResXFileRef+Converter.xml' as it doesn't exist
Warning: couldn't process type file `./../class/System.Web/Documentation/en/System.Resources/ResXResourceReader.xml' as it doesn't exist
Warning: couldn't process type file `./../class/System.Web/Documentation/en/System.Resources/ResXResourceWriter.xml' as it doesn't exist
./../jay/jay: 7 shift/reduce conflicts.
...

Find the build log attached.

--
Pierre Neidhardt
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl5Ot+4ACgkQm9z0l6S7
zH/wCgf9FI2DiLdDbOh2XnZCtWoKdCeWuQvFwh7MskCRx/tI/cZ5E4hPCmPS956I
WZeqKcE/LDTlEIEU4tVLfwXjWwnbo06ZhoZBotWoKRdPMeHttRatT+KSz+C/5YF5
xJ7luemSe9LkICAku/B+cBURirKpTH897t2FOtp6LknMUFDHDdp0taVrrinJCOpm
f0hXBSp4LbKP7uOWMi8FYe2eLAIcCvpSlM7R1G9KhyeGuYFC3MzCNVqGYNXkHDLM
NGqnah193OnwaPb5Q+Z/zjD+W0Fq9wNPGGnDpMr4A0k1Im3KrL3Cm38nwhBTxLzk
ZvxSvuL11PmP4GkAf4CDwrENI8dz2g==
=7tEk
-----END PGP SIGNATURE-----

Attachment: mono.build.log
B
B
Brett Gilio wrote on 25 Jul 2020 03:56
Re: [bug#39695] [PATCH] [WIP] gnu: mono: Update to 6.8.0.105.
(name . Pierre Neidhardt)(address . mail@ambrevar.xyz)(address . 39695@debbugs.gnu.org)
87d04k4as4.fsf@gnu.org
Whew! Somebody finally got to it! I tried many times to get mono in a
better shape for Guix, but failed! :) As there are a considerable number
of changes here, would you mind giving a short synopsis of what still
needs to be made before we either reroll a revision or get a final
draft?

Thanks!
Brett Gilio
P
P
Pierre Neidhardt wrote on 25 Jul 2020 08:14
(name . Brett Gilio)(address . brettg@gnu.org)(address . 39695@debbugs.gnu.org)
871rl0nmss.fsf@ambrevar.xyz
Hi Brett!

Brett Gilio <brettg@gnu.org> writes:

Toggle quote (6 lines)
> Whew! Somebody finally got to it! I tried many times to get mono in a
> better shape for Guix, but failed! :) As there are a considerable number
> of changes here, would you mind giving a short synopsis of what still
> needs to be made before we either reroll a revision or get a final
> draft?

What still needs to be made? Beside fixing the tests, the patch I've
sent seems to have Mono 5 and 6 working.

Final draft of what? Sorry, I feel that I'm missing some context :)

If your question is about the Mono ecosystem, there is a lot of work
left to do. We need a bootstrapped msbuild (the build tool for Mono),
and then ideally we would have a mono-build-system. I can detail this
if you want to, let me know.

Cheers!

--
Pierre Neidhardt
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl8bzdMACgkQm9z0l6S7
zH+a/Qf/TP6slLn9mHcZM0n8w/8uQdjxoFwITnYK9RFCGoXLevVOHWMRWLeTSIt+
vFNxzI7wejt/JTE/UMUV4Q+4/9ld5pO7IGhTAUBIxBO7CiCK59OdgKb8PKkcxgqe
bYHouqmdp+XXt63wUz4ce8hfhfHqdOhGKDJuD9VJQdS5PLfujOBsE/cvmRInx0Zv
3LMxVl2SuOTnIn6Bpbobwa0l7/3aEdWzAw3mvs0qmGMLWZzQIQ7T2Ks+9d8l7XjV
st1hU9+YdUZEMECLdokvzptH8O824QTj1wQLkzMyXrE1dBgOvWRRYF1AZbpXf3DP
2p5Dk2NB924Zd8reSeiVBVhEgwcPpA==
=vniK
-----END PGP SIGNATURE-----

B
B
Brett Gilio wrote on 25 Jul 2020 22:11
(name . Pierre Neidhardt)(address . mail@ambrevar.xyz)(address . 39695@debbugs.gnu.org)
878sf7pd73.fsf@gnu.org
Pierre Neidhardt <mail@ambrevar.xyz> writes:

Toggle quote (22 lines)
> Hi Brett!
>
> Brett Gilio <brettg@gnu.org> writes:
>
>> Whew! Somebody finally got to it! I tried many times to get mono in a
>> better shape for Guix, but failed! :) As there are a considerable number
>> of changes here, would you mind giving a short synopsis of what still
>> needs to be made before we either reroll a revision or get a final
>> draft?
>
> What still needs to be made? Beside fixing the tests, the patch I've
> sent seems to have Mono 5 and 6 working.
>
> Final draft of what? Sorry, I feel that I'm missing some context :)
>
> If your question is about the Mono ecosystem, there is a lot of work
> left to do. We need a bootstrapped msbuild (the build tool for Mono),
> and then ideally we would have a mono-build-system. I can detail this
> if you want to, let me know.
>
> Cheers!

Sorry, I wrote this email last night when I was rather tired. I meant to
say what work still needs to be done on the patch before we commit it. I
think the work on msbuild will prove to be slightly tricky, as that is
now the default build tool for .NET Core as well, and if I recall
correctly .NET Core and Mono use two different instances and
configurations of msbuild.

If our ultimate goal is to get .NET Core (with .NET 5 approaching to
replace .NET Core and .NET Framework, and eventually Mono as well) we
should maybe invest time into a general .NET build system. I'm not sure.

Thoughts?

Brett
P
P
Pierre Neidhardt wrote on 26 Jul 2020 12:21
(name . Brett Gilio)(address . brettg@gnu.org)(address . 39695@debbugs.gnu.org)
875zaamv9e.fsf@ambrevar.xyz
Brett Gilio <brettg@gnu.org> writes:

Toggle quote (27 lines)
> Pierre Neidhardt <mail@ambrevar.xyz> writes:
>
>> Hi Brett!
>>
>> Brett Gilio <brettg@gnu.org> writes:
>>
>>> Whew! Somebody finally got to it! I tried many times to get mono in a
>>> better shape for Guix, but failed! :) As there are a considerable number
>>> of changes here, would you mind giving a short synopsis of what still
>>> needs to be made before we either reroll a revision or get a final
>>> draft?
>>
>> What still needs to be made? Beside fixing the tests, the patch I've
>> sent seems to have Mono 5 and 6 working.
>>
>> Final draft of what? Sorry, I feel that I'm missing some context :)
>>
>> If your question is about the Mono ecosystem, there is a lot of work
>> left to do. We need a bootstrapped msbuild (the build tool for Mono),
>> and then ideally we would have a mono-build-system. I can detail this
>> if you want to, let me know.
>>
>> Cheers!
>
> Sorry, I wrote this email last night when I was rather tired. I meant to
> say what work still needs to be done on the patch before we commit it.

Nothing essential, the patch can be merged as is, I believe.

Toggle quote (4 lines)
> If our ultimate goal is to get .NET Core (with .NET 5 approaching to
> replace .NET Core and .NET Framework, and eventually Mono as well) we
> should maybe invest time into a general .NET build system. I'm not sure.

Absolutely. The investment is significant ;) Maybe the first step
would be to gather a team of volunteers. This is very low priority for
me personally (I don't even know C#). Maybe posting about this on the
mailing list and other social media could be a good start.

Cheers!

--
Pierre Neidhardt
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl8dWT0ACgkQm9z0l6S7
zH9A8gf/XG3ccwnEFPKgtl7c/3DZ6CxLcPO80lbFfNwbWFIxCN7jH3nEbzcr3lXv
p3UgAQHVhWEpyb+abvFdE7sf1B9OlX8/QgQK0JtH8L2HQeblxpJkDEoYjeSKCXVt
2EMgvBUCYCcN+tXRsHYOfV8KNdZCwBbxBeWwxMlBXD+Vtw2BVvUdNM9zQB1K34/T
zB4rkc2GVt2AZOVZmvtT51xBZ1u8lwGAPON9aDvk3E0Q2BfmRLhDrK1c7nySXPHO
sO/Qxtir5JflwBd9/bnOLDro51J0OPkntQh1uarpUgJcSMtWXisH7HbohmpPRB8y
1+vLy2oQcqLe5TJV6LVM39KwW4sMnQ==
=KLuw
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 14 Sep 2022 15:19
control message for bug #39695
(address . control@debbugs.gnu.org)
87y1um14bt.fsf@gmail.com
tags 39695 wontfix
close 39695
quit
?
Your comment

This issue is archived.

To comment on this conversation send an email to 39695@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 39695
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch