allow building GDB with Python support on MinGW
authorJoel Brobecker <brobecker@gnat.com>
Mon, 31 Jan 2011 04:42:08 +0000 (04:42 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Mon, 31 Jan 2011 04:42:08 +0000 (04:42 +0000)
commit9c4ea6c5a9607f76721259469ca229957bca2e0b
treeb94d3786942244a783752a7c0c9080026dcf1feb
parentac534cba292dd37e6c0e2a6e30e455a92018cf66
allow building GDB with Python support on MinGW

This makes several adjustements to the configure python-config.py
scripts to deal with the differences between a Unix install of Python
and a Windows install of Python (as downloaded from the Python website).

Differences:

  - The Python executable is directly in the python prefix directory
    as opposed to inside the bin/ subdirectory.

  - The name of the python library is does not have a dot in the version
    number: On Unix, we have libpython2.7, while on Windows, it's
    libpython27.  So the regexp extracting the python version from
    the Python lib filename had to be adjusted slightly.

    Also, the tests checking the name of the libpython had to be
    adjusted to allow for that.

  - There are no link options following the -lpython<version> switch
    on Windows, but the regexp extracting the python version was
    using it as a delimiter.  It had to be removed.

  - python-config.py does not work on Windows, mostly because
    some sysconfig variables are missing.  They are not necessary
    so the script was adapted to skip them if not defined.

  - The paths returned by python-config.py follow the Windows filename
    convention in terms of the directory separator, and this is causing
    trouble when the build environment is cygwin (while the compiler
    and Python are MinGW).  We could have fixed that in the configure
    script, but it felt simpler to do so in python-config.py

gdb/ChangeLog:

        * configure.ac: Add handling of Python distribution on Windows.
        * python-config.py: If the LIBS, SYSLIBS, LIBPL and/or LINKFORSHARED
        sysconfig variables are not defined, then do not use them.
        On Windows, if LIBPL is not defined, then use prefix + '/libs'
        instead.  On Windows, return all paths using forward-slashes
        rather than backslashes.
gdb/ChangeLog
gdb/configure
gdb/configure.ac
gdb/python/python-config.py