[vlc-commits] [Git][videolan/vlc][3.0.x] extras: tools: add python 3.13 support to Ninja

Steve Lhomme (@robUx4) gitlab at videolan.org
Wed Mar 5 06:14:36 UTC 2025



Steve Lhomme pushed to branch 3.0.x at VideoLAN / VLC


Commits:
b64a9b6c by Khalid Masum at 2025-03-04T14:00:38+00:00
extras: tools: add python 3.13 support to Ninja

Backport a patch from Ninja 1.12 that adds python 3.13
support. This is necessary because current version of Ninja
does not work with python 3.13 as pipes module is deprecated.

(cherry picked from commit b8dff0645a6754d6afaf087215d208d3c8c6c307)

- - - - -


2 changed files:

- + extras/tools/ninja-1.11.1-replace-pipes-quote-with-shlex-quote.patch
- extras/tools/tools.mak


Changes:

=====================================
extras/tools/ninja-1.11.1-replace-pipes-quote-with-shlex-quote.patch
=====================================
@@ -0,0 +1,36 @@
+From 9cf13cd1ecb7ae649394f4133d121a01e191560b Mon Sep 17 00:00:00 2001
+From: Byoungchan Lee <byoungchan.lee at gmx.com>
+Date: Mon, 9 Oct 2023 20:13:20 +0900
+Subject: [PATCH] Replace pipes.quote with shlex.quote in configure.py
+
+Python 3.12 deprecated the pipes module and it will be removed
+in Python 3.13. In configure.py, I have replaced the usage of pipes.quote
+with shlex.quote, which is the exactly same function as pipes.quote.
+
+For more details, refer to PEP 0594: https://peps.python.org/pep-0594
+---
+ configure.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.py b/configure.py
+index 588250aa8a..c6973cd1a5 100755
+--- a/configure.py
++++ b/configure.py
+@@ -21,7 +21,7 @@
+ 
+ from optparse import OptionParser
+ import os
+-import pipes
++import shlex
+ import string
+ import subprocess
+ import sys
+@@ -262,7 +262,7 @@ def _run_command(self, cmdline):
+ env_keys = set(['CXX', 'AR', 'CFLAGS', 'CXXFLAGS', 'LDFLAGS'])
+ configure_env = dict((k, os.environ[k]) for k in os.environ if k in env_keys)
+ if configure_env:
+-    config_str = ' '.join([k + '=' + pipes.quote(configure_env[k])
++    config_str = ' '.join([k + '=' + shlex.quote(configure_env[k])
+                            for k in configure_env])
+     n.variable('configure_env', config_str + '$ ')
+ n.newline()


=====================================
extras/tools/tools.mak
=====================================
@@ -410,6 +410,7 @@ ninja-$(NINJA_VERSION).tar.gz:
 
 ninja: ninja-$(NINJA_VERSION).tar.gz
 	$(UNPACK)
+	$(APPLY) $(TOOLS)/ninja-1.11.1-replace-pipes-quote-with-shlex-quote.patch
 	$(MOVE)
 
 .buildninja: ninja



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/b64a9b6c754e4c32ad610d891e3d379d4492d6bf

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/b64a9b6c754e4c32ad610d891e3d379d4492d6bf
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list