"""Initialization script for cx_Freeze which imports the site module (as per
normal processing of a Python script) and then searches for a file with the
same name as the shared library but with the extension .pth. The entries in
this file are used to modify the path to use for subsequent imports.
"""
from __future__ import annotations

import os
import sys

# the site module must be imported for normal behavior to take place; it is
# done dynamically so that cx_Freeze will not add all modules referenced by
# the site module to the frozen executable
__import__("site")

# now locate the pth file to modify the path appropriately
name, ext = os.path.splitext(sys.executable)
filename = name + ".pth"
with open(filename, encoding="utf-8") as in_file:
    sys.path = [s.strip() for s in in_file.read().splitlines()] + sys.path


def run():  # noqa: D103
    pass
