diff options
author | Cyril Roelandt <tipecaml@gmail.com> | 2013-10-16 03:47:56 +0200 |
---|---|---|
committer | Cyril Roelandt <tipecaml@gmail.com> | 2013-12-15 23:37:22 +0100 |
commit | 503c5f6d5d5b61097731158e70ff598fe42d6345 (patch) | |
tree | 2deeff06b98d271d5b168cf70e1362a6a9037460 | |
parent | 3e778ad3af53e343550f4ec3d0b56f9bfe1fa2e3 (diff) | |
download | guix-503c5f6d5d5b61097731158e70ff598fe42d6345.tar.gz |
gnu: gobject-introspection: look for 'gcc' when no compiler seems available.
* gnu/packages/patches/gobject-introspection.patch: New file.
-rw-r--r-- | gnu-system.am | 1 | ||||
-rw-r--r-- | gnu/packages/glib.scm | 7 | ||||
-rw-r--r-- | gnu/packages/patches/gobject-introspection-cc.patch | 14 |
3 files changed, 19 insertions, 3 deletions
diff --git a/gnu-system.am b/gnu-system.am index c5134740de..742a6135e0 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -244,6 +244,7 @@ dist_patch_DATA = \ gnu/packages/patches/glibc-bootstrap-system.patch \ gnu/packages/patches/glibc-ldd-x86_64.patch \ gnu/packages/patches/glibc-make-4.0.patch \ + gnu/packages/patches/gobject-introspection-cc.patch \ gnu/packages/patches/grub-gets-undeclared.patch \ gnu/packages/patches/gstreamer-0.10-bison3.patch \ gnu/packages/patches/gstreamer-0.10-silly-test.patch \ diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 097a5d0f49..2ba1460444 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -176,7 +176,8 @@ dynamic loading, and an object system.") "/gobject-introspection-" version ".tar.xz")) (sha256 - (base32 "0wvxyvgajmms2bb6k3pf1rdpnd79xdxamykzvxzmcyn1ag9yax9m")))) + (base32 "0wvxyvgajmms2bb6k3pf1rdpnd79xdxamykzvxzmcyn1ag9yax9m")) + (patches (list (search-patch "gobject-introspection-cc.patch"))))) (build-system gnu-build-system) (inputs `(("bison" ,bison) @@ -192,8 +193,8 @@ dynamic loading, and an object system.") 'configure (lambda* (#:key #:allow-other-keys #:rest args) (let ((configure (assoc-ref %standard-phases 'configure))) - ;; giscanner/sourcescanner.py looks for 'CC', let's set it here. - (setenv "CC" "gcc") + (substitute* "giscanner/sourcescanner.py" + (("GUIX_GCC_PATH") (which "gcc"))) (apply configure args))) %standard-phases))) (home-page "https://wiki.gnome.org/GObjectIntrospection") diff --git a/gnu/packages/patches/gobject-introspection-cc.patch b/gnu/packages/patches/gobject-introspection-cc.patch new file mode 100644 index 0000000000..38b919a746 --- /dev/null +++ b/gnu/packages/patches/gobject-introspection-cc.patch @@ -0,0 +1,14 @@ +--- 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 |