summaryrefslogtreecommitdiffstats
path: root/config/run-and-prefix.py
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /config/run-and-prefix.py
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'config/run-and-prefix.py')
-rw-r--r--config/run-and-prefix.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/config/run-and-prefix.py b/config/run-and-prefix.py
new file mode 100644
index 0000000000..af27e6743b
--- /dev/null
+++ b/config/run-and-prefix.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This script runs a process and prefixes its output with.
+# Usage: run-and-prefix.py prefix command arg0 argv1...
+
+import os
+import subprocess
+import sys
+
+sys.stdout = os.fdopen(sys.stdout.fileno(), "wb", 0)
+sys.stderr = os.fdopen(sys.stderr.fileno(), "wb", 0)
+
+prefix = sys.argv[1].encode("utf-8")
+args = sys.argv[2:]
+
+p = subprocess.Popen(
+ args,
+ bufsize=0,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT,
+ stdin=sys.stdin.fileno(),
+ close_fds=False,
+)
+
+while True:
+ data = p.stdout.readline()
+
+ if data == b"":
+ break
+
+ sys.stdout.write(b"%s> %s" % (prefix, data))
+
+sys.exit(p.wait())