Files
revng-revng/python/scripts/revng
T
Giacomo Vercesi cda0a9e508 revng2: allow execution in build directory
Change the logic in `python/scripts/revng` to allow executing it as
`revng2`. This allows running `revng2` in the build directory.
2026-01-29 14:26:42 +01:00

31 lines
855 B
Python
Executable File

#!/usr/bin/env python3
#
# This file is distributed under the MIT License. See LICENSE.md for details.
#
import os
import sys
import sysconfig
from pathlib import Path
libpath = Path(sysconfig.get_path("purelib")).relative_to(sysconfig.get_config_var("base"))
new_path = (Path(__file__) / "../.." / libpath).resolve()
assert new_path.is_dir()
if str(new_path) not in sys.path:
if "PYTHONPATH" in os.environ:
os.environ["PYTHONPATH"] = f"{new_path!s}:{os.environ['PYTHONPATH']}"
else:
os.environ["PYTHONPATH"] = str(new_path)
sys.path.insert(0, str(new_path))
if __name__ == "__main__":
name = os.path.basename(sys.argv[0])
assert name in ("revng", "revng2")
if name == "revng":
from revng.internal.cli.revng import main
else:
from revng.internal.cli.revng2 import main
sys.exit(main())