~ruther/guix-local

76071c70fc82479b9ceaac7aa4d56ee9282a8a09 — Eric Bavier 11 years ago 366553e
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.
3 files changed, 72 insertions(+), 26 deletions(-)

M gnu-system.am
A gnu/packages/patches/hop-linker-flags.patch
M gnu/packages/scheme.scm
M gnu-system.am => gnu-system.am +1 -0
@@ 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		\

A gnu/packages/patches/hop-linker-flags.patch => gnu/packages/patches/hop-linker-flags.patch +60 -0
@@ 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 .

M gnu/packages/scheme.scm => gnu/packages/scheme.scm +11 -26
@@ 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/")