Author: svn-role
Date: Thu Jun 15 04:00:05 2023
New Revision: 1910415

URL: http://svn.apache.org/viewvc?rev=1910415&view=rev
Log:
Merge r1910098 from trunk:

 * r1910098
   swig-py: Use `sysconfig` instead of `distutils.sysconfig`.
   Justification:
     Allow swig-py to build with Python 3.12.
   Votes:
     +1: jun66j5, futatuki
     +0: rhuijben

Modified:
    subversion/branches/1.14.x/   (props changed)
    subversion/branches/1.14.x/STATUS
    subversion/branches/1.14.x/build/generator/gen_win_dependencies.py
    subversion/branches/1.14.x/build/get-py-info.py

Propchange: subversion/branches/1.14.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1910098

Modified: subversion/branches/1.14.x/STATUS
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1910415&r1=1910414&r2=1910415&view=diff
==============================================================================
--- subversion/branches/1.14.x/STATUS (original)
+++ subversion/branches/1.14.x/STATUS Thu Jun 15 04:00:05 2023
@@ -48,11 +48,3 @@ Veto-blocked changes:
 
 Approved changes:
 =================
-
- * r1910098
-   swig-py: Use `sysconfig` instead of `distutils.sysconfig`.
-   Justification:
-     Allow swig-py to build with Python 3.12.
-   Votes:
-     +1: jun66j5, futatuki
-     +0: rhuijben

Modified: subversion/branches/1.14.x/build/generator/gen_win_dependencies.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.14.x/build/generator/gen_win_dependencies.py?rev=1910415&r1=1910414&r2=1910415&view=diff
==============================================================================
--- subversion/branches/1.14.x/build/generator/gen_win_dependencies.py 
(original)
+++ subversion/branches/1.14.x/build/generator/gen_win_dependencies.py Thu Jun 
15 04:00:05 2023
@@ -1030,12 +1030,13 @@ class GenDependenciesBase(gen_base.Gener
     "Find the appropriate options for creating SWIG-based Python modules"
 
     try:
-      from distutils import sysconfig
-
-      inc_dir = sysconfig.get_python_inc()
-      lib_dir = os.path.join(sysconfig.PREFIX, "libs")
+      import sysconfig
     except ImportError:
       return
+    config_vars = sysconfig.get_config_vars()
+    inc_dir = config_vars['INCLUDEPY']
+    base_dir = config_vars.get('installed_base') or config_vars.get('base')
+    lib_dir = os.path.join(base_dir, 'libs')
 
     if sys.version_info[0] >= 3:
       if self.swig_version < (3, 0, 10):

Modified: subversion/branches/1.14.x/build/get-py-info.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/1.14.x/build/get-py-info.py?rev=1910415&r1=1910414&r2=1910415&view=diff
==============================================================================
--- subversion/branches/1.14.x/build/get-py-info.py (original)
+++ subversion/branches/1.14.x/build/get-py-info.py Thu Jun 15 04:00:05 2023
@@ -44,15 +44,24 @@ if len(sys.argv) != 2:
   usage()
 
 try:
-  from distutils import sysconfig
+  if sys.version_info[0] == 2:
+    from distutils import sysconfig
+    get_include = lambda: sysconfig.get_python_inc()
+    get_platinclude = lambda: sysconfig.get_python_inc(plat_specific=1)
+    get_purelib = lambda: sysconfig.get_python_lib()
+  else:
+    import sysconfig
+    get_include = lambda: sysconfig.get_path('include')
+    get_platinclude = lambda: sysconfig.get_path('platinclude')
+    get_purelib = lambda: sysconfig.get_path('purelib')
 except ImportError:
   # No information available
   print("none")
   sys.exit(1)
 
 if sys.argv[1] == '--includes':
-  inc = sysconfig.get_python_inc()
-  plat = sysconfig.get_python_inc(plat_specific=1)
+  inc = get_include()
+  plat = get_platinclude()
   if inc == plat:
     print("-I" + inc)
   else:
@@ -140,7 +149,7 @@ if sys.argv[1] == '--libs':
   sys.exit(0)
 
 if sys.argv[1] == '--site':
-  print(sysconfig.get_python_lib())
+  print(get_purelib())
   sys.exit(0)
 
 usage()


Reply via email to