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, upload_archive,
OS_NAME, OS_NAME,
PLATFORM_TARGET, PLATFORM_TARGET,
DESKTOP,
DEV_BRANCH, DEV_BRANCH,
) )
if (PLATFORM_TARGET.startswith("android_")
or PLATFORM_TARGET.startswith("iOS") def select_build_target():
or PLATFORM_TARGET.startswith("macOS")): from common import (
TARGETS = ("libzim", "libkiwix") PLATFORM_TARGET,
elif PLATFORM_TARGET.startswith("native_"): DESKTOP,
if OS_NAME == "osx": OS_NAME
if PLATFORM_TARGET.endswith("_mixed"): )
TARGETS = ("libzim", "libkiwix") 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: 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: else:
if DESKTOP: return ("libzim", "zim-tools", "libkiwix", "kiwix-tools")
TARGETS = ("kiwix-desktop",)
elif PLATFORM_TARGET == "native_mixed": TARGETS = select_build_target()
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")
for target in TARGETS: for target in TARGETS:
run_kiwix_build(target, platform=PLATFORM_TARGET) run_kiwix_build(target, platform=PLATFORM_TARGET)

View File

@ -17,36 +17,13 @@ from common import (
HOME, HOME,
OS_NAME, OS_NAME,
PLATFORM_TARGET, PLATFORM_TARGET,
DESKTOP,
MAKE_RELEASE, MAKE_RELEASE,
notarize_macos_build, notarize_macos_build,
) )
if (PLATFORM_TARGET.startswith("android_") from build_projects import select_build_target
or PLATFORM_TARGET.startswith("iOS")
or PLATFORM_TARGET.startswith("macOS")): TARGETS = select_build_target()
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")
# Filter what to build if we are doing a release. # Filter what to build if we are doing a release.
if MAKE_RELEASE: if MAKE_RELEASE: