From f9e78dcc68d70911868d3bb40a35409ad0b89cf3 Mon Sep 17 00:00:00 2001 From: nicole mazzuca Date: Thu, 5 Mar 2020 16:01:57 -0800 Subject: [PATCH] [abseil] Add uwp support (#10301) * [abseil] Add uwp support * [abseil] Drop support with arm/arm64 * [opencensus-cpp] Add keyword supports * update baseline * [abseil] Enable arm support --- ports/abseil/CONTROL | 5 +- ports/abseil/fix-lnk2019-error.patch | 79 ++++----- ports/abseil/fix-usage-lnk-error.patch | 231 ------------------------- ports/abseil/fix-uwp-build.patch | 66 +++++++ ports/abseil/portfile.cmake | 14 +- ports/opencensus-cpp/CONTROL | 3 +- scripts/ci.baseline.txt | 3 +- 7 files changed, 117 insertions(+), 284 deletions(-) delete mode 100644 ports/abseil/fix-usage-lnk-error.patch create mode 100644 ports/abseil/fix-uwp-build.patch diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 01f27c758a..2e4f9e5220 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,8 +1,7 @@ Source: abseil -Version: 2019-12-19 +Version: 2020-03-03 Homepage: https://github.com/abseil/abseil-cpp Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. - Abseil is not meant to be a competitor to the standard library; we've just found that many of these utilities serve a purpose within our code base, and we now want to provide those resources to the C++ community as a whole. -Supports: !uwp \ No newline at end of file + Abseil is not meant to be a competitor to the standard library; we've just found that many of these utilities serve a purpose within our code base, and we now want to provide those resources to the C++ community as a whole. \ No newline at end of file diff --git a/ports/abseil/fix-lnk2019-error.patch b/ports/abseil/fix-lnk2019-error.patch index f16f1f68bc..645d1e094a 100644 --- a/ports/abseil/fix-lnk2019-error.patch +++ b/ports/abseil/fix-lnk2019-error.patch @@ -1,39 +1,40 @@ -diff --git a/absl/base/options.h b/absl/base/options.h -index 3961e63..d4f21ec 100644 ---- a/absl/base/options.h -+++ b/absl/base/options.h -@@ -94,7 +94,7 @@ - // User code should not inspect this macro. To check in the preprocessor if - // absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY. - --#define ABSL_OPTION_USE_STD_ANY 2 -+#define ABSL_OPTION_USE_STD_ANY 0 - - - // ABSL_OPTION_USE_STD_OPTIONAL -@@ -129,7 +129,7 @@ - // absl::optional is a typedef of std::optional, use the feature macro - // ABSL_USES_STD_OPTIONAL. - --#define ABSL_OPTION_USE_STD_OPTIONAL 2 -+#define ABSL_OPTION_USE_STD_OPTIONAL 0 - - - // ABSL_OPTION_USE_STD_STRING_VIEW -@@ -156,7 +156,7 @@ - // absl::string_view is a typedef of std::string_view, use the feature macro - // ABSL_USES_STD_STRING_VIEW. - --#define ABSL_OPTION_USE_STD_STRING_VIEW 2 -+#define ABSL_OPTION_USE_STD_STRING_VIEW 0 - - - // ABSL_OPTION_USE_STD_VARIANT -@@ -183,6 +183,6 @@ - // absl::variant is a typedef of std::variant, use the feature macro - // ABSL_USES_STD_VARIANT. - --#define ABSL_OPTION_USE_STD_VARIANT 2 -+#define ABSL_OPTION_USE_STD_VARIANT 0 - - #endif // ABSL_BASE_OPTIONS_H_ +diff --git a/absl/base/options.h b/absl/base/options.h +index 234137c..1fb77e4 100644 +--- a/absl/base/options.h ++++ b/absl/base/options.h +@@ -100,7 +100,7 @@ + // User code should not inspect this macro. To check in the preprocessor if + // absl::any is a typedef of std::any, use the feature macro ABSL_USES_STD_ANY. + +-#define ABSL_OPTION_USE_STD_ANY 2 ++#define ABSL_OPTION_USE_STD_ANY 0 + + + // ABSL_OPTION_USE_STD_OPTIONAL +@@ -127,7 +127,7 @@ + // absl::optional is a typedef of std::optional, use the feature macro + // ABSL_USES_STD_OPTIONAL. + +-#define ABSL_OPTION_USE_STD_OPTIONAL 2 ++#define ABSL_OPTION_USE_STD_OPTIONAL 0 + + + // ABSL_OPTION_USE_STD_STRING_VIEW +@@ -154,7 +154,7 @@ + // absl::string_view is a typedef of std::string_view, use the feature macro + // ABSL_USES_STD_STRING_VIEW. + +-#define ABSL_OPTION_USE_STD_STRING_VIEW 2 ++#define ABSL_OPTION_USE_STD_STRING_VIEW 0 + + // ABSL_OPTION_USE_STD_VARIANT + // +@@ -180,7 +180,7 @@ + // absl::variant is a typedef of std::variant, use the feature macro + // ABSL_USES_STD_VARIANT. + +-#define ABSL_OPTION_USE_STD_VARIANT 2 ++#define ABSL_OPTION_USE_STD_VARIANT 0 + + + // ABSL_OPTION_USE_INLINE_NAMESPACE diff --git a/ports/abseil/fix-usage-lnk-error.patch b/ports/abseil/fix-usage-lnk-error.patch deleted file mode 100644 index 94c5d98d91..0000000000 --- a/ports/abseil/fix-usage-lnk-error.patch +++ /dev/null @@ -1,231 +0,0 @@ -diff --git a/absl/strings/ascii.cc b/absl/strings/ascii.cc -index abea3e4..16d0bcc 100644 ---- a/absl/strings/ascii.cc -+++ b/absl/strings/ascii.cc -@@ -51,108 +51,6 @@ namespace ascii_internal { - // elif i % 16 == 15: - // print - --// clang-format off --// Array of bitfields holding character information. Each bit value corresponds --// to a particular character feature. For readability, and because the value --// of these bits is tightly coupled to this implementation, the individual bits --// are not named. Note that bitfields for all characters above ASCII 127 are --// zero-initialized. --const unsigned char kPropertyBits[256] = { -- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x00 -- 0x40, 0x68, 0x48, 0x48, 0x48, 0x48, 0x40, 0x40, -- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x10 -- 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, -- 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, // 0x20 -- 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, -- 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, // 0x30 -- 0x84, 0x84, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, -- 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x40 -- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, -- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x50 -- 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x10, -- 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x60 -- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, -- 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x70 -- 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x40, --}; -- --// Array of characters for the ascii_tolower() function. For values 'A' --// through 'Z', return the lower-case character; otherwise, return the --// identity of the passed character. --const char kToLower[256] = { -- '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', -- '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f', -- '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', -- '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', -- '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27', -- '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f', -- '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37', -- '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f', -- '\x40', 'a', 'b', 'c', 'd', 'e', 'f', 'g', -- 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', -- 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', -- 'x', 'y', 'z', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f', -- '\x60', '\x61', '\x62', '\x63', '\x64', '\x65', '\x66', '\x67', -- '\x68', '\x69', '\x6a', '\x6b', '\x6c', '\x6d', '\x6e', '\x6f', -- '\x70', '\x71', '\x72', '\x73', '\x74', '\x75', '\x76', '\x77', -- '\x78', '\x79', '\x7a', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f', -- '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', -- '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', -- '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', -- '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', -- '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7', -- '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf', -- '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7', -- '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf', -- '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7', -- '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', -- '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7', -- '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf', -- '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7', -- '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef', -- '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7', -- '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff', --}; -- --// Array of characters for the ascii_toupper() function. For values 'a' --// through 'z', return the upper-case character; otherwise, return the --// identity of the passed character. --const char kToUpper[256] = { -- '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', -- '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f', -- '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', -- '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', -- '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27', -- '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f', -- '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37', -- '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f', -- '\x40', '\x41', '\x42', '\x43', '\x44', '\x45', '\x46', '\x47', -- '\x48', '\x49', '\x4a', '\x4b', '\x4c', '\x4d', '\x4e', '\x4f', -- '\x50', '\x51', '\x52', '\x53', '\x54', '\x55', '\x56', '\x57', -- '\x58', '\x59', '\x5a', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f', -- '\x60', 'A', 'B', 'C', 'D', 'E', 'F', 'G', -- 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', -- 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', -- 'X', 'Y', 'Z', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f', -- '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', -- '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', -- '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', -- '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', -- '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7', -- '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf', -- '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7', -- '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf', -- '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7', -- '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', -- '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7', -- '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf', -- '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7', -- '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef', -- '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7', -- '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff', --}; --// clang-format on -- - } // namespace ascii_internal - - void AsciiStrToLower(std::string* s) { -diff --git a/absl/strings/ascii.h b/absl/strings/ascii.h -index 792aabe..989e464 100644 ---- a/absl/strings/ascii.h -+++ b/absl/strings/ascii.h -@@ -62,14 +62,105 @@ namespace absl { - ABSL_NAMESPACE_BEGIN - namespace ascii_internal { - --// Declaration for an array of bitfields holding character information. --extern const unsigned char kPropertyBits[256]; -- --// Declaration for the array of characters to upper-case characters. --extern const char kToUpper[256]; -- --// Declaration for the array of characters to lower-case characters. --extern const char kToLower[256]; -+// Array of bitfields holding character information. Each bit value corresponds -+// to a particular character feature. For readability, and because the value -+// of these bits is tightly coupled to this implementation, the individual bits -+// are not named. Note that bitfields for all characters above ASCII 127 are -+// zero-initialized. -+const unsigned char kPropertyBits[256] = { -+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x00 -+ 0x40, 0x68, 0x48, 0x48, 0x48, 0x48, 0x40, 0x40, -+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, // 0x10 -+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, -+ 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, // 0x20 -+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, -+ 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, // 0x30 -+ 0x84, 0x84, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, -+ 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x40 -+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, -+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x50 -+ 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x10, -+ 0x10, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x05, // 0x60 -+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, -+ 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, // 0x70 -+ 0x05, 0x05, 0x05, 0x10, 0x10, 0x10, 0x10, 0x40, -+}; -+ -+// Array of characters for the ascii_tolower() function. For values 'A' -+// through 'Z', return the lower-case character; otherwise, return the -+// identity of the passed character. -+const char kToLower[256] = { -+ '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', -+ '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f', -+ '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', -+ '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', -+ '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27', -+ '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f', -+ '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37', -+ '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f', -+ '\x40', 'a', 'b', 'c', 'd', 'e', 'f', 'g', -+ 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', -+ 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', -+ 'x', 'y', 'z', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f', -+ '\x60', '\x61', '\x62', '\x63', '\x64', '\x65', '\x66', '\x67', -+ '\x68', '\x69', '\x6a', '\x6b', '\x6c', '\x6d', '\x6e', '\x6f', -+ '\x70', '\x71', '\x72', '\x73', '\x74', '\x75', '\x76', '\x77', -+ '\x78', '\x79', '\x7a', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f', -+ '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', -+ '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', -+ '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', -+ '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', -+ '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7', -+ '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf', -+ '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7', -+ '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf', -+ '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7', -+ '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', -+ '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7', -+ '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf', -+ '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7', -+ '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef', -+ '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7', -+ '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff', -+}; -+ -+// Array of characters for the ascii_toupper() function. For values 'a' -+// through 'z', return the upper-case character; otherwise, return the -+// identity of the passed character. -+const char kToUpper[256] = { -+ '\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', -+ '\x08', '\x09', '\x0a', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f', -+ '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', -+ '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', -+ '\x20', '\x21', '\x22', '\x23', '\x24', '\x25', '\x26', '\x27', -+ '\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x2d', '\x2e', '\x2f', -+ '\x30', '\x31', '\x32', '\x33', '\x34', '\x35', '\x36', '\x37', -+ '\x38', '\x39', '\x3a', '\x3b', '\x3c', '\x3d', '\x3e', '\x3f', -+ '\x40', '\x41', '\x42', '\x43', '\x44', '\x45', '\x46', '\x47', -+ '\x48', '\x49', '\x4a', '\x4b', '\x4c', '\x4d', '\x4e', '\x4f', -+ '\x50', '\x51', '\x52', '\x53', '\x54', '\x55', '\x56', '\x57', -+ '\x58', '\x59', '\x5a', '\x5b', '\x5c', '\x5d', '\x5e', '\x5f', -+ '\x60', 'A', 'B', 'C', 'D', 'E', 'F', 'G', -+ 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', -+ 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', -+ 'X', 'Y', 'Z', '\x7b', '\x7c', '\x7d', '\x7e', '\x7f', -+ '\x80', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87', -+ '\x88', '\x89', '\x8a', '\x8b', '\x8c', '\x8d', '\x8e', '\x8f', -+ '\x90', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96', '\x97', -+ '\x98', '\x99', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', -+ '\xa0', '\xa1', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6', '\xa7', -+ '\xa8', '\xa9', '\xaa', '\xab', '\xac', '\xad', '\xae', '\xaf', -+ '\xb0', '\xb1', '\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7', -+ '\xb8', '\xb9', '\xba', '\xbb', '\xbc', '\xbd', '\xbe', '\xbf', -+ '\xc0', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7', -+ '\xc8', '\xc9', '\xca', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', -+ '\xd0', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6', '\xd7', -+ '\xd8', '\xd9', '\xda', '\xdb', '\xdc', '\xdd', '\xde', '\xdf', -+ '\xe0', '\xe1', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6', '\xe7', -+ '\xe8', '\xe9', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef', -+ '\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7', -+ '\xf8', '\xf9', '\xfa', '\xfb', '\xfc', '\xfd', '\xfe', '\xff', -+}; - - } // namespace ascii_internal - diff --git a/ports/abseil/fix-uwp-build.patch b/ports/abseil/fix-uwp-build.patch new file mode 100644 index 0000000000..a9b4a0c075 --- /dev/null +++ b/ports/abseil/fix-uwp-build.patch @@ -0,0 +1,66 @@ +diff --git a/absl/base/internal/sysinfo.cc b/absl/base/internal/sysinfo.cc +index a0930e9..2ec5793 100644 +--- a/absl/base/internal/sysinfo.cc ++++ b/absl/base/internal/sysinfo.cc +@@ -72,6 +72,12 @@ static int GetNumCPUs() { + #if defined(_WIN32) + + static double GetNominalCPUFrequency() { ++// UWP apps don't have access to the registry and currently don't provide an ++// API informing about CPU nominal frequency. ++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && \ ++ !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ++ return 1.0; ++#else + #pragma comment(lib, "advapi32.lib") // For Reg* functions. + HKEY key; + // Use the Reg* functions rather than the SH functions because shlwapi.dll +@@ -91,6 +97,7 @@ static double GetNominalCPUFrequency() { + } + } + return 1.0; ++#endif // WINAPI_PARTITION_APP && !WINAPI_PARTITION_DESKTOP + } + + #elif defined(CTL_HW) && defined(HW_CPU_FREQ) +diff --git a/absl/debugging/symbolize_win32.inc b/absl/debugging/symbolize_win32.inc +index c3df46f..d324fc1 100644 +--- a/absl/debugging/symbolize_win32.inc ++++ b/absl/debugging/symbolize_win32.inc +@@ -36,6 +36,11 @@ ABSL_NAMESPACE_BEGIN + static HANDLE process = NULL; + + void InitializeSymbolizer(const char*) { ++// UWP doesn't support this function ++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && \ ++ !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ++ return; ++#else + if (process != nullptr) { + return; + } +@@ -52,9 +57,16 @@ void InitializeSymbolizer(const char*) { + const unsigned long long error{GetLastError()}; // NOLINT(runtime/int) + ABSL_RAW_LOG(FATAL, "SymInitialize() failed: %llu", error); + } ++#endif + } + + bool Symbolize(const void* pc, char* out, int out_size) { ++ ++// UWP doesn't support this function ++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && \ ++ !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) ++ return false; ++#else + if (out_size <= 0) { + return false; + } +@@ -75,6 +87,7 @@ bool Symbolize(const void* pc, char* out, int out_size) { + out[out_size - 1] = '\0'; + } + return true; ++#endif + } + + ABSL_NAMESPACE_END diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 6acc0ea39e..4bc6e76ddc 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -1,16 +1,14 @@ -vcpkg_fail_port_install(ON_TARGET "UWP") - vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 29235139149790f5afc430c11cec8f1eb1677607 #commit 2019-12-19 - SHA512 be34c782eb6cdb3355ab56f1592e692435a63bf19a0364980d498c75db267e986e60a3e425bd3b9c57b7f8afdb7c642eb68386165ec147a6d5b448570bbe756a + REF 06f0e767d13d4d68071c4fc51e25724e0fc8bc74 #commit 2020-03-03 + SHA512 f6e2302676ddae39d84d8ec92dbd13520ae214013b43455f14ced3ae6938b94cedb06cfc40eb1781dac48f02cd35ed80673ed2d871541ef4438c282a9a4133b9 HEAD_REF master PATCHES - fix-usage-lnk-error.patch fix-lnk2019-error.patch + fix-uwp-build.patch ) vcpkg_configure_cmake( @@ -22,10 +20,10 @@ vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/absl TARGET_PATH share/absl) vcpkg_copy_pdbs() - -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/include/absl/copts ${CURRENT_PACKAGES_DIR}/include/absl/strings/testdata - ${CURRENT_PACKAGES_DIR}/include/absl/time/internal/cctz/testdata) \ No newline at end of file + ${CURRENT_PACKAGES_DIR}/include/absl/time/internal/cctz/testdata) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file diff --git a/ports/opencensus-cpp/CONTROL b/ports/opencensus-cpp/CONTROL index 1a95985ada..bb0e4e0e63 100644 --- a/ports/opencensus-cpp/CONTROL +++ b/ports/opencensus-cpp/CONTROL @@ -1,8 +1,9 @@ Source: opencensus-cpp -Version: 0.4.0 +Version: 0.4.0-1 Homepage: https://github.com/census-instrumentation/opencensus-cpp Description: OpenCensus is a toolkit for collecting application performance and behavior data. It currently includes an API for tracing and stats. Build-Depends: abseil +Supports: !windows Feature: test Description: Build test \ No newline at end of file diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 0c389fa0d4..31606af1ab 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -45,7 +45,6 @@ 7zip:x64-osx=fail 7zip:x64-uwp=fail abseil:arm-uwp=fail -abseil:x64-uwp=fail ace:arm64-windows=fail ace:arm-uwp=fail ace:x64-osx=fail @@ -576,7 +575,6 @@ graphite2:x64-uwp=fail graphqlparser:arm-uwp=fail graphqlparser:x64-uwp=fail grpc:arm-uwp=fail -grpc:x64-uwp=fail gsl:arm-uwp=fail gsl:x64-uwp=fail gsoap:arm-uwp=ignore @@ -1248,6 +1246,7 @@ opencensus-cpp:arm64-windows=fail opencensus-cpp:x64-windows=fail opencensus-cpp:x64-windows-static=fail opencensus-cpp:x86-windows=fail +opencensus-cpp:x64-uwp=fail opencl:arm64-windows=fail opencl:arm-uwp=fail opencl:x64-uwp=fail