diff options
Diffstat (limited to 'plugins/itanium')
| -rw-r--r-- | plugins/itanium/Makefile.am | 24 | ||||
| -rw-r--r-- | plugins/itanium/core.c | 16 | 
2 files changed, 32 insertions, 8 deletions
| diff --git a/plugins/itanium/Makefile.am b/plugins/itanium/Makefile.am index b6d62ff..ecbdc93 100644 --- a/plugins/itanium/Makefile.am +++ b/plugins/itanium/Makefile.am @@ -3,6 +3,19 @@ lib_LTLIBRARIES  = libitanium.la  libdir = $(pluginslibdir) + +if BUILD_PYTHON3_BINDINGS + +PYTHON3_LIBADD = python/libitaniumpython.la + +PYTHON3_LDFLAGS = -Wl,-rpath,$(abs_top_srcdir)/plugins/pychrysalide/.libs \ +					-L$(top_srcdir)/plugins/pychrysalide/.libs -l:pychrysalide.so + +PYTHON3_SUBDIRS = python + +endif + +  libitanium_la_SOURCES =					\  	abi.h abi.c							\  	component-int.h						\ @@ -12,12 +25,11 @@ libitanium_la_SOURCES =					\  	demangler.h demangler.c  libitanium_la_LIBADD =					\ -	python/libitaniumpython.la +	$(PYTHON3_LIBADD) -libitanium_la_LDFLAGS =												\ -	-L$(top_srcdir)/src/.libs -lchrysacore							\ -	-Wl,-rpath,$(abs_top_srcdir)/plugins/pychrysalide/.libs			\ -	-L$(top_srcdir)/plugins/pychrysalide/.libs -l:pychrysalide.so +libitanium_la_LDFLAGS =							\ +	-L$(top_srcdir)/src/.libs -lchrysacore		\ +	$(PYTHON3_LDFLAGS)  devdir = $(includedir)/chrysalide-$(subdir) @@ -29,4 +41,4 @@ AM_CPPFLAGS = $(LIBGTK_CFLAGS) $(LIBXML_CFLAGS) -I$(top_srcdir)/src  AM_CFLAGS = $(DEBUG_CFLAGS) $(WARNING_FLAGS) $(COMPLIANCE_FLAGS) -SUBDIRS = python +SUBDIRS = $(PYTHON3_SUBDIRS) diff --git a/plugins/itanium/core.c b/plugins/itanium/core.c index 71816f7..974e244 100644 --- a/plugins/itanium/core.c +++ b/plugins/itanium/core.c @@ -24,17 +24,27 @@  #include "core.h" +#include <config.h>  #include <core/demanglers.h>  #include <plugins/plugin-def.h>  #include "demangler.h" -#include "python/module.h" +#ifdef HAVE_PYTHON3_BINDINGS +#   include "python/module.h" +#endif + + +#ifdef HAVE_PYTHON3_BINDINGS +#   define PG_REQ RL("PyChrysalide") +#else +#   define PG_REQ NO_REQ +#endif  DEFINE_CHRYSALIDE_PLUGIN("GItaniumPlugin", "itanium", "Symbol demangler for Itanium", "0.1.0", -                         RL("PyChrysalide"), AL(PGA_PLUGIN_INIT)); +                         PG_REQ, AL(PGA_PLUGIN_INIT)); @@ -56,8 +66,10 @@ G_MODULE_EXPORT bool chrysalide_plugin_init(GPluginModule *plugin)      result = register_demangler_type("itanium", G_TYPE_ITANIUM_DEMANGLER); +#ifdef HAVE_PYTHON3_BINDINGS      if (result)          result = add_mangling_itanium_module_to_python_module(); +#endif      return result; | 
