Add relevant ccache env when building package

This commit is contained in:
Waqar Ahmed
2023-05-24 10:29:02 +04:00
parent 51145fed73
commit d3d314b6d7
2 changed files with 13 additions and 1 deletions

View File

@@ -53,11 +53,13 @@ class BuildPackageMixin:
self._build_impl() self._build_impl()
def _get_build_env(self): def _get_build_env(self):
return { env = {
**os.environ, **os.environ,
**APT_ENV, **APT_ENV,
**self.env, **self.env,
} }
env.update(self.ccache_env(env))
return env
def _build_impl(self): def _build_impl(self):
shutil.copytree(self.source_path, self.source_in_chroot, dirs_exist_ok=True, symlinks=True) shutil.copytree(self.source_path, self.source_in_chroot, dirs_exist_ok=True, symlinks=True)

View File

@@ -18,3 +18,13 @@ class CCacheMixin:
@property @property
def ccache_in_chroot(self) -> str: def ccache_in_chroot(self) -> str:
return '/root/.ccache' return '/root/.ccache'
def ccache_env(self, existing_env: dict) -> dict:
if not self.ccache_enabled:
return {}
env = {'CCACHE_DIR': self.ccache_in_chroot}
if self.CCACHE_PATH not in existing_env['PATH'].split(':'):
env['PATH'] = f'{self.CCACHE_PATH}:{existing_env["PATH"]}'
return env