aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Gnatenko <i.gnatenko.brain@gmail.com>2015-03-24 11:06:17 +0300
committerIgor Gnatenko <i.gnatenko.brain@gmail.com>2015-03-24 11:06:48 +0300
commitf1d2827bcec84e855428733cd55c42d0ece8c6ff (patch)
treed02c034d641a2d044ca3f0c735fe54a7c9f59662
parent7d0c38257d28e66cd93cb563194a96fcb03458d1 (diff)
downloadmeson-f1d2827bcec84e855428733cd55c42d0ece8c6ff.zip
meson-f1d2827bcec84e855428733cd55c42d0ece8c6ff.tar.gz
meson-f1d2827bcec84e855428733cd55c42d0ece8c6ff.tar.bz2
modules/gnome: inherit global cflags to g-ir-scanner. Closes #74
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
-rw-r--r--interpreter.py1
-rw-r--r--modules/gnome.py4
-rw-r--r--test cases/frameworks/7 gnome/gir/golib.h4
-rw-r--r--test cases/frameworks/7 gnome/meson.build1
4 files changed, 10 insertions, 0 deletions
diff --git a/interpreter.py b/interpreter.py
index dfd5330..832233f 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -623,6 +623,7 @@ class ModuleHolder(InterpreterObject):
state.headers = self.interpreter.build.get_headers()
state.man = self.interpreter.build.get_man()
state.pkgconfig_gens = self.interpreter.build.pkgconfig_gens
+ state.global_args = self.interpreter.build.global_args
value = fn(state, args, kwargs)
return self.interpreter.module_method_callback(value)
diff --git a/modules/gnome.py b/modules/gnome.py
index bfae555..539ed27 100644
--- a/modules/gnome.py
+++ b/modules/gnome.py
@@ -68,6 +68,10 @@ class GnomeModule:
scan_command += ['--include=%s' % inc for inc in includes]
else:
raise MesonException('Gir includes must be str or list')
+ if state.global_args.get('c'):
+ scan_command += ['--cflags-begin']
+ scan_command += state.global_args['c']
+ scan_command += ['--cflags-end']
scankwargs = {'output' : girfile,
'input' : libsources,
'command' : scan_command}
diff --git a/test cases/frameworks/7 gnome/gir/golib.h b/test cases/frameworks/7 gnome/gir/golib.h
index 40bf901..272d65c 100644
--- a/test cases/frameworks/7 gnome/gir/golib.h
+++ b/test cases/frameworks/7 gnome/gir/golib.h
@@ -1,6 +1,10 @@
#ifndef GOLIB_H
#define GOLIB_H
+#if !defined (MESON_TEST)
+#error "MESON_TEST not defined."
+#endif
+
#include <glib.h>
#include <glib-object.h>
diff --git a/test cases/frameworks/7 gnome/meson.build b/test cases/frameworks/7 gnome/meson.build
index ceddb5e..6afe508 100644
--- a/test cases/frameworks/7 gnome/meson.build
+++ b/test cases/frameworks/7 gnome/meson.build
@@ -7,6 +7,7 @@ glib = dependency('glib-2.0')
gobj = dependency('gobject-2.0')
gir = dependency('gobject-introspection-1.0')
gmod = dependency('gmodule-2.0')
+add_global_arguments('-DMESON_TEST', language : 'c')
subdir('resources')
subdir('gir')