Merged r16456 into trunk branch.
Work-around missing librt for cross-compiling Chrome for Android in AOSP.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23681006
git-svn-id: http://v8.googlecode.com/svn/trunk@16457 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/platform/time.cc b/src/platform/time.cc
index 653eb14..073ca1e 100644
--- a/src/platform/time.cc
+++ b/src/platform/time.cc
@@ -509,6 +509,15 @@
info.numer / info.denom);
#elif V8_OS_SOLARIS
ticks = (gethrtime() / Time::kNanosecondsPerMicrosecond);
+#elif V8_LIBRT_NOT_AVAILABLE
+ // TODO(bmeurer): This is a temporary hack to support cross-compiling
+ // Chrome for Android in AOSP. Remove this once AOSP is fixed, also
+ // cleanup the tools/gyp/v8.gyp file.
+ struct timeval tv;
+ int result = gettimeofday(&tv, NULL);
+ ASSERT_EQ(0, result);
+ USE(result);
+ ticks = (tv.tv_sec * Time::kMicrosecondsPerSecond + tv.tv_usec);
#elif V8_OS_POSIX
struct timespec ts;
int result = clock_gettime(CLOCK_MONOTONIC, &ts);
diff --git a/src/version.cc b/src/version.cc
index 5644151..bad4b63 100644
--- a/src/version.cc
+++ b/src/version.cc
@@ -35,7 +35,7 @@
#define MAJOR_VERSION 3
#define MINOR_VERSION 21
#define BUILD_NUMBER 7
-#define PATCH_LEVEL 0
+#define PATCH_LEVEL 1
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)
#define IS_CANDIDATE_VERSION 0
diff --git a/tools/gyp/v8.gyp b/tools/gyp/v8.gyp
index 3f99b13..a73ece0 100644
--- a/tools/gyp/v8.gyp
+++ b/tools/gyp/v8.gyp
@@ -724,15 +724,28 @@
}],
],
}, {
- 'link_settings': {
- 'target_conditions': [
- ['_toolset=="host"', {
- 'libraries': [
- '-lrt'
- ]
- }]
- ]
- },
+ # TODO(bmeurer): What we really want here, is this:
+ #
+ # 'link_settings': {
+ # 'target_conditions': [
+ # ['_toolset=="host"', {
+ # 'libraries': [
+ # '-lrt'
+ # ]
+ # }]
+ # ]
+ # },
+ #
+ # but we can't do this right now, as the AOSP does not support
+ # linking against the host librt, so we need to work around this
+ # for now, using the following hack (see platform/time.cc):
+ 'target_conditions': [
+ ['_toolset=="host"', {
+ 'defines': [
+ 'V8_LIBRT_NOT_AVAILABLE',
+ ],
+ }],
+ ],
'sources': [
'../../src/platform-linux.cc'
]