From 8a629613d1eadb0f3f6fb1e5ce65b484745b30a3 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 5 May 2015 11:01:06 -0500 Subject: gnu: hop: Fix RPATHs. * gnu/packages/scheme.scm (inputs): Move patchelf input to... (native-inputs): ...here. New field. (arguments)[phases]: Use augment-rpath for patch-rpath phase. --- gnu/packages/scheme.scm | 48 +++++++++++++++++------------------------------- 1 file changed, 17 insertions(+), 31 deletions(-) (limited to 'gnu/packages/scheme.scm') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 77d0d846c8..ae859791c1 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -238,7 +238,7 @@ Scheme and C programs and between Scheme and Java programs.") (patches (list (search-patch "hop-bigloo-4.0b.patch"))))) (build-system gnu-build-system) (arguments - '(#:phases + `(#:phases (alist-replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) @@ -249,41 +249,27 @@ Scheme and C programs and between Scheme and Java programs.") (alist-cons-after 'strip 'patch-rpath (lambda* (#:key outputs #:allow-other-keys) - ;; Patch the RPATH of every installed library to point to $out/lib - ;; instead of $TMPDIR. Note that "patchelf --set-rpath" produces - ;; invalid binaries when used before stripping. - (let ((out (assoc-ref outputs "out")) - (tmpdir (getcwd))) - (every (lambda (lib) - (let* ((in (open-pipe* OPEN_READ "patchelf" - "--print-rpath" lib)) - (rpath (read-line in))) - (and (zero? (close-pipe in)) - (let ((rpath* (regexp-substitute/global - #f (regexp-quote tmpdir) rpath - 'pre out 'post))) - (or (equal? rpath rpath*) - (begin - (format #t "~a: changing RPATH from `~a' to `~a'~%" - lib rpath rpath*) - (zero? - (system* "patchelf" "--set-rpath" - rpath* lib)))))))) - (append (find-files (string-append out "/bin") - ".*") - (find-files (string-append out "/lib") - "\\.so$"))))) + ;; Add $out/lib to the RPATH of every installed library and + ;; executable. Note that "patchelf --set-rpath" produces invalid + ;; binaries when used before stripping. + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib"))) + (with-directory-excursion out + (every (cut augment-rpath <> lib) + (append (find-files "bin" ".*") + (find-files "lib" "\\.so$")))))) %standard-phases)) #:tests? #f ; no test suite #:modules ((guix build gnu-build-system) (guix build utils) - (ice-9 popen) - (ice-9 regex) - (ice-9 rdelim) - (srfi srfi-1)))) + (guix build rpath) + (srfi srfi-26) + (srfi srfi-1)) + #:imported-modules (,@%gnu-build-system-modules + (guix build rpath)))) + (native-inputs `(("patchelf" ,patchelf))) (inputs `(("bigloo" ,bigloo) - ("which" ,which) - ("patchelf" ,patchelf))) + ("which" ,which))) (home-page "http://hop.inria.fr/") (synopsis "Multi-tier programming language for the Web 2.0") (description -- cgit v1.2.3 From 76071c70fc82479b9ceaac7aa4d56ee9282a8a09 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 5 May 2015 20:21:38 -0500 Subject: gnu: hop: Remove use of patchelf. * gnu/packages/patches/hop-linker-flags.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/scheme.scm (source)[patches]: Use it. (arguments)[phases]: Remove patch-rpath phase. [modules, imported-modules]: Remove. (native-inputs): Remove field. --- gnu-system.am | 1 + gnu/packages/patches/hop-linker-flags.patch | 60 +++++++++++++++++++++++++++++ gnu/packages/scheme.scm | 37 ++++++------------ 3 files changed, 72 insertions(+), 26 deletions(-) create mode 100644 gnu/packages/patches/hop-linker-flags.patch (limited to 'gnu/packages/scheme.scm') diff --git a/gnu-system.am b/gnu-system.am index 9ffb76ee5d..2cbb854b89 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -449,6 +449,7 @@ dist_patch_DATA = \ gnu/packages/patches/guix-test-networking.patch \ gnu/packages/patches/gtkglext-disable-disable-deprecated.patch \ gnu/packages/patches/hop-bigloo-4.0b.patch \ + gnu/packages/patches/hop-linker-flags.patch \ gnu/packages/patches/inetutils-syslogd.patch \ gnu/packages/patches/irrlicht-mesa-10.patch \ gnu/packages/patches/jbig2dec-ignore-testtest.patch \ diff --git a/gnu/packages/patches/hop-linker-flags.patch b/gnu/packages/patches/hop-linker-flags.patch new file mode 100644 index 0000000000..f1f5dbfbd9 --- /dev/null +++ b/gnu/packages/patches/hop-linker-flags.patch @@ -0,0 +1,60 @@ +Make hop's link rules honor flags set by the --blflags configure argument. + +--- hop-2.4.0/src/Makefile 2015-05-05 19:41:04.800151036 -0500 ++++ hop-2.4.0/src/Makefile 2015-05-05 19:40:40.916150417 -0500 +@@ -69,10 +69,10 @@ + $(MAKE) link.$(LINK) DEST=$@ + + link.dynamic: +- @ $(call link,$(BIGLOO),$(BCFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$(DEST)) ++ @ $(call link,$(BIGLOO),$(BCFLAGS) $(BLFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$(DEST)) + + link.static: +- @ $(call link,$(BIGLOO),$(BCFLAGS),$(BCFLAGSDEV),-static-all-bigloo $(OBJECTS),-o,$(DEST)) ++ @ $(call link,$(BIGLOO),$(BCFLAGS) $(BLFLAGS),$(BCFLAGSDEV),-static-all-bigloo $(OBJECTS),-o,$(DEST)) + + link.library: + echo "***ERROR: link.library not currently supported!" +--- hop-2.4.0/hopc/Makefile 2013-01-30 07:17:59.000000000 -0600 ++++ hop-2.4.0/hopc/Makefile 2015-05-05 19:45:21.876157699 -0500 +@@ -62,7 +62,7 @@ + mkdir -p $@ + + $(BUILDBINDIR)/$(EXEC): .afile .etags $(OBJECTS) +- @ $(call link,$(BIGLOO),$(BCFLAGS),,$(OBJECTS),-o,$@) ++ @ $(call link,$(BIGLOO),$(BCFLAGS) $(BLFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$@) + + $(BUILDBINDIR)/$(EXEC).jar: .afile .etags .jfile $(BGL_CLASSES) META-INF/MANIFEST.MF jvm-stdlibs jvm-share jvm-lib + $(JAR) $@ META-INF/MANIFEST.MF -C o/class_s . +--- hop-2.4.0/hophz/Makefile 2013-01-30 07:17:59.000000000 -0600 ++++ hop-2.4.0/hophz/Makefile 2015-05-05 19:59:42.996180030 -0500 +@@ -16,9 +16,6 @@ + -include ../etc/Makefile.hopconfig + -include ../etc/Makefile.version + +-BLFLAGS = +-BLINKFLAGS = -suffix hop +- + #*---------------------------------------------------------------------*/ + #* Target and Project */ + #*---------------------------------------------------------------------*/ +@@ -72,7 +69,7 @@ + mkdir -p $@ + + $(BUILDBINDIR)/$(EXEC): .afile .etags $(OBJECTS) +- @ $(call link,$(BIGLOO),$(BCFLAGS),$(BLINKFLAGS),$(OBJECTS),-o,$@) ++ @ $(call link,$(BIGLOO),$(BCFLAGS) $(BLFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$@) + + $(BUILDBINDIR)/$(EXEC).jar: .afile .etags .jfile $(BGL_CLASSES) META-INF/MANIFEST.MF jvm-stdlibs jvm-share jvm-lib + @ $(JAR) $@ META-INF/MANIFEST.MF -C o/class_s . +--- hop-2.4.0/hopsh/Makefile 2013-01-30 07:17:59.000000000 -0600 ++++ hop-2.4.0/hopsh/Makefile 2015-05-05 19:46:36.060159626 -0500 +@@ -60,7 +60,7 @@ + mkdir -p $@ + + $(BUILDBINDIR)/$(EXEC): .afile .etags $(OBJECTS) +- @ $(call link,$(BIGLOO),$(BCFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$@) ++ @ $(call link,$(BIGLOO),$(BCFLAGS) $(BLFLAGS),$(BCFLAGSDEV),$(OBJECTS),-o,$@) + + $(BUILDBINDIR)/$(EXEC).jar: .afile .etags .jfile $(BGL_CLASSES) META-INF/MANIFEST.MF jvm-stdlibs jvm-share jvm-lib + @ $(JAR) $@ META-INF/MANIFEST.MF -C o/class_s . diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index ae859791c1..f2f5287d7f 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -29,7 +29,6 @@ #:use-module (gnu packages databases) #:use-module (gnu packages emacs) #:use-module (gnu packages texinfo) - #:use-module (gnu packages elf) #:use-module (gnu packages base) #:use-module (gnu packages pkg-config) #:use-module (gnu packages avahi) @@ -235,39 +234,25 @@ Scheme and C programs and between Scheme and Java programs.") (sha256 (base32 "1v2r4ga58kk1sx0frn8qa8ccmjpic9csqzpk499wc95y9c4b1wy3")) - (patches (list (search-patch "hop-bigloo-4.0b.patch"))))) + (patches (list (search-patch "hop-bigloo-4.0b.patch") + (search-patch "hop-linker-flags.patch"))))) (build-system gnu-build-system) (arguments `(#:phases (alist-replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) + (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (zero? (system* "./configure" - (string-append "--prefix=" out))))) - (alist-cons-after - 'strip 'patch-rpath - (lambda* (#:key outputs #:allow-other-keys) - ;; Add $out/lib to the RPATH of every installed library and - ;; executable. Note that "patchelf --set-rpath" produces invalid - ;; binaries when used before stripping. - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib"))) - (with-directory-excursion out - (every (cut augment-rpath <> lib) - (append (find-files "bin" ".*") - (find-files "lib" "\\.so$")))))) - %standard-phases)) - #:tests? #f ; no test suite - #:modules ((guix build gnu-build-system) - (guix build utils) - (guix build rpath) - (srfi srfi-26) - (srfi srfi-1)) - #:imported-modules (,@%gnu-build-system-modules - (guix build rpath)))) - (native-inputs `(("patchelf" ,patchelf))) + (string-append "--prefix=" out) + (string-append "--blflags=" + ;; user flags completely override useful + ;; default flags, so repeat them here. + "-copt \\$(CPICFLAGS) -L\\$(BUILDLIBDIR) " + "-ldopt -Wl,-rpath," out "/lib"))))) + %standard-phases) + #:tests? #f)) ; no test suite (inputs `(("bigloo" ,bigloo) ("which" ,which))) (home-page "http://hop.inria.fr/") -- cgit v1.2.3 From bc11c72c98b76e7d9d9e50311351a401f1346b0c Mon Sep 17 00:00:00 2001 From: Alexander Shendi Date: Tue, 19 May 2015 18:27:02 -0400 Subject: gnu: mit-scheme: Add libx11 to inputs. * gnu/packages/scheme.scm (mit-scheme)[inputs]: Add libx11. --- gnu/packages/scheme.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu/packages/scheme.scm') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index f2f5287d7f..bce1ab5d53 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -38,6 +38,7 @@ #:use-module (gnu packages libffi) #:use-module (gnu packages fontutils) #:use-module (gnu packages image) + #:use-module (gnu packages xorg) #:use-module (ice-9 match)) (define (mit-scheme-source-directory system version) @@ -90,6 +91,7 @@ ;; ("texlive-core" ,texlive-core) ("texinfo" ,texinfo) ("m4" ,m4) + ("libx11" ,libx11) ("source" -- cgit v1.2.3 From 51960939a40e39d84d68a7c996295f89ec55063f Mon Sep 17 00:00:00 2001 From: Taylan Ulrich Bayırlı/Kammer Date: Wed, 27 May 2015 21:11:47 +0200 Subject: gnu: chibi-scheme: Update to 0.7.3. * gnu/packages/scheme.scm (chibi-scheme): Update to 0.7.3. Change URL. --- gnu/packages/scheme.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'gnu/packages/scheme.scm') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index bce1ab5d53..803b8d5a20 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -454,14 +454,15 @@ mixed.") (define-public chibi-scheme (package (name "chibi-scheme") - (version "0.7.2") + (version "0.7.3") (source (origin (method url-fetch) - (uri (string-append - "http://abrek.synthcode.com/chibi-scheme-" version ".tgz")) + (uri (string-append "https://github.com/ashinn/chibi-scheme/archive/" + version ".tar.gz")) (sha256 - (base32 "0h6k2gdb4xk2pzhdipffcg2w3kfr4zh1va556k1hvng2did6prds")))) + (base32 "16wppf4qzr0748iyp0m89gidsfgq9s6x3gw4xggym91waw4fh742")) + (file-name (string-append "chibi-scheme-" version ".tar.gz")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3