Use only one code to determine what to build.

As we build the "same"[*] things with build_project and build_release_nightly,
let's use the same code.

[*] We are not building the same things has we don't run the same runners
(not the same `PLATFORM_TARGET`) but for a given `PLATFORM_TARGET`, we
are building the same things.
This commit is contained in:
Matthieu Gautier 2023-04-12 11:25:43 +02:00
parent b905e87280
commit 4b8862a959
2 changed files with 35 additions and 50 deletions

View File

@ -9,35 +9,43 @@ from common import (
upload_archive,
OS_NAME,
PLATFORM_TARGET,
DESKTOP,
DEV_BRANCH,
)
if (PLATFORM_TARGET.startswith("android_")
or PLATFORM_TARGET.startswith("iOS")
or PLATFORM_TARGET.startswith("macOS")):
TARGETS = ("libzim", "libkiwix")
elif PLATFORM_TARGET.startswith("native_"):
if OS_NAME == "osx":
if PLATFORM_TARGET.endswith("_mixed"):
TARGETS = ("libzim", "libkiwix")
def select_build_target():
from common import (
PLATFORM_TARGET,
DESKTOP,
OS_NAME
)
if (PLATFORM_TARGET.startswith("android_")
or PLATFORM_TARGET.startswith("iOS")
or PLATFORM_TARGET.startswith("macOS")):
return ("libzim", "libkiwix")
elif PLATFORM_TARGET.startswith("native_"):
if OS_NAME == "osx":
if PLATFORM_TARGET.endswith("_mixed"):
return ("libzim", "libkiwix")
else:
return ("zim-tools", )
else:
TARGETS = ("zim-tools", )
if DESKTOP:
return ("kiwix-desktop",)
elif PLATFORM_TARGET == "native_mixed":
return ("libzim", "libkiwix")
else:
return ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET in ("win32_static", "armhf_static", "armhf_dyn", "aarch64_static", "aarch64_dyn", "i586_static"):
return ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET == "flatpak":
return ("kiwix-desktop",)
elif PLATFORM_TARGET in ("wasm", "armhf_mixed", "aarch64_mixed"):
return ("libzim", )
else:
if DESKTOP:
TARGETS = ("kiwix-desktop",)
elif PLATFORM_TARGET == "native_mixed":
TARGETS = ("libzim", "libkiwix")
else:
TARGETS = ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET in ("win32_static", "armhf_static", "armhf_dyn", "aarch64_static", "aarch64_dyn", "i586_static"):
TARGETS = ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET == "flatpak":
TARGETS = ("kiwix-desktop",)
elif PLATFORM_TARGET in ("wasm", "armhf_mixed", "aarch64_mixed"):
TARGETS = ("libzim", )
else:
TARGETS = ("libzim", "zim-tools", "libkiwix", "kiwix-tools")
return ("libzim", "zim-tools", "libkiwix", "kiwix-tools")
TARGETS = select_build_target()
for target in TARGETS:
run_kiwix_build(target, platform=PLATFORM_TARGET)

View File

@ -17,36 +17,13 @@ from common import (
HOME,
OS_NAME,
PLATFORM_TARGET,
DESKTOP,
MAKE_RELEASE,
notarize_macos_build,
)
if (PLATFORM_TARGET.startswith("android_")
or PLATFORM_TARGET.startswith("iOS")
or PLATFORM_TARGET.startswith("macOS")):
TARGETS = ("libzim", "libkiwix")
elif PLATFORM_TARGET.startswith("native_"):
if OS_NAME == "osx":
if PLATFORM_TARGET.endswith("_mixed"):
TARGETS = ("libzim", "libkiwix")
else:
TARGETS = ("zim-tools", )
else:
if DESKTOP:
TARGETS = ("kiwix-desktop",)
elif PLATFORM_TARGET == "native_mixed":
TARGETS = ("libzim", "libkiwix")
else:
TARGETS = ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET in ("win32_static", "armhf_static", "armhf_dyn", "aarch64_static", "aarch64_dyn", "i586_static"):
TARGETS = ("zim-tools", "kiwix-tools")
elif PLATFORM_TARGET == "flatpak":
TARGETS = ("kiwix-desktop",)
elif PLATFORM_TARGET in ("wasm", "armhf_mixed", "aarch64_mixed"):
TARGETS = ("libzim", )
else:
TARGETS = ("libzim", "zim-tools", "libkiwix", "kiwix-tools")
from build_projects import select_build_target
TARGETS = select_build_target()
# Filter what to build if we are doing a release.
if MAKE_RELEASE: