summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile-giscanner.am9
-rw-r--r--configure.ac6
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