diff --git a/BUILD.gn b/BUILD.gn index d574aafe8cfe73c00a7ab501c28fef2e328c4355..0fd5474356e990d498f6eb1ebf9d418683ecd2e0 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -89,6 +89,9 @@ ohos_executable("hdc_std") { "HDC_HOST", "HARMONY_PROJECT", ] + if (is_mac) { + defines += [ "HOST_MAC" ] + } cflags_cc = [ "-Wno-error", "-Wno-error=unused-variable", diff --git a/src/common/serial_struct_define.h b/src/common/serial_struct_define.h index a17dfc6e6f4df76fe1a7e170dbd0b7c5836b0946..9d5eae31d6b2ff91e30ee03633a768b4c9578de6 100644 --- a/src/common/serial_struct_define.h +++ b/src/common/serial_struct_define.h @@ -307,6 +307,13 @@ namespace SerialStruct { } } +#if defined(HOST_MAC) + static void WriteVarint(unsigned long value, Writer &out) + { + WriteVarint((uint64_t)value, out); + } +#endif + static bool ReadVarint(uint32_t &value, reader &in) { value = 0; @@ -340,6 +347,13 @@ namespace SerialStruct { return false; } +#if defined(HOST_MAC) + static bool ReadVarint(unsigned long &value, reader &in) + { + return ReadVarint(value, in); + } +#endif + static void WriteFixed(uint32_t value, Writer &out) { #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__