Import Cobalt 21.master.0.260628
diff --git a/src/starboard/raspi/2/skia/configuration.cc b/src/starboard/raspi/2/skia/configuration.cc
new file mode 100644
index 0000000..0ffdf45
--- /dev/null
+++ b/src/starboard/raspi/2/skia/configuration.cc
@@ -0,0 +1,73 @@
+// Copyright 2020 The Cobalt Authors. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "starboard/raspi/2/skia/configuration.h"
+
+#include "cobalt/extension/configuration.h"
+#include "starboard/common/configuration_defaults.h"
+
+namespace starboard {
+namespace raspi {
+namespace skia {
+
+namespace {
+
+int CobaltSkiaGlyphAtlasWidth() {
+ return 2048;
+}
+
+int CobaltSkiaGlyphAtlasHeight() {
+ return 2048;
+}
+
+const char* CobaltRasterizerType() {
+ return "hardware";
+}
+
+const CobaltExtensionConfigurationApi kConfigurationApi = {
+ kCobaltExtensionConfigurationName,
+ 1,
+ &common::CobaltUserOnExitStrategyDefault,
+ &common::CobaltRenderDirtyRegionOnlyDefault,
+ &common::CobaltEglSwapIntervalDefault,
+ &common::CobaltFallbackSplashScreenUrlDefault,
+ &common::CobaltEnableQuicDefault,
+ &common::CobaltSkiaCacheSizeInBytesDefault,
+ &common::CobaltOffscreenTargetCacheSizeInBytesDefault,
+ &common::CobaltEncodedImageCacheSizeInBytesDefault,
+ &common::CobaltImageCacheSizeInBytesDefault,
+ &common::CobaltLocalTypefaceCacheSizeInBytesDefault,
+ &common::CobaltRemoteTypefaceCacheSizeInBytesDefault,
+ &common::CobaltMeshCacheSizeInBytesDefault,
+ &common::CobaltSoftwareSurfaceCacheSizeInBytesDefault,
+ &common::CobaltImageCacheCapacityMultiplierWhenPlayingVideoDefault,
+ &CobaltSkiaGlyphAtlasWidth,
+ &CobaltSkiaGlyphAtlasHeight,
+ &common::CobaltJsGarbageCollectionThresholdInBytesDefault,
+ &common::CobaltReduceCpuMemoryByDefault,
+ &common::CobaltReduceGpuMemoryByDefault,
+ &common::CobaltGcZealDefault,
+ &CobaltRasterizerType,
+ &common::CobaltEnableJitDefault,
+};
+
+} // namespace
+
+const void* GetConfigurationApi() {
+ return &kConfigurationApi;
+}
+
+} // namespace skia
+} // namespace raspi
+} // namespace starboard
diff --git a/src/starboard/raspi/2/skia/configuration.h b/src/starboard/raspi/2/skia/configuration.h
new file mode 100644
index 0000000..4ce8394
--- /dev/null
+++ b/src/starboard/raspi/2/skia/configuration.h
@@ -0,0 +1,28 @@
+// Copyright 2020 The Cobalt Authors. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#ifndef STARBOARD_RASPI_2_SKIA_CONFIGURATION_H_
+#define STARBOARD_RASPI_2_SKIA_CONFIGURATION_H_
+
+namespace starboard {
+namespace raspi {
+namespace skia {
+
+const void* GetConfigurationApi();
+
+} // namespace skia
+} // namespace raspi
+} // namespace starboard
+
+#endif // STARBOARD_RASPI_2_SKIA_CONFIGURATION_H_
diff --git a/src/starboard/raspi/2/skia/starboard_platform.gyp b/src/starboard/raspi/2/skia/starboard_platform.gyp
index 1a1111d..8057cd1 100644
--- a/src/starboard/raspi/2/skia/starboard_platform.gyp
+++ b/src/starboard/raspi/2/skia/starboard_platform.gyp
@@ -15,4 +15,16 @@
'includes': [
'../../shared/starboard_platform.gypi',
],
+ 'target_defaults': {
+ 'sources': [
+ '<(DEPTH)/starboard/raspi/2/skia/configuration.cc',
+ '<(DEPTH)/starboard/raspi/2/skia/configuration.h',
+ '<(DEPTH)/starboard/raspi/2/skia/system_get_extensions.cc',
+ ],
+ 'sources!': [
+ '<(DEPTH)/starboard/raspi/shared/configuration.cc',
+ '<(DEPTH)/starboard/raspi/shared/configuration.h',
+ '<(DEPTH)/starboard/raspi/shared/system_get_extensions.cc',
+ ],
+ },
}
diff --git a/src/starboard/raspi/2/skia/system_get_extensions.cc b/src/starboard/raspi/2/skia/system_get_extensions.cc
new file mode 100644
index 0000000..01e50ba
--- /dev/null
+++ b/src/starboard/raspi/2/skia/system_get_extensions.cc
@@ -0,0 +1,26 @@
+// Copyright 2020 The Cobalt Authors. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "starboard/system.h"
+
+#include "cobalt/extension/configuration.h"
+#include "starboard/common/string.h"
+#include "starboard/raspi/2/skia/configuration.h"
+
+const void* SbSystemGetExtension(const char* name) {
+ if (SbStringCompareAll(name, kCobaltExtensionConfigurationName) == 0) {
+ return starboard::raspi::skia::GetConfigurationApi();
+ }
+ return NULL;
+}