diff options
| author | unmush <unmush@hashbang.sh> | 2024-11-26 13:25:00 +0200 |
|---|---|---|
| committer | Efraim Flashner <efraim@flashner.co.il> | 2024-12-22 15:37:34 +0200 |
| commit | 011759c1cd2f52d6543d30561bc6815693918032 (patch) | |
| tree | 367355381bf519e014b386abab796efc8981d0e3 /gnu | |
| parent | 5989da223e65ce2fcea1c5f46ad5256208beb0e4 (diff) | |
gnu: Add mono-4.9.0.
* gnu/packages/dotnet.scm (mono-4.9.0): New variable.
* gnu/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Change-Id: If805f64b97d27db4457503617081700d9b4f642b
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/local.mk | 1 | ||||
| -rw-r--r-- | gnu/packages/dotnet.scm | 128 | ||||
| -rw-r--r-- | gnu/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch | 13 |
3 files changed, 142 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 8c702f0e273..607e6c734da 100644 --- a/gnu/local.mk +++ b/gnu/local.mk | |||
| @@ -1833,6 +1833,7 @@ dist_patch_DATA = \ | |||
| 1833 | %D%/packages/patches/mono-2.4.2.3-fixes.patch \ | 1833 | %D%/packages/patches/mono-2.4.2.3-fixes.patch \ |
| 1834 | %D%/packages/patches/mono-2.6.4-fixes.patch \ | 1834 | %D%/packages/patches/mono-2.6.4-fixes.patch \ |
| 1835 | %D%/packages/patches/mono-2.11.4-fixes.patch \ | 1835 | %D%/packages/patches/mono-2.11.4-fixes.patch \ |
| 1836 | %D%/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch \ | ||
| 1836 | %D%/packages/patches/mosaicatcher-unbundle-htslib.patch \ | 1837 | %D%/packages/patches/mosaicatcher-unbundle-htslib.patch \ |
| 1837 | %D%/packages/patches/mrrescue-support-love-11.patch \ | 1838 | %D%/packages/patches/mrrescue-support-love-11.patch \ |
| 1838 | %D%/packages/patches/mtools-mformat-uninitialized.patch \ | 1839 | %D%/packages/patches/mtools-mformat-uninitialized.patch \ |
diff --git a/gnu/packages/dotnet.scm b/gnu/packages/dotnet.scm index 1ff824cbb21..5ab53eef0b4 100644 --- a/gnu/packages/dotnet.scm +++ b/gnu/packages/dotnet.scm | |||
| @@ -733,3 +733,131 @@ a C-style programming language from Microsoft that is very similar to Java.") | |||
| 733 | ;; for some reason a default is only used if this is empty, not | 733 | ;; for some reason a default is only used if this is empty, not |
| 734 | ;; if it is unset. | 734 | ;; if it is unset. |
| 735 | (setenv "TZ" ""))))))))) | 735 | (setenv "TZ" ""))))))))) |
| 736 | |||
| 737 | (define mono-4.9.0-external-repo-specs | ||
| 738 | ;; format: ({reponame OR (reponame dir-name)} commit sha256) ... | ||
| 739 | '(("aspnetwebstack" "e77b12e6cc5ed260a98447f609e887337e44e299" | ||
| 740 | "0rks344qr4fmp3fs1264d2qkmm348m8d1kjd7z4l94iiirwn1fq1") | ||
| 741 | ;; (("reference-assemblies" "binary-reference-assemblies") | ||
| 742 | ;; "6c77197318fe85dfddf75a1b344b9bf8d0007b0b" | ||
| 743 | ;; "11hbs952srjlsiyin76y2llm5rfjkwjc67ya1i3p0pw193zw14jk") | ||
| 744 | ;; According to github description this is a "custom" fork of boringssl | ||
| 745 | ("boringssl" "c06ac6b33d3e7442ad878488b9d1100127eff998" | ||
| 746 | "187zpi1rvh9i6jfccwzqq337rxxi1rgny6mjq79r08dlrh0lydzc") | ||
| 747 | ("buildtools" "9b6ee8686be55a983d886938165b6206cda50772" | ||
| 748 | "0sjw3swavcmijynmaxh647qpkjsbgihdr8lhkyzf8dsprhlq4fxd") | ||
| 749 | ("cecil" "2b39856e80d8513f70bc3241ed05325b0de679ae" | ||
| 750 | "0vvax32r6bnhvrcvis83gdrdqcgyxb704hz28g9q0wnay4knqxdm") | ||
| 751 | (("cecil" "cecil-legacy") "33d50b874fd527118bc361d83de3d494e8bb55e1" | ||
| 752 | "1p4hl1796ib26ykyf5snl6cj0lx0v7mjh0xqhjw6qdh753nsjyhb") | ||
| 753 | ;; ("debian-snapshot" "9342f8f052f81deaba789f030db23a88b4369724" | ||
| 754 | ;; "") | ||
| 755 | ("ikdasm" "e4deabf61c11999f200dcea6f6d6b42474cc2131" | ||
| 756 | "1frbf70y7n7l72j393avdiwk6153cvfwwpighkf2m46clqmq4han") | ||
| 757 | (("ikvm-fork" "ikvm") "367864ef810859ae3ce652864233b35f2dd5fdbe" | ||
| 758 | "0ig99kbma4s0mzb13nzsk1vm200ygfr11q6mzgh6jj46s2fc35px") | ||
| 759 | ("Lucene.Net.Light" "85978b7eb94738f516824341213d5e94060f5284" | ||
| 760 | "0d118i52m3a0vfjhfci81a2kc4qvnj23gs02hrvdrfpd1q92fyii") | ||
| 761 | ("Newtonsoft.Json" "471c3e0803a9f40a0acc8aeceb31de6ff93a52c4" | ||
| 762 | "0dgngd5hqk6yhlg40kabn6qdnknm32zcx9q6bm2w31csnsk5978s") | ||
| 763 | ("nuget-buildtasks" "04bdab55d8de9edcf628694cfd2001561e8f8e60" | ||
| 764 | "1nklxayxkdskg5wlfl44cndzqkl18v561rz03hwx7wbn5w89q775") | ||
| 765 | ("nunit-lite" "4bc79a6da1f0ee538560b7e4d0caff46d3c86e4f" | ||
| 766 | "085fpabjw47rn8hb5zw6wizsg2jrgdbj9rnlar9lrls40wig272q") | ||
| 767 | ("rx" "b29a4b0fda609e0af33ff54ed13652b6ccf0e05e" | ||
| 768 | "1n1jwhmsbkcv2d806immcpzkb72rz04xy98myw355a8w5ah25yiv"))) | ||
| 769 | |||
| 770 | (define-public mono-4.9.0 | ||
| 771 | (package | ||
| 772 | (inherit mono-3.12.1) | ||
| 773 | (version "4.9.0") | ||
| 774 | (name "mono") | ||
| 775 | (source (origin | ||
| 776 | (method git-fetch) | ||
| 777 | (uri | ||
| 778 | (git-reference | ||
| 779 | (url "https://gitlab.winehq.org/mono/mono.git") | ||
| 780 | ;; some commit chosen after configure.ac was updated to make | ||
| 781 | ;; the version >= 4.9.0 | ||
| 782 | (commit "5a3736606e6243d2c84d4df2cf35c284214b8cc4"))) | ||
| 783 | (file-name (git-file-name name version)) | ||
| 784 | (sha256 | ||
| 785 | (base32 | ||
| 786 | "0vqkkqkaqwbii4hdzg0vffyy31fz1kmmsa67jyqwxdsvgpjszih3")) | ||
| 787 | (modules '((guix build utils) | ||
| 788 | (ice-9 string-fun))) | ||
| 789 | (snippet #~(begin | ||
| 790 | #$(add-external-repos | ||
| 791 | mono-4.9.0-external-repo-specs) | ||
| 792 | #$prepare-mono-source)) | ||
| 793 | (patches (search-patches | ||
| 794 | ;; Saves us an extra intermediate step | ||
| 795 | "mono-4.9.0-fix-runtimemetadataversion.patch")))) | ||
| 796 | (native-inputs (modify-inputs (package-native-inputs mono-3.12.1) | ||
| 797 | (replace "mono" mono-3.12.1) | ||
| 798 | (append tzdata-for-tests))) | ||
| 799 | (arguments | ||
| 800 | (substitute-keyword-arguments (package-arguments mono-3.12.1) | ||
| 801 | ((#:configure-flags _ #f) | ||
| 802 | ;; "External Boehm is no longer supported" - I VILL NOT use the | ||
| 803 | ;; bundled software! | ||
| 804 | #~(list "--with-sgen=yes" | ||
| 805 | "--disable-boehm" | ||
| 806 | "--with-csc=mcs")) | ||
| 807 | ((#:phases phases #~%standard-phases) | ||
| 808 | #~(modify-phases #$phases | ||
| 809 | (add-before 'configure 'set-TZDIR | ||
| 810 | (lambda* (#:key native-inputs inputs #:allow-other-keys) | ||
| 811 | (search-input-directory (or native-inputs inputs) | ||
| 812 | "share/zoneinfo"))) | ||
| 813 | (add-after 'unpack 'use-old-mono-libraries | ||
| 814 | ;; At this point in history mono had not, to my knowledge, | ||
| 815 | ;; deigned to grace us with the actual sources to the binaries | ||
| 816 | ;; shipped in external/binary-reference-assemblies, so just copy | ||
| 817 | ;; the libraries from an older mono for now I guess. | ||
| 818 | (lambda _ | ||
| 819 | (substitute* "mcs/class/reference-assemblies/Makefile" | ||
| 820 | (("\\.\\./\\.\\./\\.\\./external/binary-reference-assemblies/v") | ||
| 821 | (string-append #$(this-package-native-input "mono") | ||
| 822 | "/lib/mono/"))))) | ||
| 823 | (add-after 'unpack 'disable-Microsoft.Build.Tasks-tests | ||
| 824 | (lambda _ | ||
| 825 | ;; These fail for unknown reasons | ||
| 826 | (substitute* "mcs/class/Microsoft.Build.Tasks/Makefile" | ||
| 827 | (("^include ../../build/library.make" all) | ||
| 828 | (string-append | ||
| 829 | all "\nrun-test-recursive:\n\t@echo skipping tests\n"))))))))) | ||
| 830 | (license (list | ||
| 831 | ;; most of mcs/tools, mono/man, most of mcs/class, tests by | ||
| 832 | ;; default, mono/eglib, mono/metadata/sgen*, | ||
| 833 | ;; mono/arch/*/XXX-codegen.h | ||
| 834 | ;; mcs/mcs, mcs/gmcs (dual-licensed GPL) | ||
| 835 | ;; samples | ||
| 836 | license:x11 | ||
| 837 | ;; mcs/mcs, mcs/gmcs (dual-licensed X11) | ||
| 838 | ;; some of mcs/tools | ||
| 839 | license:gpl1+ ;; note: ./mcs/LICENSE.GPL specifies no version | ||
| 840 | ;; mono/mono (the mono VM, I think they meant mono/mini) | ||
| 841 | ;; mono/support (note: directory doesn't exist, probably meant | ||
| 842 | ;; ./support, but that contains a copy of zlib?) | ||
| 843 | license:lgpl2.0+ ;; note: ./mcs/LICENSE.LGPL specifies no version | ||
| 844 | ;; mcs/jay, mono/utils/memcheck.h | ||
| 845 | license:bsd-4 | ||
| 846 | ;; mono/utils/bsearch.c, mono/io-layer/wapi_glob.{h,c} | ||
| 847 | license:bsd-3 | ||
| 848 | ;; mono/utils/freebsd-{dwarf,elf_common,elf64,elf32}.h | ||
| 849 | license:bsd-2 | ||
| 850 | ;; mcs/class/System.Core/System/TimeZoneInfo.Android.cs | ||
| 851 | ;; mcs/class/RabbitMQ.Client (dual licensed mpl1.1) | ||
| 852 | license:asl2.0 | ||
| 853 | ;; ./support, contains a copy of zlib, incl. ./support/minizip | ||
| 854 | license:zlib | ||
| 855 | ;; mono/docs/HtmlAgilityPack, mcs/unit24 | ||
| 856 | license:ms-pl | ||
| 857 | ;; mcs/class/I18N/mklist.sh, mono/benchmark/{zipmark,logic}.cs | ||
| 858 | ;; mcs/class/{,Compat.}ICSharpCode.SharpZipLib | ||
| 859 | license:gpl2+ | ||
| 860 | ;; mcs/class/RabbitMQ.Client (dual licensed asl2.0) | ||
| 861 | license:mpl1.1 | ||
| 862 | ;; API Documentation | ||
| 863 | license:cc-by4.0)))) | ||
diff --git a/gnu/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch b/gnu/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch new file mode 100644 index 00000000000..ec5bad9ae12 --- /dev/null +++ b/gnu/packages/patches/mono-4.9.0-fix-runtimemetadataversion.patch | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | diff --git a/mcs/mcs/settings.cs b/mcs/mcs/settings.cs | ||
| 2 | index 1393bcd58f3..af5febe7cf6 100644 | ||
| 3 | --- a/mcs/mcs/settings.cs | ||
| 4 | +++ b/mcs/mcs/settings.cs | ||
| 5 | @@ -1197,7 +1197,7 @@ namespace Mono.CSharp { | ||
| 6 | } | ||
| 7 | return ParseResult.Success; | ||
| 8 | |||
| 9 | - case "runtimemetadataversion": | ||
| 10 | + case "/runtimemetadataversion": | ||
| 11 | if (value.Length == 0) { | ||
| 12 | Error_RequiresArgument (option); | ||
| 13 | return ParseResult.Error; | ||
