Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Unified Diff: ios/web_view/internal/BUILD.gn

Issue 2665333002: Add a BUILD target and a script to build a public static library for ios/web_view. (Closed)
Patch Set: Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ios/web_view/internal/BUILD.gn
diff --git a/ios/web_view/internal/BUILD.gn b/ios/web_view/internal/BUILD.gn
index 61e7e6be99dd502ce5e9c7b9a4d5615863a4660e..3a5c30baa379b848d1804251ac4fe0f56f4bc8b4 100644
--- a/ios/web_view/internal/BUILD.gn
+++ b/ios/web_view/internal/BUILD.gn
@@ -2,7 +2,25 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-source_set("internal") {
+DEPS = [
+ "//base",
+ "//components/pref_registry",
+ "//components/prefs",
+ "//components/translate/core/browser",
+ "//components/translate/core/common",
+ "//ios/net",
+ "//ios/web",
+ "//ios/web:user_agent",
+ "//ios/web/public/app",
+ "//ios/web_view/internal/translate",
+ "//ios/web_view/public",
+ "//net",
+ "//net:extras",
+ "//ui/base",
+ "//url",
+]
+
+static_library("internal") {
visibility = [
"//ios/web_view",
"//ios/web_view/internal/*",
@@ -27,22 +45,42 @@ source_set("internal") {
"pref_names.cc",
"pref_names.h",
]
+ deps = DEPS
+ allow_circular_includes_from = [ "//ios/web_view/internal/translate" ]
+}
+
+# A static library which contains all dependencies of "internal".
+# Used to build "web_view_public".
+static_library("deps_complete") {
+ complete_static_lib = true
+ deps = DEPS
+}
+
+# A static library expected to be used by apps outside Chromium code base.
+# This is a complete static library (containing all dependencies),
+# and it doesn't expose internal symbols to reduce risk of symbol conflict.
+#
+# //ios/web_view:web_view_public is an alias of this library.
+#
+# TODO(ichikawa): Support building a universal binary.
+action("web_view_public") {
+ script = "hide_symbols.py"
deps = [
- "//base",
- "//components/pref_registry",
- "//components/prefs",
- "//components/translate/core/browser",
- "//components/translate/core/common",
- "//ios/net",
- "//ios/web",
- "//ios/web:user_agent",
- "//ios/web/public/app",
- "//ios/web_view/internal/translate",
- "//ios/web_view/public",
- "//net",
- "//net:extras",
- "//ui/base",
- "//url",
+ ":deps_complete",
+ ":internal",
+ ]
+ outputs = [
+ "$target_out_dir/libweb_view_public.a",
+ "$target_out_dir/libweb_view_public.o",
+ ]
+ args = [
+ "--input_lib",
+ rebase_path("$target_out_dir/libinternal.a", root_build_dir),
+ "--deps_lib",
+ rebase_path("$target_out_dir/libdeps_complete.a", root_build_dir),
+ "--output_obj",
+ rebase_path("$target_out_dir/libweb_view_public.o", root_build_dir),
+ "--output_lib",
+ rebase_path("$target_out_dir/libweb_view_public.a", root_build_dir),
]
- allow_circular_includes_from = [ "//ios/web_view/internal/translate" ]
}

Powered by Google App Engine
This is Rietveld 408576698