Source code for mqt.core.__main__
# Copyright (c) 2023 - 2026 Chair for Design Automation, TUM
# Copyright (c) 2025 - 2026 Munich Quantum Software Company GmbH
# All rights reserved.
#
# SPDX-License-Identifier: MIT
#
# Licensed under the MIT License
"""Command line interface for mqt-core."""
from __future__ import annotations
import argparse
import sys
from ._commands import cmake_dir, include_dir
from ._version import version as __version__
[docs]
def main() -> None:
"""Entry point for the mqt-core command line interface.
This function is called when running the `mqt-core-cli` script.
.. code-block:: bash
mqt-core-cli [--version] [--include_dir] [--cmake_dir]
It provides the following command line options:
- :code:`--version`: Print the version and exit.
- :code:`--include_dir`: Print the path to the mqt-core C++ include directory.
- :code:`--cmake_dir`: Print the path to the mqt-core CMake module directory.
"""
parser = argparse.ArgumentParser()
parser.add_argument("--version", action="version", version=__version__, help="Print version and exit.")
parser.add_argument(
"--include_dir", action="store_true", help="Print the path to the mqt-core C++ include directory."
)
parser.add_argument(
"--cmake_dir", action="store_true", help="Print the path to the mqt-core CMake module directory."
)
args = parser.parse_args()
if not sys.argv[1:]:
parser.print_help()
if args.include_dir:
print(include_dir().resolve())
if args.cmake_dir:
print(cmake_dir().resolve())
if __name__ == "__main__":
main()