diff options
author | Dieter Verfaillie <dieterv@optionexplicit.be> | 2011-09-17 13:30:28 +0200 |
---|---|---|
committer | Dieter Verfaillie <dieterv@optionexplicit.be> | 2011-09-17 13:30:28 +0200 |
commit | 0a73abbd904150a3f97aae64be3974080af1ff2d (patch) | |
tree | 3337a7265b5471c6591932e39071cfc5f82c0acb | |
parent | 1e26aa4158d8e42a3cd2bed7d9fbf385e81e5fc8 (diff) | |
download | gobject-introspection-0a73abbd904150a3f97aae64be3974080af1ff2d.tar.gz |
Fix linking against libpython
- AM_CHECK_PYTHON_LIBS doesn't work for 64bit sytems (lib64)
- Python extension modules do not need to be linked against
libpython on linux anyway, but it is needed on Windows
So only run AM_CHECK_PYTHON_LIBS in configure.ac for the windows
case and make it clear in Makefile-giscanner.am linking
against libpython is a windows only thing.
https://bugzilla.gnome.org/show_bug.cgi?id=658914
-rw-r--r-- | Makefile-giscanner.am | 9 | ||||
-rw-r--r-- | configure.ac | 6 |
2 files changed, 12 insertions, 3 deletions
diff --git a/Makefile-giscanner.am b/Makefile-giscanner.am index 84fc2b2d..3655997f 100644 --- a/Makefile-giscanner.am +++ b/Makefile-giscanner.am @@ -58,12 +58,19 @@ _giscanner_la_CFLAGS = \ $(PYTHON_INCLUDES) \ $(GOBJECT_CFLAGS) \ -I$(top_srcdir)/giscanner -_giscanner_la_LIBADD = libgiscanner.la $(GOBJECT_LIBS) $(PYTHON_LIBS) +_giscanner_la_LIBADD = libgiscanner.la $(GOBJECT_LIBS) _giscanner_la_LDFLAGS = \ -module -avoid-version -export-symbols-regex init_giscanner if OS_WIN32 +# Windows requires Python extension modules to be explicitly +# linked to libpython. Extension modules are shared libaries +# (.dll files), but need to be called .pyd for Python to load +# them as extension modules. +_giscanner_la_LIBADD += \ + $(PYTHON_LIBS) + _giscanner_la_LDFLAGS += \ -no-undefined \ -shrext ".pyd" diff --git a/configure.ac b/configure.ac index 75c0e4e5..c3f856e1 100644 --- a/configure.ac +++ b/configure.ac @@ -32,7 +32,7 @@ case "$host" in os_win32=no ;; esac -AM_CONDITIONAL(OS_WIN32, [test x"$os_win32" = "xyes"]) +AM_CONDITIONAL(OS_WIN32, [test "x$os_win32" = "xyes"]) # Checks for programs. AC_PROG_CC @@ -261,7 +261,9 @@ case "$host" in ;; esac AM_CHECK_PYTHON_HEADERS(, AC_MSG_ERROR([Python headers not found])) -AM_CHECK_PYTHON_LIBS(, AC_MSG_ERROR([Python libs not found])) +if test "x$os_win32" = "xyes"; then + AM_CHECK_PYTHON_LIBS(, AC_MSG_ERROR([Python libs not found. Windows requires Python modules to be explicitly linked to libpython.])) +fi # Glib documentation |