~ruther/guix-local

bd638a8ad6140db87851a86faae89e736e148f3d — Maxim Cournoyer 3 years ago db5fa0c
gnu: Delete mono and dependent packages.

Fixes <https://issues.guix.gnu.org/55026>.

* gnu/packages/mono.scm: Delete file.
* gnu/packages/patches/mono-mdoc-timestamping.patch: Likewise.
* gnu/local.mk (GNU_SYSTEM_MODULES): De-register module file.
(dist_patch_DATA): Re-register patch file.
* gnu/packages/game-development.scm (fna): Delete variable.
* gnu/packages/gl.scm (mojoshader-cs): Likewise.
* gnu/packages/sdl.scm (sdl2-cs): Likewise.
6 files changed, 0 insertions(+), 325 deletions(-)

M gnu/local.mk
M gnu/packages/game-development.scm
M gnu/packages/gl.scm
D gnu/packages/mono.scm
D gnu/packages/patches/mono-mdoc-timestamping.patch
M gnu/packages/sdl.scm
M gnu/local.mk => gnu/local.mk +0 -2
@@ 417,7 417,6 @@ GNU_SYSTEM_MODULES =				\
  %D%/packages/moe.scm				\
  %D%/packages/motti.scm			\
  %D%/packages/monitoring.scm			\
  %D%/packages/mono.scm				\
  %D%/packages/moreutils.scm			\
  %D%/packages/mpd.scm				\
  %D%/packages/mp3.scm				\


@@ 1529,7 1528,6 @@ dist_patch_DATA =						\
  %D%/packages/patches/mpg321-gcc-10.patch			\
  %D%/packages/patches/module-init-tools-moduledir.patch	\
  %D%/packages/patches/monero-use-system-miniupnpc.patch			\
  %D%/packages/patches/mono-mdoc-timestamping.patch		\
  %D%/packages/patches/mosaicatcher-unbundle-htslib.patch	\
  %D%/packages/patches/mrrescue-support-love-11.patch		\
  %D%/packages/patches/mtools-mformat-uninitialized.patch	\

M gnu/packages/game-development.scm => gnu/packages/game-development.scm +0 -53
@@ 87,7 87,6 @@
  #:use-module (gnu packages linux)
  #:use-module (gnu packages lua)
  #:use-module (gnu packages m4)
  #:use-module (gnu packages mono)
  #:use-module (gnu packages mp3)
  #:use-module (gnu packages multiprecision)
  #:use-module (gnu packages music)


@@ 2306,58 2305,6 @@ specific knowledge of the hardware they are targeting.")
double-buffering.")
    (license license:gpl2+)))

