Skip to content

Commit 63d4c4a

Browse files
author
Shun Lin
committed
Merge pull request #304 from crystax/v3
Support CrystaX NDK for Android builds
2 parents 3c99aac + 5e7b160 commit 63d4c4a

File tree

1 file changed

+24
-5
lines changed

1 file changed

+24
-5
lines changed

plugins/plugin_compile/build_android.py

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -206,23 +206,42 @@ def get_toolchain_version(self, ndk_root, compile_obj):
206206
lines = versionFile.readlines()
207207
versionFile.close()
208208

209-
version_num = None
209+
crystax_ndk = False
210+
version_major = None
210211
version_char = None
211212
pattern = r'^[a-zA-Z]+(\d+)(\w)'
212213
for line in lines:
213214
str_line = line.lstrip()
214215
match = re.match(pattern, str_line)
215216
if match:
216-
version_num = int(match.group(1))
217+
version_major = int(match.group(1))
217218
version_char = match.group(2)
218219
break
219220

220-
if version_num is None:
221+
if version_major is None:
222+
pattern = r'^crystax-ndk-(\d+)\.(\d+)\.(\d+)'
223+
for line in lines:
224+
str_line = line.lstrip()
225+
match = re.match(pattern, str_line)
226+
if match:
227+
crystax_ndk = True
228+
version_major = int(match.group(1))
229+
version_minor = int(match.group(2))
230+
version_patch = int(match.group(3))
231+
break
232+
233+
if version_major is None:
221234
cocos.Logging.warning(MultiLanguage.get_string('COMPILE_WARNING_GET_NDK_VER_FAILED_FMT',
222235
version_file_path))
223236
else:
224-
version_char = version_char.lower()
225-
if version_num > 10 or (version_num == 10 and cmp(version_char, 'c') >= 0):
237+
if crystax_ndk:
238+
if version_major > 10 or (version_major == 10 and version_minor >= 3):
239+
ret_version = "5"
240+
elif version_major == 10 and version_minor < 3:
241+
ret_version = "4.9"
242+
else:
243+
compile_obj.add_warning_at_end(MultiLanguage.get_string('COMPILE_WARNING_NDK_VERSION'))
244+
elif version_major > 10 or (version_major == 10 and cmp(version_char.lower(), 'c') >= 0):
226245
ret_version = "4.9"
227246
else:
228247
compile_obj.add_warning_at_end(MultiLanguage.get_string('COMPILE_WARNING_NDK_VERSION'))

0 commit comments

Comments
 (0)