@@ -55,6 +55,7 @@ class SdlPlatform(Enum):
55
55
FreeBSD = "freebsd"
56
56
NetBSD = "netbsd"
57
57
NGage = "ngage"
58
+ Harmony = "harmony"
58
59
59
60
60
61
class Msys2Platform (Enum ):
@@ -141,6 +142,7 @@ class JobSpec:
141
142
"netbsd" : JobSpec (name = "NetBSD" , os = JobOs .UbuntuLatest , platform = SdlPlatform .NetBSD , artifact = "SDL-netbsd-x64" , ),
142
143
"freebsd" : JobSpec (name = "FreeBSD" , os = JobOs .UbuntuLatest , platform = SdlPlatform .FreeBSD , artifact = "SDL-freebsd-x64" , ),
143
144
"ngage" : JobSpec (name = "N-Gage" , os = JobOs .WindowsLatest , platform = SdlPlatform .NGage , artifact = "SDL-ngage" , ),
145
+ "harmony" : JobSpec (name = "Harmony" , os = JobOs .UbuntuLatest , platform = SdlPlatform .Harmony , artifact = "SDL-harmony-arm64" , harmony_arch = "arm64-v8a" ),
144
146
}
145
147
146
148
@@ -757,6 +759,15 @@ def spec_to_job(spec: JobSpec, key: str, trackmem_symbol_names: bool) -> JobDeta
757
759
job .setup_gage_sdk_path = "C:/ngagesdk"
758
760
job .cmake_toolchain_file = "C:/ngagesdk/cmake/ngage-toolchain.cmake"
759
761
job .test_pkg_config = False
762
+ case SdlPlatform .Harmony :
763
+ job .cmake_arguments .extend ((
764
+ f"-DOHOS_ARCH={ spec .harmony_arch } " ,
765
+ "-DCMAKE_TOOLCHAIN_FILE=/opt/native/build/cmake/ohos.toolchain.cmake" ,
766
+ ))
767
+ job .shared_lib = SharedLibType .SO_0
768
+ job .static_lib = StaticLibType .A
769
+ job .run_tests = False
770
+ job .test_pkg_config = False
760
771
case _:
761
772
raise ValueError (f"Unsupported platform={ spec .platform } " )
762
773
0 commit comments