~ruther/guix-local

cc84b08c7821be4a2e2143f139957639bd59fc58 — 宋文武 11 years ago b837e65
gnu: gobject-introspection: Update to 1.44.0.

* gnu/packages/glib.scm (gobject-introspection): Update to 1.44.0.
  [source]: Use mirror://gnome.
  [arguments]<#:phases>: Remove.
* gnu/packages/patches/gobject-introspection-cc.patch: Rewrite to
  set os.environ['CC'] in 'giscanner/__init__.py'.
2 files changed, 15 insertions(+), 25 deletions(-)

M gnu/packages/glib.scm
M gnu/packages/patches/gobject-introspection-cc.patch
M gnu/packages/glib.scm => gnu/packages/glib.scm +4 -11
@@ 207,14 207,14 @@ dynamic loading, and an object system.")
(define gobject-introspection
  (package
    (name "gobject-introspection")
    (version "1.42.0")
    (version "1.44.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "http://ftp.gnome.org/pub/GNOME/sources/"
             (uri (string-append "mirror://gnome/sources/"
                   "gobject-introspection/" (version-major+minor version)
                   "/gobject-introspection-" version ".tar.xz"))
             (sha256
              (base32 "1xwm7wmr9r9wp6xljb3bckx3a4siybavaq39w46ly7gpskxfv8iv"))
              (base32 "1b972qg2yb51sdavfvb6kc19akwc15c1bwnbg81vadxamql2q33g"))
             (patches (list
                       (search-patch "gobject-introspection-cc.patch")
                       (search-patch


@@ 243,14 243,7 @@ dynamic loading, and an object system.")
    (arguments
     `(;; The patch 'gobject-introspection-absolute-shlib-path.patch' causes
       ;; some tests to fail.
       #:tests? #f
       #:phases
        (alist-cons-before
         'configure 'patch-paths
         (lambda _
           (substitute* "giscanner/sourcescanner.py"
             (("GUIX_GCC_PATH") (which "gcc"))))
         %standard-phases)))
       #:tests? #f))
    (home-page "https://wiki.gnome.org/GObjectIntrospection")
    (synopsis "Generate interface introspection data for GObject libraries")
    (description

M gnu/packages/patches/gobject-introspection-cc.patch => gnu/packages/patches/gobject-introspection-cc.patch +11 -14
@@ 1,14 1,11 @@
--- a/giscanner/sourcescanner.py	2013-12-15 23:03:54.002937000 +0100
+++ b/giscanner/sourcescanner.py	2013-12-15 23:04:50.322937000 +0100
@@ -277,6 +277,11 @@
         defines = ['__GI_SCANNER__']
         undefs = []
         cpp_args = os.environ.get('CC', 'cc').split()  # support CC="ccache gcc"
+        if (cpp_args == ['cc'] and
+            not any(map(lambda x: os.access(os.path.join(x, 'cc'), os.X_OK),
+                        os.environ.get('PATH').split(':')))):
+            cpp_args = ['GUIX_GCC_PATH']
+
         if 'cl' in cpp_args:
             # The Microsoft compiler/preprocessor (cl) does not accept
             # source input from stdin (the '-' flag), so we need
Use gcc as the default C compiler if CC is not set.


--- gobject-introspection-1.44.0.orig/giscanner/__init__.py	2014-08-04 22:37:07.000000000 +0800
+++ gobject-introspection-1.44.0/giscanner/__init__.py	2015-04-20 17:30:26.507697234 +0800
@@ -22,3 +22,5 @@
 builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
 if builddir is not None:
     __path__.append(os.path.join(builddir, 'giscanner'))
+if not 'CC' in os.environ:
+    os.environ['CC'] = 'gcc'