Merge pull request #432 from kiwix/donot_recompile
Fix recompilation of the CI of meson project.
This commit is contained in:
commit
d073c6d1dc
|
@ -148,12 +148,6 @@ def make_deps_archive(target=None, name=None, full=False):
|
|||
files_to_archive += (HOME / "BUILD_native_static").glob("*/.*_ok")
|
||||
files_to_archive += HOME.glob("BUILD_android*/**/.*_ok")
|
||||
files_to_archive += SOURCE_DIR.glob("*/.*_ok")
|
||||
files_to_archive += [
|
||||
SOURCE_DIR / "pugixml-{}".format(base_deps_versions["pugixml"])
|
||||
]
|
||||
files_to_archive += HOME.glob(
|
||||
"BUILD_*/pugixml-{}".format(base_deps_versions["pugixml"])
|
||||
)
|
||||
if PLATFORM_TARGET.startswith("armhf"):
|
||||
files_to_archive += (SOURCE_DIR / "armhf").glob("*")
|
||||
toolchains_subdirs = HOME.glob("BUILD_*/TOOLCHAINS/*/*")
|
||||
|
|
|
@ -21,6 +21,7 @@ class _MetaDependency(type):
|
|||
|
||||
class Dependency(metaclass=_MetaDependency):
|
||||
all_deps = {}
|
||||
force_build = False
|
||||
force_native_build = False
|
||||
|
||||
@classmethod
|
||||
|
@ -240,6 +241,8 @@ class Builder:
|
|||
print(" {} {} : ".format(name, self.name), end="", flush=True)
|
||||
log = pj(self._log_dir, 'cmd_{}_{}.log'.format(name, self.name))
|
||||
context = Context(name, log, self.target.force_native_build)
|
||||
if self.target.force_build:
|
||||
context.no_skip = True
|
||||
try:
|
||||
start_time = time.time()
|
||||
ret = function(*args, context=context)
|
||||
|
@ -493,11 +496,13 @@ class MesonBuilder(Builder):
|
|||
run_command(command, self.source_path, context, env=env)
|
||||
|
||||
def _compile(self, context):
|
||||
context.try_skip(self.build_path)
|
||||
command = "{} -v".format(neutralEnv('ninja_command'))
|
||||
env = self.buildEnv.get_env(cross_comp_flags=False, cross_compilers=False, cross_path=True)
|
||||
run_command(command, self.build_path, context, env=env)
|
||||
|
||||
def _test(self, context):
|
||||
context.try_skip(self.build_path)
|
||||
if ( self.buildEnv.platformInfo.build == 'android'
|
||||
or (self.buildEnv.platformInfo.build != 'native'
|
||||
and not self.buildEnv.platformInfo.static)
|
||||
|
@ -508,6 +513,7 @@ class MesonBuilder(Builder):
|
|||
run_command(command, self.build_path, context, env=env)
|
||||
|
||||
def _install(self, context):
|
||||
context.try_skip(self.build_path)
|
||||
command = "{} -v install".format(neutralEnv('ninja_command'))
|
||||
env = self.buildEnv.get_env(cross_comp_flags=False, cross_compilers=False, cross_path=True)
|
||||
run_command(command, self.build_path, context, env=env)
|
||||
|
@ -536,6 +542,7 @@ class GradleBuilder(Builder):
|
|||
shutil.copytree(self.source_path, self.build_path)
|
||||
|
||||
def _compile(self, context):
|
||||
context.try_skip(self.build_path)
|
||||
command = "./gradlew {gradle_target} {gradle_option}"
|
||||
command = command.format(
|
||||
gradle_target=self.gradle_target,
|
||||
|
|
|
@ -5,6 +5,7 @@ from .base import (
|
|||
|
||||
class KiwixDesktop(Dependency):
|
||||
name = "kiwix-desktop"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/kiwix/kiwix-desktop.git"
|
||||
|
|
|
@ -10,6 +10,7 @@ from kiwixbuild._global import option, get_target_step, neutralEnv
|
|||
|
||||
class Kiwixlib(Dependency):
|
||||
name = "kiwix-lib"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/kiwix/kiwix-lib.git"
|
||||
|
@ -39,6 +40,7 @@ class Kiwixlib(Dependency):
|
|||
|
||||
class KiwixlibApp(Dependency):
|
||||
name = "kiwix-lib-app"
|
||||
force_build = True
|
||||
|
||||
class Source(Kiwixlib.Source):
|
||||
name = "kiwix-lib"
|
||||
|
|
|
@ -5,6 +5,7 @@ from .base import (
|
|||
|
||||
class KiwixTools(Dependency):
|
||||
name = "kiwix-tools"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/kiwix/kiwix-tools.git"
|
||||
|
|
|
@ -6,6 +6,7 @@ from kiwixbuild._global import option
|
|||
|
||||
class Libzim(Dependency):
|
||||
name = "libzim"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/openzim/libzim.git"
|
||||
|
|
|
@ -5,6 +5,7 @@ from .base import (
|
|||
|
||||
class ZimTools(Dependency):
|
||||
name = "zim-tools"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/openzim/zim-tools.git"
|
||||
|
|
|
@ -5,6 +5,7 @@ from .base import (
|
|||
|
||||
class Zimwriterfs(Dependency):
|
||||
name = "zimwriterfs"
|
||||
force_build = True
|
||||
|
||||
class Source(GitClone):
|
||||
git_remote = "https://github.com/openzim/zimwriterfs.git"
|
||||
|
|
|
@ -187,8 +187,11 @@ class Context:
|
|||
self.log_file = log_file
|
||||
self.force_native_build = force_native_build
|
||||
self.autoskip_file = None
|
||||
self.no_skip = False
|
||||
|
||||
def try_skip(self, path, extra_name=""):
|
||||
if self.no_skip:
|
||||
return
|
||||
if extra_name:
|
||||
extra_name = "_{}".format(extra_name)
|
||||
self.autoskip_file = pj(path, ".{}{}_ok".format(self.command_name, extra_name))
|
||||
|
|
|
@ -236,10 +236,6 @@ def make_deps_archive(target=None, name=None, full=False):
|
|||
files_to_archive += (HOME/"BUILD_native_static").glob('*/.*_ok')
|
||||
files_to_archive += HOME.glob('BUILD_android*/**/.*_ok')
|
||||
files_to_archive += SOURCE_DIR.glob('*/.*_ok')
|
||||
files_to_archive += [SOURCE_DIR/'pugixml-{}'.format(
|
||||
base_deps_versions['pugixml'])]
|
||||
files_to_archive += HOME.glob('BUILD_*/pugixml-{}'.format(
|
||||
base_deps_versions['pugixml']))
|
||||
if PLATFORM.startswith('armhf'):
|
||||
files_to_archive += (SOURCE_DIR/'armhf').glob('*')
|
||||
toolchains_subdirs = HOME.glob('**/TOOLCHAINS/*/*')
|
||||
|
|
Loading…
Reference in New Issue