summaryrefslogtreecommitdiffstats
path: root/ios
diff options
context:
space:
mode:
authorblundell@chromium.org <blundell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 15:09:32 +0000
committerblundell@chromium.org <blundell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 15:09:32 +0000
commit2c82e36ff2fe4e633d104601388671bfa7a2e35f (patch)
tree36d4aacce22e2e8fc73fc6217d21ff86e64ca352 /ios
parentda0ac0fd0562d882d90232e563ff3a213d56591c (diff)
downloadchromium_src-2c82e36ff2fe4e633d104601388671bfa7a2e35f.zip
chromium_src-2c82e36ff2fe4e633d104601388671bfa7a2e35f.tar.gz
chromium_src-2c82e36ff2fe4e633d104601388671bfa7a2e35f.tar.bz2
Introduce the iOS consumer API.
The purpose of this API is to make the iOS port less vulnerable to bustage during merges while in the process of upstreaming (see https://sites.google.com/a/chromium.org/dev/developers/design-documents/layered-components-technical-approach). Review URL: https://chromiumcodereview.appspot.com/16023013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203144 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ios')
-rw-r--r--ios/OWNERS3
-rw-r--r--ios/README.txt3
-rw-r--r--ios/consumer/README.txt7
-rw-r--r--ios/consumer/base/util.mm18
-rw-r--r--ios/consumer/ios_consumer.gyp24
-rw-r--r--ios/consumer/public/DEPS11
-rw-r--r--ios/consumer/public/base/util.h18
7 files changed, 84 insertions, 0 deletions
diff --git a/ios/OWNERS b/ios/OWNERS
new file mode 100644
index 0000000..edb8e91
--- /dev/null
+++ b/ios/OWNERS
@@ -0,0 +1,3 @@
+blundell@chromium.org
+rohitrao@chromium.org
+stuartmorgan@chromium.org
diff --git a/ios/README.txt b/ios/README.txt
new file mode 100644
index 0000000..db01cd9
--- /dev/null
+++ b/ios/README.txt
@@ -0,0 +1,3 @@
+This directory holds code related to the iOS port of Chromium. See
+https://sites.google.com/a/chromium.org/dev/developers/design-documents/structure-of-layered-components-within-the-chromium-codebase
+for a description of the structure underneath this directory.
diff --git a/ios/consumer/README.txt b/ios/consumer/README.txt
new file mode 100644
index 0000000..b6907ea
--- /dev/null
+++ b/ios/consumer/README.txt
@@ -0,0 +1,7 @@
+This directory exists to allow iOS code that is not yet upstreamed to call
+Chromium code without being vulnerable to breakage during a merge.
+Specifically, not-yet-upstreamed code is allowed to use the interfaces
+provided in public/. Any change to one of these interfaces should get a full
+review from an OWNER, as such a change will require corresponding changes to
+code not yet upstreamed. Any change to code not under public/ can be TBR'd to
+an OWNER.
diff --git a/ios/consumer/base/util.mm b/ios/consumer/base/util.mm
new file mode 100644
index 0000000..6a94f8f
--- /dev/null
+++ b/ios/consumer/base/util.mm
@@ -0,0 +1,18 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "base/ios/ios_util.h"
+#include "ios/consumer/public/base/util.h"
+
+namespace ios {
+
+bool IsRunningOnIOS6OrLater() {
+ return base::ios::IsRunningOnIOS6OrLater();
+}
+
+bool IsRunningOnOrLater(int major, int minor, int bug_fix) {
+ return base::ios::IsRunningOnOrLater(major, minor, bug_fix);
+}
+
+} // namespace ios
diff --git a/ios/consumer/ios_consumer.gyp b/ios/consumer/ios_consumer.gyp
new file mode 100644
index 0000000..9e6f7b6
--- /dev/null
+++ b/ios/consumer/ios_consumer.gyp
@@ -0,0 +1,24 @@
+# Copyright 2013 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+{
+ 'variables': {
+ 'chromium_code': 1,
+ },
+ 'targets': [
+ {
+ 'target_name': 'ios_consumer_base',
+ 'type': 'static_library',
+ 'dependencies': [
+ '../../base/base.gyp:base',
+ ],
+ 'include_dirs': [
+ '../..',
+ ],
+ 'sources': [
+ 'base/util.mm',
+ 'public/base/util.h',
+ ],
+ },
+ ],
+}
diff --git a/ios/consumer/public/DEPS b/ios/consumer/public/DEPS
new file mode 100644
index 0000000..b9ffa71
--- /dev/null
+++ b/ios/consumer/public/DEPS
@@ -0,0 +1,11 @@
+include_rules = [
+ # The public interfaces cannot reference Chromium code, so all allowances
+ # that the top-level DEPS file introduces are removed here. This list should
+ # be kept in sync with src/DEPS.
+ "-base",
+ "-build",
+ "-googleurl",
+ "-library_loaders",
+ "-testing",
+ "-third_party/icu/public",
+]
diff --git a/ios/consumer/public/base/util.h b/ios/consumer/public/base/util.h
new file mode 100644
index 0000000..9820834
--- /dev/null
+++ b/ios/consumer/public/base/util.h
@@ -0,0 +1,18 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef IOS_CONSUME_PUBLIC_BASE_UTIL_H_
+#define IOS_CONSUME_PUBLIC_BASE_UTIL_H_
+
+namespace ios {
+
+// Returns whether the operating system is iOS 6 or later.
+bool IsRunningOnIOS6OrLater();
+
+// Returns whether the operating system is at the given version or later.
+bool IsRunningOnOrLater(int major, int minor, int bug_fix);
+
+} // namespace ios
+
+#endif // IOS_CONSUME_PUBLIC_BASE_UTIL_H_