summaryrefslogtreecommitdiffstats
path: root/skia
diff options
context:
space:
mode:
authorbungeman@chromium.org <bungeman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-21 20:47:39 +0000
committerbungeman@chromium.org <bungeman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-21 20:47:39 +0000
commite593f8b12a57a5270b6d5024aa90fee435a38c19 (patch)
tree93d0e95b1e7510bca8fd99231ea9ba610d3ce06a /skia
parentf9e684382c3f1a2ad74e62477c33ffdebf849567 (diff)
downloadchromium_src-e593f8b12a57a5270b6d5024aa90fee435a38c19.zip
chromium_src-e593f8b12a57a5270b6d5024aa90fee435a38c19.tar.gz
chromium_src-e593f8b12a57a5270b6d5024aa90fee435a38c19.tar.bz2
Improve Skia configuration.
This is the Chromium side of https://codereview.chromium.org/19808007 . R=djsollen@google.com Review URL: https://codereview.chromium.org/19477005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@229905 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia')
-rw-r--r--skia/config/SkUserConfig.h13
-rw-r--r--skia/ext/SkThread_chrome.cc88
-rw-r--r--skia/skia.gyp1
-rw-r--r--skia/skia_chrome.gypi18
-rw-r--r--skia/skia_common.gypi12
-rw-r--r--skia/skia_library.gypi7
-rw-r--r--skia/skia_library_opts.gyp22
7 files changed, 25 insertions, 136 deletions
diff --git a/skia/config/SkUserConfig.h b/skia/config/SkUserConfig.h
index ea80e27..302a072 100644
--- a/skia/config/SkUserConfig.h
+++ b/skia/config/SkUserConfig.h
@@ -183,19 +183,6 @@ SK_API void SkDebugf_FileLine(const char* file, int line, bool fatal,
#define SK_BUILD_FOR_WIN
-// VC8 doesn't support stdint.h, so we define those types here.
-#define SK_IGNORE_STDINT_DOT_H
-typedef signed char int8_t;
-typedef unsigned char uint8_t;
-typedef short int16_t;
-typedef unsigned short uint16_t;
-typedef int int32_t;
-typedef unsigned uint32_t;
-
-// VC doesn't support __restrict__, so make it a NOP.
-#undef SK_RESTRICT
-#define SK_RESTRICT
-
// Skia uses this deprecated bzero function to fill zeros into a string.
#define bzero(str, len) memset(str, 0, len)
diff --git a/skia/ext/SkThread_chrome.cc b/skia/ext/SkThread_chrome.cc
deleted file mode 100644
index f379beb..0000000
--- a/skia/ext/SkThread_chrome.cc
+++ /dev/null
@@ -1,88 +0,0 @@
-// Copyright (c) 2012 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 "third_party/skia/include/core/SkThread.h"
-
-#include <new>
-
-#include "base/atomicops.h"
-#include "base/basictypes.h"
-#include "base/logging.h"
-#include "base/synchronization/lock.h"
-
-/** Adds one to the int specified by the address (in a thread-safe manner), and
- returns the previous value.
- No additional memory barrier is required.
- This must act as a compiler barrier.
-*/
-int32_t sk_atomic_inc(int32_t* addr) {
- // sk_atomic_inc is expected to return the old value,
- // Barrier_AtomicIncrement returns the new value.
- return base::subtle::NoBarrier_AtomicIncrement(addr, 1) - 1;
-}
-
-/* Subtracts one from the int specified by the address (in a thread-safe
- manner), and returns the previous value.
- Expected to act as a release (SL/S) memory barrier and a compiler barrier.
-*/
-int32_t sk_atomic_dec(int32_t* addr) {
- // sk_atomic_dec is expected to return the old value,
- // Barrier_AtomicIncrement returns the new value.
- return base::subtle::Barrier_AtomicIncrement(addr, -1) + 1;
-}
-/** If sk_atomic_dec does not act as an aquire (L/SL) barrier, this is expected
- to act as an aquire (L/SL) memory barrier and as a compiler barrier.
-*/
-void sk_membar_aquire__after_atomic_dec() { }
-
-/** Adds one to the int specified by the address iff the int specified by the
- address is not zero (in a thread-safe manner), and returns the previous
- value.
- No additional memory barrier is required.
- This must act as a compiler barrier.
-*/
-int32_t sk_atomic_conditional_inc(int32_t* addr) {
- int32_t value = *addr;
-
- while (true) {
- if (value == 0) {
- return 0;
- }
-
- int32_t before;
- before = base::subtle::Acquire_CompareAndSwap(addr, value, value + 1);
-
- if (before == value) {
- return value;
- } else {
- value = before;
- }
- }
-}
-/** If sk_atomic_conditional_inc does not act as an aquire (L/SL) barrier, this
- is expected to act as an aquire (L/SL) memory barrier and as a compiler
- barrier.
-*/
-void sk_membar_aquire__after_atomic_conditional_inc() { }
-
-SkMutex::SkMutex() {
- COMPILE_ASSERT(sizeof(base::Lock) <= sizeof(fStorage), Lock_is_too_big_for_SkMutex);
- base::Lock* lock = reinterpret_cast<base::Lock*>(fStorage);
- new(lock) base::Lock();
-}
-
-SkMutex::~SkMutex() {
- base::Lock* lock = reinterpret_cast<base::Lock*>(fStorage);
- lock->~Lock();
-}
-
-void SkMutex::acquire() {
- base::Lock* lock = reinterpret_cast<base::Lock*>(fStorage);
- lock->Acquire();
-}
-
-void SkMutex::release() {
- base::Lock* lock = reinterpret_cast<base::Lock*>(fStorage);
- lock->Release();
-}
diff --git a/skia/skia.gyp b/skia/skia.gyp
index af1cc53..79d0dfc 100644
--- a/skia/skia.gyp
+++ b/skia/skia.gyp
@@ -93,7 +93,6 @@
'include_dirs': [
'..',
'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
],
'conditions': [
diff --git a/skia/skia_chrome.gypi b/skia/skia_chrome.gypi
index a0cd3bb..c24bb73 100644
--- a/skia/skia_chrome.gypi
+++ b/skia/skia_chrome.gypi
@@ -20,10 +20,6 @@
],
},
- 'include_dirs': [
- '..',
- ],
-
'sources': [
'ext/analysis_canvas.cc',
'ext/analysis_canvas.h',
@@ -48,7 +44,6 @@
'ext/lazy_pixel_ref.h',
'ext/lazy_pixel_ref_utils.cc',
'ext/lazy_pixel_ref_utils.h',
- 'ext/SkThread_chrome.cc',
'ext/opacity_draw_filter.cc',
'ext/opacity_draw_filter.h',
'ext/paint_simplifier.cc',
@@ -83,14 +78,6 @@
'ext/vector_platform_device_skia.h',
],
'conditions': [
- # For POSIX platforms, prefer the Mutex implementation provided by Skia
- # since it does not generate static initializers.
- # TODO: should check if SK_USE_POSIX_THREADS is defined instead
- [ 'OS == "android" or OS == "linux" or OS == "mac" or OS == "ios"', {
- 'sources!': [
- 'ext/SkThread_chrome.cc',
- ],
- }],
[ 'OS == "android" and enable_printing == 0', {
'sources!': [
'ext/skia_utils_base.cc',
@@ -105,11 +92,6 @@
'skia_chrome_opts',
],
}],
- [ 'OS == "win"', {
- 'sources!': [
- 'ext/SkThread_chrome.cc',
- ],
- }],
# TODO(scottmg): http://crbug.com/177306
['clang==1', {
'xcode_settings': {
diff --git a/skia/skia_common.gypi b/skia/skia_common.gypi
index 616ae5b..03eade8 100644
--- a/skia/skia_common.gypi
+++ b/skia/skia_common.gypi
@@ -5,6 +5,11 @@
# This gypi file handles the removal of platform-specific files from the
# Skia build.
{
+ 'include_dirs': [
+ '..',
+ 'config',
+ ],
+
'conditions': [
[ 'OS != "android"', {
'sources/': [
@@ -29,5 +34,12 @@
}],
],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '..',
+ 'config',
+ ],
+ },
+
'msvs_disabled_warnings': [4244, 4267, 4341, 4345, 4390, 4554, 4748, 4800],
}
diff --git a/skia/skia_library.gypi b/skia/skia_library.gypi
index 2852af0..0eb3017 100644
--- a/skia/skia_library.gypi
+++ b/skia/skia_library.gypi
@@ -149,9 +149,6 @@
'../third_party/skia/include/utils/SkProxyCanvas.h',
],
'include_dirs': [
- '..',
- 'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
'../third_party/skia/include/effects',
'../third_party/skia/include/images',
@@ -222,7 +219,7 @@
# For POSIX platforms, prefer the Mutex implementation provided by Skia
# since it does not generate static initializers.
- [ 'OS == "android" or OS == "linux" or OS == "mac" or OS == "ios"', {
+ [ 'os_posix == 1', {
'defines+': [
'SK_USE_POSIX_THREADS',
],
@@ -444,8 +441,6 @@
#temporary until we can hide SkFontHost
'../third_party/skia/src/core',
- 'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
'../third_party/skia/include/effects',
'../third_party/skia/include/pdf',
diff --git a/skia/skia_library_opts.gyp b/skia/skia_library_opts.gyp
index 1aaeefc..2008e2c 100644
--- a/skia/skia_library_opts.gyp
+++ b/skia/skia_library_opts.gyp
@@ -27,9 +27,10 @@
{
'target_name': 'skia_opts',
'type': 'static_library',
+ 'includes': [
+ 'skia_common.gypi',
+ ],
'include_dirs': [
- 'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
'../third_party/skia/src/core',
'../third_party/skia/src/opts',
@@ -138,10 +139,10 @@
{
'target_name': 'skia_opts_ssse3',
'type': 'static_library',
+ 'includes': [
+ 'skia_common.gypi',
+ ],
'include_dirs': [
- '..',
- 'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
'../third_party/skia/src/core',
],
@@ -176,10 +177,10 @@
{
'target_name': 'skia_opts_none',
'type': 'static_library',
+ 'includes': [
+ 'skia_common.gypi',
+ ],
'include_dirs': [
- '..',
- 'config',
- '../third_party/skia/include/config',
'../third_party/skia/include/core',
'../third_party/skia/src/core',
],
@@ -202,9 +203,10 @@
{
'target_name': 'skia_opts_neon',
'type': 'static_library',
+ 'includes': [
+ 'skia_common.gypi',
+ ],
'include_dirs': [
- '..',
- 'config',
'../third_party/skia/include/core',
'../third_party/skia/src/core',
'../third_party/skia/src/opts',