Re: Replace uses of deprecated Python module distutils.sysconfig
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Peter Eisentraut <peter.eisentraut@enterprisedb.com>, Andrew Dunstan <andrew@dunslane.net>, pgsql-hackers@lists.postgresql.org
Date: 2022-01-24T02:53:01Z
Lists: pgsql-hackers
Hi, On 2022-01-23 21:31:52 -0500, Tom Lane wrote: > Andres Freund <andres@anarazel.de> writes: > > No, not really. There generally seems to be very little documentation about > > what one is supposed to use when embedding python (rather than building a > > python module). The only thing I really see is: > > > https://docs.python.org/3/extending/embedding.html#compiling-and-linking-under-unix-like-systems > > > which says to use python-config. > > Yeah :-(. I don't really want to go there, because it will break > existing setups. Yea, it seems to introduce a whole set of new complexities (finding python from python-config, mismatching python-config and explicitly specified python, ...). And it doesn't exist on windows either :(. > Getting back to the INCLUDEPY solution: I see nothing equivalent > to that for the "platform-dependent include directory". But maybe > we don't really need that? Not clear. I don't really understand what the various "platform" variables / paths are supposed to do. I think it might only differ when compiling stuff as part of (or against) the python source tree. To avoid too noisy breakages, we could have python.m4 emit INCLUDEPY and then search the bf logs in a day or three? Not that that's any guarantee, but it's maybe worth a bit that INCLUDEPY is one of the few wars that sysconfig.py explicitly computes for windows builds [2]. Greetings, Andres Freund [2] https://github.com/python/cpython/blob/3.10/Lib/sysconfig.py#L487
Commits
-
Replace use of deprecated Python module distutils.sysconfig, take 2.
- e41176bd6f47 11.15 landed
- aa2215d6b8ac 12.10 landed
- a72c430120cf 10.20 landed
- 803f0b173906 14.2 landed
- 4d7d196ff693 13.6 landed
- bd233bdd8dd9 15.0 landed
-
Temporarily add some information about python include paths to configure.
- f032f63e727c 15.0 landed
-
Revert "Make configure prefer python3 to plain python."
- 512fc2dd790e 15.0 landed
-
Make configure prefer python3 to plain python.
- f201da39edcd 15.0 landed
-
Replace use of deprecated Python module distutils.sysconfig
- e0e567a10672 15.0 landed