|
@@ -643,9 +643,10 @@ try_cross_linking:;
|
|
|
android_glue_object = concatenate4_strings(temporary_allocator(), temp_dir, str_lit("android_native_app_glue-"), hash, str_lit(".o"));
|
|
|
android_glue_static_lib = concatenate4_strings(permanent_allocator(), temp_dir, str_lit("libandroid_native_app_glue-"), hash, str_lit(".a"));
|
|
|
|
|
|
- gbString glue = gb_string_make(heap_allocator(), clang_path);
|
|
|
+ gbString glue = gb_string_make_length(heap_allocator(), ODIN_ANDROID_NDK_TOOLCHAIN.text, ODIN_ANDROID_NDK_TOOLCHAIN.len);
|
|
|
defer (gb_string_free(glue));
|
|
|
|
|
|
+ glue = gb_string_append_fmt(glue, "bin/clang");
|
|
|
glue = gb_string_append_fmt(glue, " --target=aarch64-linux-android%d ", ODIN_ANDROID_API_LEVEL);
|
|
|
glue = gb_string_appendc(glue, "-c \"");
|
|
|
glue = gb_string_append_length(glue, ODIN_ANDROID_NDK.text, ODIN_ANDROID_NDK.len);
|
|
@@ -808,6 +809,9 @@ try_cross_linking:;
|
|
|
platform_lib_str = gb_string_append_length(platform_lib_str, ODIN_ANDROID_NDK_TOOLCHAIN_LIB_LEVEL.text, ODIN_ANDROID_NDK_TOOLCHAIN_LIB_LEVEL.len);
|
|
|
platform_lib_str = gb_string_appendc(platform_lib_str, "\" ");
|
|
|
|
|
|
+ platform_lib_str = gb_string_appendc(platform_lib_str, "-landroid ");
|
|
|
+ platform_lib_str = gb_string_appendc(platform_lib_str, "-llog ");
|
|
|
+
|
|
|
platform_lib_str = gb_string_appendc(platform_lib_str, "\"--sysroot=");
|
|
|
platform_lib_str = gb_string_append_length(platform_lib_str, ODIN_ANDROID_NDK_TOOLCHAIN_SYSROOT.text, ODIN_ANDROID_NDK_TOOLCHAIN_SYSROOT.len);
|
|
|
platform_lib_str = gb_string_appendc(platform_lib_str, "\" ");
|
|
@@ -840,12 +844,16 @@ try_cross_linking:;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- gbString link_command_line = gb_string_make(heap_allocator(), clang_path);
|
|
|
+ gbString link_command_line = gb_string_make(heap_allocator(), "");
|
|
|
defer (gb_string_free(link_command_line));
|
|
|
|
|
|
if (is_android) {
|
|
|
+ gbString ndk_bin_directory = gb_string_make_length(temporary_allocator(), ODIN_ANDROID_NDK_TOOLCHAIN.text, ODIN_ANDROID_NDK_TOOLCHAIN.len);
|
|
|
+ link_command_line = gb_string_appendc(link_command_line, ndk_bin_directory);
|
|
|
+ link_command_line = gb_string_appendc(link_command_line, "bin/clang");
|
|
|
link_command_line = gb_string_append_fmt(link_command_line, " --target=aarch64-linux-android%d ", ODIN_ANDROID_API_LEVEL);
|
|
|
- link_command_line = gb_string_appendc(link_command_line, " -nodefaultlibs");
|
|
|
+ } else {
|
|
|
+ link_command_line = gb_string_appendc(link_command_line, clang_path);
|
|
|
}
|
|
|
link_command_line = gb_string_appendc(link_command_line, " -Wno-unused-command-line-argument ");
|
|
|
link_command_line = gb_string_appendc(link_command_line, object_files);
|