Paste number 147277: | racket patch |
Pasted by: | civodul |
When: | 7 years, 3 weeks ago |
Share: | Tweet this! | http://paste.lisp.org/+35N1 |
Channel: | None |
Paste contents: |
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index df4bf7f..b332b55 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -31,8 +31,9 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages avahi)
#:use-module (gnu packages libphidget)
- #:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libjpeg)
#:use-module (ice-9 match))
@@ -364,31 +365,46 @@ implementation techniques and as an expository tool.")
(lib "gdk-pixbuf")))))
(alist-cons-before
'configure 'pre-configure
- (lambda* (#:key inputs #:allow-other-keys)
- (chdir "src")
-
- ;; The GUI libs are dynamically opened through the FFI, so they
- ;; must be in the loader's search path.
- (setenv "LD_LIBRARY_PATH" (string-join (gui-libs inputs) ":")))
+ (lambda _
+ (chdir "src"))
(alist-cons-after
- 'unpack 'patch-/bin/sh
- (lambda _
+ 'unpack 'patch-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The GUI libs are dynamically opened through the FFI, so they
+ ;; must be in the loader's search path.
+ (substitute* (find-files "." "glib\\.rkt")
+ (("\"libg")
+ (string-append "\"" (assoc-ref inputs "glib")
+ "/lib/libg")))
+ (substitute* (find-files "." "cairo-lib\\.rkt")
+ (("\"libcairo")
+ (string-append "\"" (assoc-ref inputs "cairo")
+ "/lib/libcairo")))
+ (substitute* (find-files "." "pango\\.rkt")
+ (("\"libpango")
+ (string-append "\"" (assoc-ref inputs "pango")
+ "/lib/libpango")))
+ (substitute* (find-files "." "jpeg\\.rkt")
+ (("\"libjpeg")
+ (string-append "\"" (assoc-ref inputs "libjpeg")
+ "/lib/libjpeg")))
+ (substitute* (find-files "collects/mred/private/wx/gtk" "")
+ (("\"libgtkglext")
+ (string-append "\"" (assoc-ref inputs "gtkglext")
+ "/lib/libgtkglext"))
+ (("\"libgtk")
+ (string-append "\"" (assoc-ref inputs "gtk")
+ "/lib/libgtk"))
+ (("\"libgdk_pixbuf")
+ (string-append "\"" (assoc-ref inputs "gdk-pixbuf")
+ "/lib/libgdk_pixbuf"))
+ (("\"libgdk")
+ (string-append "\"" (assoc-ref inputs "gtk")
+ "/lib/libgtk")))
+
(substitute* "collects/racket/system.rkt"
(("/bin/sh") (which "sh"))))
- (alist-cons-after
- 'install 'wrap-programs
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (define (wrap prog)
- (wrap-program prog
- `("LD_LIBRARY_PATH" ":" prefix
- ,(gui-libs inputs))))
-
- (with-directory-excursion (string-append out "/bin")
- (for-each wrap
- (list "gracket" "drracket" "slideshow" "mred"))
- #t)))
- %standard-phases))))
+ %standard-phases)))
#:tests? #f ; XXX: how to run them?
))
(inputs `(("libffi" ,libffi)
@@ -397,7 +413,8 @@ implementation techniques and as an expository tool.")
("pango" ,pango)
("libjpeg" ,libjpeg-8)
("gdk-pixbuf" ,gdk-pixbuf)
- ("gtk" ,gtk+-2)))
+ ("gtk" ,gtk+-2)
+ ("gtkglext" ,gtkglext)))
(home-page "http://racket-lang.org")
(synopsis "Implementation of Scheme and related languages")
(description
This paste has no annotations.