# along with this program; if not, see <http://www.gnu.org/licenses/>.
import sys
-from os import path
from argparse import ArgumentParser, RawTextHelpFormatter, Namespace
import pandas as pd
from contextlib import ExitStack
from typing import Optional, List, Dict, Generator, Tuple, Union, Any, Set
try:
- qemu_dir = path.abspath(path.dirname(path.dirname(__file__)))
- sys.path.append(path.join(qemu_dir, 'python'))
from qemu.machine import QEMUMachine
except ModuleNotFoundError as exc:
- print(f"Module '{exc.name}' not found.")
- print("Try export PYTHONPATH=top-qemu-dir/python or run from top-qemu-dir")
+ print(f"Module '{exc.name}' not found.", file=sys.stderr)
+ print(f"Try $builddir/run {' '.join(sys.argv)}", file=sys.stderr)
sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils import qemu_ga_client
-
-
-if __name__ == '__main__':
- sys.exit(qemu_ga_client.main())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qemu-ga-client [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.qmp import qmp_shell
-
-
-if __name__ == '__main__':
- qmp_shell.main()
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qmp-shell [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.qmp import qmp_shell
-
-
-if __name__ == '__main__':
- qmp_shell.main_wrap()
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qmp-shell-wrap [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils.qom_fuse import QOMFuse
-
-
-if __name__ == '__main__':
- sys.exit(QOMFuse.entry_point())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qom-fuse [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils.qom import QOMGet
-
-
-if __name__ == '__main__':
- sys.exit(QOMGet.entry_point())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qom-get [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils.qom import QOMList
-
-
-if __name__ == '__main__':
- sys.exit(QOMList.entry_point())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qom-list [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils.qom import QOMSet
-
-
-if __name__ == '__main__':
- sys.exit(QOMSet.entry_point())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qom-set [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
#!/usr/bin/env python3
-import os
import sys
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.utils.qom import QOMTree
-
-
-if __name__ == '__main__':
- sys.exit(QOMTree.entry_point())
+print(
+ "This script has moved; after running configure,"
+ " please use '$builddir/run qom-tree [...]' instead.",
+ file=sys.stderr
+)
+sys.exit(1)
import sys
from datetime import datetime
-from os import path as os_path
try:
- qemu_dir = os_path.abspath(os_path.dirname(os_path.dirname(__file__)))
- sys.path.append(os_path.join(qemu_dir, 'python'))
-
from qemu.qmp.legacy import QEMUMonitorProtocol
-
except ModuleNotFoundError as exc:
- print(f"Module '{exc.name}' not found.")
- print("Try export PYTHONPATH=top-qemu-dir/python or run from top-qemu-dir")
+ print(f"Module '{exc.name}' not found.", file=sys.stderr)
+ print(f"Try $builddir/run {' '.join(sys.argv)}", file=sys.stderr)
sys.exit(1)
from base64 import b64encode
import json
from graphviz import Digraph
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', 'python'))
-from qemu.qmp import QMPError
-from qemu.qmp.legacy import QEMUMonitorProtocol
+try:
+ from qemu.qmp import QMPError
+ from qemu.qmp.legacy import QEMUMonitorProtocol
+except ModuleNotFoundError as exc:
+ print(f"Module '{exc.name}' not found.", file=sys.stderr)
+ print(f"Try $builddir/run {' '.join(sys.argv)}", file=sys.stderr)
+ sys.exit(1)
def perm(arr):
import socket
import json
-sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
-from qemu.machine import QEMUMachine
-from qemu.qmp import ConnectError
+try:
+ from qemu.machine import QEMUMachine
+ from qemu.qmp import ConnectError
+except ModuleNotFoundError as exc:
+ print(f"Module '{exc.name}' not found.", file=sys.stderr)
+ print(f"Try $builddir/run {' '.join(sys.argv)}", file=sys.stderr)
+ sys.exit(1)
def bench_block_job(cmd, cmd_args, qemu_args):
from guestperf.report import Report, ReportResult
from guestperf.timings import TimingRecord, Timings
-sys.path.append(os.path.join(os.path.dirname(__file__),
- '..', '..', '..', 'python'))
-from qemu.machine import QEMUMachine
+try:
+ from qemu.machine import QEMUMachine
+except ModuleNotFoundError as exc:
+ print(
+ f"Module '{exc.name}' not found.\n"
+ "It should be installed as part of the configure-time "
+ "virtual environment in $builddir/pyvenv.\n"
+ "Try re-running this script as:\n"
+ f"> $builddir/run {' '.join(sys.argv)}",
+ file=sys.stderr
+ )
+ sys.exit(1)
# multifd supported compression algorithms
MULTIFD_CMP_ALGS = ("zlib", "zstd", "qpl", "uadk")