diff --git a/BUILD.gn b/BUILD.gn index 77628490c0b1fc39252772c63b2738eac9ec3a91..ee1b2c3d275cfc87b753ad4e91c0c717934d56dd 100755 --- a/BUILD.gn +++ b/BUILD.gn @@ -185,6 +185,8 @@ ohos_source_set("ace_napi_static") { external_deps += [ "ace_engine:ace_container_scope" ] defines += [ "ENABLE_CONTAINER_SCOPE_SEND_EVENT" ] } + } else if (is_mac) { + external_deps += [ "runtime_core:libarkbase_static" ] } # Use static libuv and icu for cross build @@ -209,7 +211,11 @@ ohos_source_set("ace_napi_static") { } } - cflags_cc = [ "-Wno-missing-braces" ] + if (is_mac) { + cflags_cc = [ "-Wno-missing-braces", "-Wno-vla-extension" ] + } else { + cflags_cc = [ "-Wno-missing-braces" ] + } if (ark_standalone_build && (is_debug || (defined(is_fastverify) && is_fastverify))) { cflags_cc += [ diff --git a/native_engine/native_async_work.cpp b/native_engine/native_async_work.cpp index 2b7f09d57cc2610b22ea7d6c283e5340e340171f..0956e4812b42445c107c1d893c7d7908368c0478 100644 --- a/native_engine/native_async_work.cpp +++ b/native_engine/native_async_work.cpp @@ -46,8 +46,13 @@ NativeAsyncWork::NativeAsyncWork(NativeEngine* engine, NativeAsyncCompleteCallback complete, const std::string &asyncResourceName, void* data) - : work_({ 0 }), engine_(engine), engineId_(engine->GetId()), execute_(execute), complete_(complete), data_(data) + : engine_(engine), engineId_(engine->GetId()), execute_(execute), complete_(complete), data_(data) { +#ifdef PANDA_TARGET_MACOS + work_ = {}; +#else + work_ = { 0 }; +#endif work_.data = this; (void)asyncResourceName; #ifdef ENABLE_HITRACE diff --git a/utils/log.h b/utils/log.h index 4555d43525119d75fc830b3843435e24c63effa6..7c324fdd87949e043bffb946c03cb95a062ca5f5 100644 --- a/utils/log.h +++ b/utils/log.h @@ -26,6 +26,12 @@ #define __FILENAME__ strrchr(__FILE__, '/') + 1 +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wgnu-zero-variadic-macro-arguments" +#elif defined(__GNUC__) || defined(__GNUG__) +#pragma GCC diagnostic ignored "-Wgnu-zero-variadic-macro-arguments" +#endif + #if defined(MAC_PLATFORM) || defined(WINDOWS_PLATFORM) || defined(ANDROID_PLATFORM) || defined(IOS_PLATFORM) || \ defined(LINUX_PLATFORM) enum class LogLevel : uint32_t {