From fef7206fbaa12bf6c7d6add5a0cb2b82b97ebb0a Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Fri, 9 Oct 2026 11:50:04 +0500 Subject: minor imports refactoring --- project/boost/archive.py | 4 ++-- project/boost/build.py | 12 ++++++------ project/boost/directory.py | 10 ++++++---- project/boost/download.py | 20 ++++++++++---------- project/build.py | 34 +++++++++++++++++----------------- project/toolset.py | 6 +++--- 6 files changed, 44 insertions(+), 42 deletions(-) diff --git a/project/boost/archive.py b/project/boost/archive.py index efed3a0..04a5842 100644 --- a/project/boost/archive.py +++ b/project/boost/archive.py @@ -10,7 +10,7 @@ import os.path import shutil from project.boost.directory import BoostDir -from project.utils import temp_file +from project import utils class Archive: @@ -75,7 +75,7 @@ class TemporaryStorage(ArchiveStorage): @contextmanager def write_archive(self, version, contents): - tmp = temp_file( + tmp = utils.temp_file( prefix=f"boost_{version}_", suffix=version.archive_ext, dir=self._dir ) with tmp as archive_path: diff --git a/project/boost/build.py b/project/boost/build.py index 98b605a..bbe2d91 100644 --- a/project/boost/build.py +++ b/project/boost/build.py @@ -38,7 +38,7 @@ from project.configuration import Configuration from project.linkage import Linkage from project.platform import Platform from project.toolset import Toolset, ToolsetVersion -from project.utils import normalize_path, setup_logging +from project import utils import project.version DEFAULT_PLATFORMS = (Platform.AUTO,) @@ -66,10 +66,10 @@ class BuildParameters: b2_args=None, ): - boost_dir = normalize_path(boost_dir) + boost_dir = utils.normalize_path(boost_dir) libraries = libraries or [] if build_dir is not None: - build_dir = normalize_path(build_dir) + build_dir = utils.normalize_path(build_dir) platforms = platforms or DEFAULT_PLATFORMS configurations = configurations or DEFAULT_CONFIGURATIONS link = link or Linkage.default_link() @@ -228,7 +228,7 @@ def _parse_args(argv=None): "--build", metavar="DIR", dest="build_dir", - type=normalize_path, + type=utils.normalize_path, help="Boost build directory (temporary directory unless specified)", ) @@ -244,7 +244,7 @@ def _parse_args(argv=None): parser.add_argument( "boost_dir", metavar="BOOST_DIR", - type=normalize_path, + type=utils.normalize_path, help="root Boost directory", ) parser.add_argument( @@ -260,7 +260,7 @@ def _parse_args(argv=None): def _main(argv=None): args = _parse_args(argv) - with setup_logging(): + with utils.setup_logging(): build(BuildParameters.from_cmd_args(args)) diff --git a/project/boost/directory.py b/project/boost/directory.py index 1cb3a77..cc3d129 100644 --- a/project/boost/directory.py +++ b/project/boost/directory.py @@ -8,7 +8,7 @@ import os.path from project.os import on_windows from project.toolset import Toolset -from project.utils import cd, run +from project import utils class BoostDir: @@ -18,7 +18,7 @@ class BoostDir: self.path = path def _go(self): - return cd(self.path) + return utils.cd(self.path) def build(self, params): with self._go(): @@ -33,11 +33,13 @@ class BoostDir: def bootstrap(self, params): with self._go(): - run([self._bootstrap_path()] + self._bootstrap_args(params.toolset_version)) + utils.run( + [self._bootstrap_path()] + self._bootstrap_args(params.toolset_version) + ) def _b2(self, params): for b2_params in params.enum_b2_args(): - run([self._b2_path()] + b2_params) + utils.run([self._b2_path()] + b2_params) @staticmethod def _bootstrap_path(): diff --git a/project/boost/download.py b/project/boost/download.py index 1576bab..2780be6 100644 --- a/project/boost/download.py +++ b/project/boost/download.py @@ -27,7 +27,7 @@ import urllib.request from project.boost.archive import Archive, PermanentStorage, TemporaryStorage from project.boost.version import Version -from project.utils import normalize_path, mkdir_parent, retry, setup_logging +from project import utils import project.version @@ -41,11 +41,11 @@ class Download: else: unpack_dir = cache_dir - unpack_dir = normalize_path(unpack_dir) - mkdir_parent(unpack_dir) + unpack_dir = utils.normalize_path(unpack_dir) + utils.mkdir_parent(unpack_dir) if cache_dir is not None: - cache_dir = normalize_path(cache_dir) - mkdir_parent(cache_dir) + cache_dir = utils.normalize_path(cache_dir) + utils.mkdir_parent(cache_dir) self.version = version self.unpack_dir = unpack_dir @@ -70,7 +70,7 @@ class Download: return request.read() @staticmethod - @retry(urllib.request.URLError) + @utils.retry(urllib.request.URLError) def _download_url_retry(url): return Download._download_url(url) @@ -135,14 +135,14 @@ def _parse_args(argv=None): "--unpack", metavar="DIR", dest="unpack_dir", - type=normalize_path, + type=utils.normalize_path, help="directory to unpack the archive to", ) parser.add_argument( "--cache", metavar="DIR", dest="cache_dir", - type=normalize_path, + type=utils.normalize_path, help="download directory (temporary file unless specified)", ) parser.add_argument( @@ -160,7 +160,7 @@ def _parse_args(argv=None): "dest_path", metavar="DIR", nargs="?", - type=normalize_path, + type=utils.normalize_path, help="rename the boost directory to DIR", ) @@ -169,7 +169,7 @@ def _parse_args(argv=None): def _main(argv=None): args = _parse_args(argv) - with setup_logging(): + with utils.setup_logging(): download(Download.from_args(args)) diff --git a/project/build.py b/project/build.py index fce5031..1604ccd 100644 --- a/project/build.py +++ b/project/build.py @@ -31,7 +31,7 @@ from project.configuration import Configuration from project.linkage import Linkage from project.platform import Platform from project.toolset import Toolset, ToolsetVersion -from project.utils import normalize_path, mkdir_parent, run, setup_logging +from project import utils import project.version DEFAULT_PLATFORM = Platform.AUTO @@ -47,7 +47,7 @@ cmake_env["CMAKE_BUILD_PARALLEL_LEVEL"] = str(os.cpu_count()) def run_cmake(cmake_args): - return run(["cmake"] + cmake_args, env=cmake_env) + return utils.run(["cmake"] + cmake_args, env=cmake_env) class GenerationPhase: @@ -64,15 +64,15 @@ class GenerationPhase: cmake_args=None, ): - self.src_dir = normalize_path(src_dir) - self.build_dir = normalize_path(build_dir) + self.src_dir = utils.normalize_path(src_dir) + self.build_dir = utils.normalize_path(build_dir) self.platform = platform or DEFAULT_PLATFORM self.configuration = configuration or DEFAULT_CONFIGURATION - self.boost_dir = normalize_path(boost_dir) if boost_dir else None + self.boost_dir = utils.normalize_path(boost_dir) if boost_dir else None link = link or Linkage.default_link() runtime_link = runtime_link or Linkage.default_runtime_link() self.link, self.runtime_link = Linkage.validate_linkage(link, runtime_link) - self.install_dir = normalize_path(install_dir) if install_dir else None + self.install_dir = utils.normalize_path(install_dir) if install_dir else None self.cmake_args = cmake_args or [] def _cmake_args(self, toolset): @@ -117,7 +117,7 @@ class GenerationPhase: class BuildPhase: def __init__(self, build_dir, install_dir=None, configuration=None): - self.build_dir = normalize_path(build_dir) + self.build_dir = utils.normalize_path(build_dir) self.install_dir = install_dir self.configuration = configuration or DEFAULT_CONFIGURATION @@ -148,12 +148,12 @@ class BuildParameters: cmake_args=None, ): - self.src_dir = normalize_path(src_dir) - self.build_dir = normalize_path(build_dir) if build_dir else None - self.install_dir = normalize_path(install_dir) if install_dir else None + self.src_dir = utils.normalize_path(src_dir) + self.build_dir = utils.normalize_path(build_dir) if build_dir else None + self.install_dir = utils.normalize_path(install_dir) if install_dir else None self.platform = platform or DEFAULT_PLATFORM self.configuration = configuration or DEFAULT_CONFIGURATION - self.boost_dir = normalize_path(boost_dir) if boost_dir else None + self.boost_dir = utils.normalize_path(boost_dir) if boost_dir else None self.link = link or Linkage.default_link() self.runtime_link = runtime_link or Linkage.default_runtime_link() self.toolset_version = toolset_version or DEFAULT_TOOLSET_VERSION @@ -169,7 +169,7 @@ class BuildParameters: def create_build_dir(self): if self.build_dir is not None: logging.info("Build directory: %s", self.build_dir) - mkdir_parent(self.build_dir) + utils.mkdir_parent(self.build_dir) yield self.build_dir return @@ -257,7 +257,7 @@ def _parse_args(argv=None): "--boost", metavar="DIR", dest="boost_dir", - type=normalize_path, + type=utils.normalize_path, help="set Boost directory path", ) @@ -281,7 +281,7 @@ def _parse_args(argv=None): "--install", metavar="DIR", dest="install_dir", - type=normalize_path, + type=utils.normalize_path, help="install directory", ) @@ -296,12 +296,12 @@ def _parse_args(argv=None): parser.add_argument( "src_dir", - type=normalize_path, + type=utils.normalize_path, help="source directory", ) parser.add_argument( "build_dir", - type=normalize_path, + type=utils.normalize_path, nargs="?", help="build directory (a temporary directory if omitted)", ) @@ -311,7 +311,7 @@ def _parse_args(argv=None): def main(argv=None): args = _parse_args(argv) - with setup_logging(): + with utils.setup_logging(): build(BuildParameters.from_args(args)) diff --git a/project/toolset.py b/project/toolset.py index 1e9e2d9..8b6ea07 100644 --- a/project/toolset.py +++ b/project/toolset.py @@ -33,7 +33,7 @@ import shutil import project.mingw from project.os import on_windows from project.platform import Platform -from project.utils import full_exe_name, temp_file +from project import utils class MSVCVersion(Enum): @@ -397,7 +397,7 @@ class BoostCustom(Toolset): version = BoostCustom.COMPILER_VERSION self.version = version path = path or "" - path = path and full_exe_name(path) + path = path and utils.full_exe_name(path) self.path = path build_options = build_options or [] self.build_options = build_options @@ -412,7 +412,7 @@ class BoostCustom(Toolset): @contextmanager def _b2_write_config(self): - config_file = temp_file(prefix="user_config_", suffix=".jam") + config_file = utils.temp_file(prefix="user_config_", suffix=".jam") with config_file as config_path: config = self.b2_format_config() logging.info("Using user config:\n%s", config) -- cgit v1.3