From 9de34faace8ca957d6b71e392f7100690bdb9f7e Mon Sep 17 00:00:00 2001 From: Michael Jeanson Date: Wed, 25 Oct 2017 16:30:31 -0400 Subject: [PATCH] Fix: python bindings when building with PIE hardening MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Work around a bug/limitation in python distutils where object files are built with -fPIC appended after the CFLAGS but the final shared object is linked with -shared before the LDFLAGS which can then be overriden by hardening flags and result in an invalid build. The work around is to append -shared to the LDFLAGS making sure it's not overriden. Signed-off-by: Michael Jeanson Signed-off-by: Jérémie Galarneau --- bindings/python/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/python/Makefile.am b/bindings/python/Makefile.am index 2ceab037..5e4dde84 100644 --- a/bindings/python/Makefile.am +++ b/bindings/python/Makefile.am @@ -25,7 +25,7 @@ BINDINGS_DEPS=setup.py \ BUILD_FLAGS=CC="$(CC)" \ CFLAGS="$(GLIB_CFLAGS) $(AM_CFLAGS) $(CFLAGS)" \ CPPFLAGS="$(DEFS) $(DEFAULT_INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)" \ - LDFLAGS="$(AM_LDFLAGS) $(LDFLAGS) $(GLIB_LIBS) $(LIBS)" + LDFLAGS="$(AM_LDFLAGS) $(LDFLAGS) $(GLIB_LIBS) -shared $(LIBS)" build-python-bindings.stamp: $(BINDINGS_DEPS) $(BUILD_FLAGS) $(PYTHON) $(builddir)/setup.py build_ext -- 2.34.1