unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Federico Beffa <beffa@ieee.org>
To: Guix-devel <guix-devel@gnu.org>
Subject: Re: [PATCH] gnu: libpeas: Update to 1.12.1, add arguments and disable tests.
Date: Wed, 21 Jan 2015 14:01:53 +0100	[thread overview]
Message-ID: <CAKrPhPMHnMQ7L-dbJV_mk-uZY_Cwrj3jasQV+foCzuPTvOuKiw@mail.gmail.com> (raw)
In-Reply-To: <CAKrPhPPfjJmCYTUJdMKq0xiGRJuD=V8NUThfjqFRdNBw5WXHtA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 979 bytes --]

On Tue, Jan 20, 2015 at 6:52 PM, Federico Beffa <beffa@ieee.org> wrote:
> Please find attached a patch for libpeas.
>
> This package, up to now, is the only one experiencing some
> side-effects from the gobject-introspection patch that we adopted from
> nix and which installs the full path name of shared libraries in
> .typelib and .gir files.

I find the above side-effect disturbing. For this reason I would like
to propose an additional patch to 'gobject-introspection'. When
'gobject-introspection' consults a .typelib file (due to the patch we
introduced earlier) it will find a reference to a shared library which
includes the absolute path. With the new patch, if the library is not
found at the absolute path, then it discards the path and tries to
look for the library using the OS dynamic library loading
infrastructure (which is the normal behavior of
'gobject-introspection').

With this change 'libpeas' (and all its dependencies) passes all tests.

Regards,
Fede

[-- Attachment #2: 0001-gnu-libpeas-Update-to-1.12.1-add-pre-build-phase.patch --]
[-- Type: text/x-patch, Size: 2305 bytes --]

From 58d32305b609eccf54de620398a54457af0af0c5 Mon Sep 17 00:00:00 2001
From: Federico Beffa <beffa@fbengineering.ch>
Date: Tue, 20 Jan 2015 18:43:55 +0100
Subject: [PATCH 1/2] gnu: libpeas: Update to 1.12.1, add 'pre-build phase.

* gnu/packages/gnome.scm (libpeas): Update to version 1.12.1 and add
  'pre-build phase.
---
 gnu/packages/gnome.scm | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index acc964e..0f33880 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -427,7 +428,7 @@ some form of information without getting in the user's way.")
 (define-public libpeas
   (package
     (name "libpeas")
-    (version "1.9.0")
+    (version "1.12.1")
     (source
      (origin
       (method url-fetch)
@@ -436,7 +437,7 @@ some form of information without getting in the user's way.")
                           name "-" version ".tar.xz"))
       (sha256
        (base32
-        "13fzyzv6c0cfdj83z1s16lv8k997wpnzyzr0wfwcfkcmvz64g1q0"))))
+        "1mjjjjwphc83bjznmbsm7x0jg7ql261nys6qnl7mi0nkr4qvw476"))))
     (build-system gnu-build-system)
     (inputs
      `(("atk" ,atk)
@@ -449,6 +450,13 @@ some form of information without getting in the user's way.")
        ("glib:bin" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
        ("intltool" ,intltool)))
+    (arguments
+     `(#:phases 
+       (alist-cons-before
+        'build 'pre-build
+        (lambda* _
+          (setenv "CC" "gcc"))
+        %standard-phases)))
     (home-page "https://wiki.gnome.org/Libpeas")
     (synopsis "GObject plugin system")
     (description
@@ -457,7 +465,6 @@ every application the chance to assume its own extensibility.  It also has a
 set of features including, but not limited to: multiple extension points; on
 demand (lazy) programming language support for C, Python and JS; simplicity of
 the API")
-
     (license license:lgpl2.0+)))
 
 (define-public gtkglext
-- 
1.8.4


[-- Attachment #3: 0002-gnu-gobject-introspection-Add-patch.patch --]
[-- Type: text/x-patch, Size: 2264 bytes --]

From b90d70f312e9c298232d76f29099002f359f4468 Mon Sep 17 00:00:00 2001
From: Federico Beffa <beffa@fbengineering.ch>
Date: Wed, 21 Jan 2015 13:46:52 +0100
Subject: [PATCH 2/2] gnu: gobject-introspection: Add patch.

* gnu/packages/glib.scm (gobject-introspection): Add patch
  gobject-introspection-girepository.patch.
---
 gnu/packages/glib.scm                                   |  2 ++
 .../patches/gobject-introspection-girepository.patch    | 17 +++++++++++++++++
 2 files changed, 19 insertions(+)
 create mode 100644 gnu/packages/patches/gobject-introspection-girepository.patch

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 8294c4d..39fc736 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -213,6 +213,8 @@ dynamic loading, and an object system.")
               (base32 "1xwm7wmr9r9wp6xljb3bckx3a4siybavaq39w46ly7gpskxfv8iv"))
              (patches (list 
                        (search-patch "gobject-introspection-cc.patch")
+                       (search-patch
+                        "gobject-introspection-girepository.patch")
                        (search-patch 
                         "gobject-introspection-absolute-shlib-path.patch")))))
     (build-system gnu-build-system)
diff --git a/gnu/packages/patches/gobject-introspection-girepository.patch b/gnu/packages/patches/gobject-introspection-girepository.patch
new file mode 100644
index 0000000..5f1905f
--- /dev/null
+++ b/gnu/packages/patches/gobject-introspection-girepository.patch
@@ -0,0 +1,17 @@
+--- gobject-introspection-1.42.0/girepository/gitypelib.c.orig	2015-01-20 20:37:43.706684642 +0100
++++ gobject-introspection-1.42.0/girepository/gitypelib.c	2015-01-21 09:19:40.927751124 +0100
+@@ -2296,7 +2296,14 @@
+         {
+           GModule *module;
+ 
++          /* We expect an absolute directory name.  If the library is
++             not found, try with just the basename and the system
++             dynamic library infrastructure. */
+           module = load_one_shared_library (shlibs[i]);
++          if (module == NULL && g_path_is_absolute (shlibs[i]))
++            {
++              module = load_one_shared_library (g_basename(shlibs[i]));
++            }
+ 
+           if (module == NULL)
+             {
-- 
1.8.4


  reply	other threads:[~2015-01-21 13:02 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-20 17:52 [PATCH] gnu: libpeas: Update to 1.12.1, add arguments and disable tests Federico Beffa
2015-01-21 13:01 ` Federico Beffa [this message]
2015-01-22 20:43   ` Ludovic Courtès
2015-01-22 20:39 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKrPhPMHnMQ7L-dbJV_mk-uZY_Cwrj3jasQV+foCzuPTvOuKiw@mail.gmail.com \
    --to=beffa@ieee.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).