mirror of https://github.com/torvalds/linux.git
36 lines
898 B
Python
Executable File
36 lines
898 B
Python
Executable File
#!/usr/bin/env python3
|
|
# SPDX-License-Identifier: GPL-2.0+
|
|
|
|
"""
|
|
Determines how many parallel tasks "make" is expecting, as it is
|
|
not exposed via any special variables, reserves them all, runs a subprocess
|
|
with PARALLELISM environment variable set, and releases the jobs back again.
|
|
|
|
See:
|
|
https://www.gnu.org/software/make/manual/html_node/POSIX-Jobserver.html#POSIX-Jobserver
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
|
|
LIB_DIR = "lib"
|
|
SRC_DIR = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
sys.path.insert(0, os.path.join(SRC_DIR, LIB_DIR))
|
|
|
|
from jobserver import JobserverExec # pylint: disable=C0415
|
|
|
|
|
|
def main():
|
|
"""Main program"""
|
|
if len(sys.argv) < 2:
|
|
name = os.path.basename(__file__)
|
|
sys.exit("usage: " + name +" command [args ...]\n" + __doc__)
|
|
|
|
with JobserverExec() as jobserver:
|
|
jobserver.run(sys.argv[1:])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|