From c83393b9a83c1f80b062cc5b4362c8b7da7f01ce Mon Sep 17 00:00:00 2001 From: Joel Brobecker Date: Mon, 15 Oct 2012 17:17:54 +0000 Subject: [PATCH] Build with -DMS_WIN64 on amd64-windows if Python enabled... ... and building with GCC. gdb/ChangeLog: * configure.ac: Build with -DMS_WIN64 if building with Python enabled using GCC on amd64-windows. * configure: Regenerate. --- gdb/ChangeLog | 6 ++++++ gdb/configure | 14 ++++++++++++++ gdb/configure.ac | 14 ++++++++++++++ 3 files changed, 34 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5f5eaf9..902667b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2012-10-15 Joel Brobecker + + * configure.ac: Build with -DMS_WIN64 if building with Python + enabled using GCC on amd64-windows. + * configure: Regenerate. + 2012-10-15 Tom Tromey PR python/14635: diff --git a/gdb/configure b/gdb/configure index d913de6..6941e9c 100755 --- a/gdb/configure +++ b/gdb/configure @@ -8472,11 +8472,25 @@ $as_echo "${PYTHON_CFLAGS}" >&6; } # unilaterally defined, and that in turn causes _SGIAPI to evaluate # to false. So, we work around this issue by defining siginfo ourself # though the command-line. + # + # On x64 Windows, Python's include headers, and pyconfig.h in + # particular, rely on MS_WIN64 macro to detect that it's a 64bit + # version of Windows. Unfortunately, MS_WIN64 is only defined if + # _MSC_VER, a Microsoft-specific macro, is defined. So, when + # building on x64 Windows with GCC, we define MS_WIN64 ourselves. + # The issue was reported to the Python community, but still isn't + # solved as of 2012-10-02 (http://bugs.python.org/issue4709). + case "$gdb_host" in irix*) if test "${GCC}" = yes; then CPPFLAGS="$CPPFLAGS -Dsiginfo=__siginfo" fi ;; + mingw64) + if test "${GCC}" = yes; then + CPPFLAGS="$CPPFLAGS -DMS_WIN64" + fi + ;; esac # Note that "python -m threading" cannot be used to check for diff --git a/gdb/configure.ac b/gdb/configure.ac index c0fd0e1..fc181fd 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -989,11 +989,25 @@ if test "${have_libpython}" != no; then # unilaterally defined, and that in turn causes _SGIAPI to evaluate # to false. So, we work around this issue by defining siginfo ourself # though the command-line. + # + # On x64 Windows, Python's include headers, and pyconfig.h in + # particular, rely on MS_WIN64 macro to detect that it's a 64bit + # version of Windows. Unfortunately, MS_WIN64 is only defined if + # _MSC_VER, a Microsoft-specific macro, is defined. So, when + # building on x64 Windows with GCC, we define MS_WIN64 ourselves. + # The issue was reported to the Python community, but still isn't + # solved as of 2012-10-02 (http://bugs.python.org/issue4709). + case "$gdb_host" in irix*) if test "${GCC}" = yes; then CPPFLAGS="$CPPFLAGS -Dsiginfo=__siginfo" fi ;; + mingw64) + if test "${GCC}" = yes; then + CPPFLAGS="$CPPFLAGS -DMS_WIN64" + fi + ;; esac # Note that "python -m threading" cannot be used to check for -- 2.7.4