(define-public fna
  (package
    (name "fna")
    (version "19.12.01")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/FNA-XNA/FNA")
             (commit version)))
       (file-name (git-file-name name version))
       (sha256
        (base32 "1vdyi9hac24fqcs8kpj6yk36bf5rrl4dvlvdd9fc701fawcf6lrr"))))
    (build-system gnu-build-system)
    (arguments
     '(#:tests? #f                      ; No tests.
       #:phases
       (modify-phases %standard-phases
         (add-after 'unpack 'link-dep-src
           (lambda* (#:key inputs #:allow-other-keys)
             (let ((sdl2 (assoc-ref inputs "sdl2-cs-src"))
                   (mojoshader (assoc-ref inputs "mojoshader-src"))
                   (faudio (assoc-ref inputs "faudio-src"))
                   (theorafile (assoc-ref inputs "theorafile-src")))
               (symlink (string-append sdl2 "/src") "lib/SDL2-CS/src")
               (symlink (string-append mojoshader "/csharp") "lib/MojoShader/csharp")
               (symlink (string-append faudio "/csharp") "lib/FAudio/csharp")
               (symlink (string-append theorafile "/csharp") "lib/Theorafile/csharp"))))
         (delete 'configure)
         (replace 'build
           (lambda _
             (invoke "make" "release")))
         (replace 'install
           (lambda* (#:key outputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out")))
               (install-file "bin/Release/FNA.dll" (string-append out "/lib"))
               #t))))))
    (native-inputs
     (list mono))
    (inputs `(("sdl2-cs-src" ,(package-source sdl2-cs))
              ("mojoshader-src" ,(package-source mojoshader-cs))
              ("faudio-src" ,(package-source faudio))
              ("theorafile-src" ,(package-source theorafile))))
    (home-page "https://fna-xna.github.io/")
    (synopsis "Accuracy-focused XNA4 reimplementation")
    (description "FNA is a Microsoft XNA Game Studio 4.0 reimplementation that
focuses solely on developing a fully accurate XNA4 runtime for the desktop.")
    (license (list license:ms-pl        ; FNA
                   license:lgpl2.1      ; LzxDecoder.cs
                   ;; Mono.Xna:
                   license:expat))))

(define-public libccd
  (package
    (name "libccd")

M gnu/packages/gl.scm => gnu/packages/gl.scm +0 -39
@@ 48,7 48,6 @@
  #:use-module (gnu packages image)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages llvm)
  #:use-module (gnu packages mono)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages python)
  #:use-module (gnu packages python-xyz)


@@ 1043,44 1042,6 @@ the shaders at runtime.")
the glProgramViewportFlip before it was replaced with glProgramViewportInfo.")
      (license license:zlib))))

(define-public mojoshader-cs
  (let ((commit "10d0dba21ff1cfe332eb7de328a2adce01286bd7"))
    (package
      (name "mojoshader-cs")
      (version (git-version "20191205" "1" commit))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                      (url "https://github.com/FNA-XNA/MojoShader")
                      (commit commit)))
                (file-name (git-file-name name version))
                (sha256
                 (base32
                  "11mdhf3fmb9rsn2iv753gmb596j4dh5j2iipgw078vg0lj23rml7"))))
      (build-system gnu-build-system)
      (arguments
       '(#:tests? #f  ; No tests.
         #:phases
         (modify-phases %standard-phases
           (delete 'configure)
           (replace 'build
             (lambda _
               (invoke "make" "-C" "csharp")))
           (replace 'install
             (lambda* (#:key outputs #:allow-other-keys)
               (let ((out (assoc-ref outputs "out")))
                 (install-file "csharp/bin/MojoShader-CS.dll" (string-append out "/lib"))
                 #t))))))
      (native-inputs
       (list mono))
      (home-page "https://github.com/FNA-XNA/MojoShader")
      (synopsis "C# wrapper for MojoShader")
      (description
       "Mojoshader-CS provides C# bindings for the Mojoshader library.
The C# wrapper was written to be used for FNA's platform support.  However, this
is written in a way that can be used for any general C# application.")
      (license license:zlib))))

(define-public glmark2
  (package
    (name "glmark2")

D gnu/packages/mono.scm => gnu/packages/mono.scm +0 -175
@@ 1,175 0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages mono)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages gettext)
  #:use-module (gnu packages glib)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages image)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages photo)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages python)
  #:use-module (gnu packages xml)
  #:use-module (gnu packages)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix git-download)
  #:use-module (guix build-system gnu))

(define-public mono
  (package
    (name "mono")
    (version "4.4.1.0")
    (source (origin
              (method url-fetch)
              (uri (string-append
                    "http://download.mono-project.com/sources/mono/"
                    name "-" version
                    ".tar.bz2"))
              (sha256
               (base32
                "0jibyvyv2jy8dq5ij0j00iq3v74r0y90dcjc3dkspcfbnn37cphn"))
              (patches (search-patches "mono-mdoc-timestamping.patch"))))
    (build-system gnu-build-system)
    (native-inputs
     `(("gettext" ,gettext-minimal)
       ("glib" ,glib)
       ("libxslt" ,libxslt)
       ("perl" ,perl)
       ("python" ,python-2)))
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         (add-after 'unpack 'make-reproducible
           (lambda _
             (substitute* "mono/mini/Makefile.in"
              (("build_date = [^;]*;")
               "build_date = (void*) 0;"))
             #t))
         (add-after 'unpack 'set-env
           (lambda _ ;;* (#:key inputs #:allow-other-keys)
             ;; all tests under mcs/class fail trying to access $HOME
             (setenv "HOME" "/tmp")
             ;; 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))
         (add-after 'unpack 'patch-tests
           (lambda _  ;;* (#:key inputs #:allow-other-keys)
             (substitute* "mono/tests/Makefile.in"
               ;; does not build: no rule to make unhandled-exception-*
               (("@test-unhandled-exception-2:" all)
                (string-append all "#")))
             (substitute* "mcs/tools/mono-symbolicate/Makefile"
               ;; does not build: Source file `Test/StackTraceDumper.cs'
               ;; could not be found
               (("^check: test-local") "check:\ntest-local:")
               (("^test-local: all") "disabled-test-local:"))
             (substitute* "mono/unit-tests/Makefile.in"
               ;; test fails
               (("^test-sgen-qsort.log:")
                "disabled-test-sgen-qsort.log:\ntest-sgen-qsort.log:"))
             ;; tests fail, trying to access $HOME
             (substitute* "mcs/class/Makefile"
               (("^include ../build/rules.make" all)
                (string-append
                 all
                 "\nrun-test-recursive:\n\t@echo skipping tests\n")))
             ;; tests fail, trying to access $HOME
             (substitute* "mcs/class/Microsoft.Build.Tasks/Makefile"
               (("^include ../../build/rules.make" all)
                (string-append
                 all
                 "\nrun-test-recursive:\n\t@echo skipping tests\n")))
             (substitute* '("mcs/tools/mono-shlib-cop/Makefile"
                            "mcs/tools/mdoc/Makefile")
               (("^run-test-local:" all)
                (string-append "#" all)))
             (substitute* "mcs/tools/sqlmetal/Makefile"
               (("^include ../../build/rules.make" all)
                (string-append
                 "NO_TEST:=true\n"
                 all
                 "\nrun-test-lib:\n\t@echo skipping test\n"))))))
       ;; these 4 tests fail
       #:make-flags `(,(string-append "PLATFORM_DISABLED_TESTS="
                                      " appdomain-unload.exe"
                                      " delegate2.exe"
                                      " finally_guard.exe"
                                      " remoting4.exe"))
       ;; running tests in parallel fails
       #: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/")
    (license license:x11)))

(define-public libgdiplus
  (package
    (name "libgdiplus")
    (version "6.0.5")
    (source
     (origin
       (method url-fetch)
       (uri (string-append
             "http://download.mono-project.com/sources/libgdiplus/libgdiplus-"
             version
             ".tar.gz"))
       (sha256
        (base32
         "1vr5l09i5i91n9qzky7ab9wwvgdidvrbw26y8llip0z4qdf4w7mq"))))
    (build-system gnu-build-system)
    (native-inputs
     (list pkg-config))
    (inputs
     `(("glib" ,glib)
       ("cairo" ,cairo)
       ("fontconfig" ,fontconfig)
       ("libtiff" ,libtiff)
       ("libjpeg" ,libjpeg-turbo)
       ("libexif" ,libexif)
       ("libungif" ,libungif)))
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         ;; TODO: See with upstream why they fail.
         ;; https://github.com/mono/mono/issues/18934
         (add-before 'configure 'remove-buggy-tests
           (lambda _
             (substitute* "tests/Makefile.in"
               (("testicocodec\\$\\(EXEEXT\\) ") " ")
               (("testfont\\$\\(EXEEXT\\) ") " "))
             #t)))))
    (home-page "https://www.mono-project.com/docs/gui/libgdiplus/")
    (synopsis "Mono library that provides a GDI+-compatible API")
    (description "Libgdiplus is the Mono library that provides a
GDI+-compatible API on non-Windows operating systems.  The implementation uses
Cairo to do most of the heavy lifting.")
    (license license:gpl3+)))

D gnu/packages/patches/mono-mdoc-timestamping.patch => gnu/packages/patches/mono-mdoc-timestamping.patch +0 -15
@@ 1,15 0,0 @@
--- 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
@@ -74,6 +74,12 @@
 				id = GetNewCode ();
 
 			ZipEntry entry = new ZipEntry (id);
+			var SOURCE_DATE_EPOCH_string = Environment.GetEnvironmentVariable("SOURCE_DATE_EPOCH");
+			if (SOURCE_DATE_EPOCH_string != null)
+			{
+				var SOURCE_DATE_EPOCH = Convert.ToInt64(SOURCE_DATE_EPOCH_string);
+				entry.DateTime = new DateTime(SOURCE_DATE_EPOCH, DateTimeKind.Utc);
+			}
 			zipOutput.PutNextEntry (entry);
 		}
 

M gnu/packages/sdl.scm => gnu/packages/sdl.scm +0 -41
@@ 53,7 53,6 @@
  #:use-module (gnu packages ibus)
  #:use-module (gnu packages image)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages mono)
  #:use-module (gnu packages mp3)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages pulseaudio)


@@ 654,43 653,3 @@ interface.")

(define-public guile3.0-sdl2
  (deprecated-package "guile3.0-sdl2" guile-sdl2))

(define-public sdl2-cs
  (let ((commit "1a3556441e1394eb0b5d46aeb514b8d1090b93f8"))
    (package
      (name "sdl2-cs")
      (version (git-version "B1" "1" commit))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                      (url "https://github.com/flibitijibibo/SDL2-CS")
                      (commit commit)))
                (file-name (git-file-name name version))
                (sha256
                 (base32
                  "007mzkqr9nmvfrvvhs2r6cm36lzgsww24kwshsz9c4fd97f9qk58"))))
      (build-system gnu-build-system)
      (arguments
       '(#:tests? #f  ; No tests.
         #:phases
         (modify-phases %standard-phases
           (delete 'configure)
           (replace 'build
             (lambda _
               (invoke "make" "release")))
           (replace 'install
             (lambda* (#:key outputs #:allow-other-keys)
               (let ((out (assoc-ref outputs "out")))
                 (install-file "bin/Release/SDL2-CS.dll" (string-append out "/lib"))
                 #t))))))
      (native-inputs
       (list mono))
      (inputs
       (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))
      (home-page "https://dthompson.us/projects/guile-sdl2.html")
      (synopsis "C# wrapper for SDL2")
      (description
       "SDL2-CS provides C# bindings for the SDL2 C shared library.
The C# wrapper was written to be used for FNA's platform support.  However, this
is written in a way that can be used for any general C# application.")
      (license license:zlib))))