diff --git a/Makefile.pre.in b/Makefile.pre.in index c014236ce5c..0b1cfcd0045 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -97,6 +97,9 @@ PY_CORE_CFLAGS= $(PY_CFLAGS) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE # Machine-dependent subdirectories MACHDEP= @MACHDEP@ +# Multiarch directory (may be empty) +MULTIARCH= @MULTIARCH@ + # Install prefix for architecture-independent files prefix= @prefix@ @@ -1040,6 +1043,7 @@ $(srcdir)/Lib/$(PLATDIR): export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \ export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \ export EXE; EXE="$(BUILDEXE)"; \ + if [ -n "$(MULTIARCH)" ]; then export MULTIARCH; MULTIARCH=$(MULTIARCH); fi; \ cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen python-config: $(srcdir)/Misc/python-config.in diff --git a/Misc/NEWS b/Misc/NEWS index 4c95a123151..43864ae4939 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -861,6 +861,8 @@ Tests Build ----- +- Issue #17029: Let h2py search the multiarch system include directory. + - Issue #16953: Fix socket module compilation on platforms with HAVE_BROKEN_POLL. Patch by Jeffrey Armstrong. diff --git a/Tools/scripts/h2py.py b/Tools/scripts/h2py.py index 45aa439075c..4f871d90107 100755 --- a/Tools/scripts/h2py.py +++ b/Tools/scripts/h2py.py @@ -50,6 +50,11 @@ except KeyError: searchdirs=os.environ['INCLUDE'].split(';') except KeyError: searchdirs=['/usr/include'] + try: + searchdirs.insert(0, os.path.join('/usr/include', + os.environ['MULTIARCH'])) + except KeyError: + pass def main(): global filedict diff --git a/configure b/configure index 1f00599154c..00a10070508 100755 --- a/configure +++ b/configure @@ -688,6 +688,7 @@ BLDLIBRARY DLLLIBRARY LDLIBRARY LIBRARY +MULTIARCH BUILDEXEEXT EGREP GREP @@ -4750,6 +4751,9 @@ hp*|HP*) esac;; esac +MULTIARCH=$($CC --print-multiarch 2>/dev/null) + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBRARY" >&5 diff --git a/configure.ac b/configure.ac index 5ae0d5add07..379db323d9d 100644 --- a/configure.ac +++ b/configure.ac @@ -593,6 +593,9 @@ hp*|HP*) esac;; esac +MULTIARCH=$($CC --print-multiarch 2>/dev/null) +AC_SUBST(MULTIARCH) + AC_SUBST(LIBRARY) AC_MSG_CHECKING(LIBRARY)