diff options
author | djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-06-03 12:10:19 +0000 |
---|---|---|
committer | djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-06-03 12:10:19 +0000 |
commit | 52f0297aafc1e267fda6e612f168a9fe5bc62784 (patch) | |
tree | d25187b0663a80e6dce4a1e69831dff9727805c7 /gyp | |
parent | 2dd76d7668d8175ea1ab8f7ad27a1bfd5b917a84 (diff) |
Prepare skia for shared library build on android
This reapplies revision 9378 after the buildbot has been updated.
R=borenet@google.com, djsollen@google.com
Review URL: https://codereview.chromium.org/15855006
git-svn-id: http://skia.googlecode.com/svn/trunk@9395 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gyp')
-rw-r--r-- | gyp/FileReaderApp.gyp | 3 | ||||
-rw-r--r-- | gyp/SampleApp.gyp | 4 | ||||
-rw-r--r-- | gyp/SimpleCocoaApp.gyp | 2 | ||||
-rw-r--r-- | gyp/SimpleiOSApp.gyp | 4 | ||||
-rw-r--r-- | gyp/bench.gyp | 6 | ||||
-rw-r--r-- | gyp/common.gypi | 9 | ||||
-rw-r--r-- | gyp/common_conditions.gypi | 11 | ||||
-rw-r--r-- | gyp/common_variables.gypi | 2 | ||||
-rw-r--r-- | gyp/core.gyp | 8 | ||||
-rw-r--r-- | gyp/debugger.gyp | 7 | ||||
-rw-r--r-- | gyp/effects.gyp | 7 | ||||
-rw-r--r-- | gyp/flags.gyp | 3 | ||||
-rw-r--r-- | gyp/gm.gyp | 7 | ||||
-rw-r--r-- | gyp/most.gyp | 2 | ||||
-rw-r--r-- | gyp/nacl.gyp | 2 | ||||
-rw-r--r-- | gyp/pathops_unittest.gyp | 5 | ||||
-rw-r--r-- | gyp/pdf.gyp | 2 | ||||
-rw-r--r-- | gyp/pixman_test.gyp | 4 | ||||
-rw-r--r-- | gyp/ports.gyp | 9 | ||||
-rw-r--r-- | gyp/sfnt.gyp | 5 | ||||
-rw-r--r-- | gyp/shapeops_demo.gyp | 4 | ||||
-rw-r--r-- | gyp/shapeops_edge.gyp | 4 | ||||
-rw-r--r-- | gyp/shapeops_tool.gyp | 10 | ||||
-rw-r--r-- | gyp/skia_lib.gyp (renamed from gyp/skia_base_libs.gyp) | 24 | ||||
-rw-r--r-- | gyp/tests.gyp | 6 | ||||
-rw-r--r-- | gyp/tools.gyp | 47 | ||||
-rw-r--r-- | gyp/xps.gyp | 3 |
27 files changed, 91 insertions, 109 deletions
diff --git a/gyp/FileReaderApp.gyp b/gyp/FileReaderApp.gyp index bcd0f0dc38..f590ffebb3 100644 --- a/gyp/FileReaderApp.gyp +++ b/gyp/FileReaderApp.gyp @@ -18,8 +18,7 @@ '../src/utils/mac/SkOSWindow_Mac.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'views.gyp:views', 'xml.gyp:xml', ], diff --git a/gyp/SampleApp.gyp b/gyp/SampleApp.gyp index 5531605512..59d2f84d32 100644 --- a/gyp/SampleApp.gyp +++ b/gyp/SampleApp.gyp @@ -142,9 +142,7 @@ '../samplecode/SampleFontCache.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'views.gyp:views', 'animator.gyp:animator', 'xml.gyp:xml', diff --git a/gyp/SimpleCocoaApp.gyp b/gyp/SimpleCocoaApp.gyp index 3e17ad5b98..6d7b925807 100644 --- a/gyp/SimpleCocoaApp.gyp +++ b/gyp/SimpleCocoaApp.gyp @@ -25,7 +25,7 @@ ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'views.gyp:views', 'xml.gyp:xml', ], diff --git a/gyp/SimpleiOSApp.gyp b/gyp/SimpleiOSApp.gyp index 3678e7cd1a..cb00f81537 100644 --- a/gyp/SimpleiOSApp.gyp +++ b/gyp/SimpleiOSApp.gyp @@ -28,9 +28,7 @@ '../experimental/SimpleiOSApp/SimpleiOSApp-Info.plist', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'views.gyp:views', 'xml.gyp:xml', ], diff --git a/gyp/bench.gyp b/gyp/bench.gyp index be768f04ae..49e6c2c103 100644 --- a/gyp/bench.gyp +++ b/gyp/bench.gyp @@ -17,9 +17,7 @@ 'bench.gypi' ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'bench_timer', ], 'conditions': [ @@ -50,7 +48,7 @@ '../src/gpu', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', ], 'conditions': [ [ 'skia_os not in ["mac", "ios"]', { diff --git a/gyp/common.gypi b/gyp/common.gypi index d3e1498efc..2be8bb8142 100644 --- a/gyp/common.gypi +++ b/gyp/common.gypi @@ -39,6 +39,15 @@ }], ], }, + # Validate the 'skia_os' setting against 'skia_shared_lib', because shared + # library build is only supported on Android. + 'variables': { + 'conditions': [ + [ 'skia_os != "android" and skia_shared_lib', { + 'error': '<!(Skia shared lib build only currently supported on Android.)', + }], + ], + }, 'includes': [ 'common_conditions.gypi', ], diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi index fda122212c..64e7c13594 100644 --- a/gyp/common_conditions.gypi +++ b/gyp/common_conditions.gypi @@ -326,6 +326,17 @@ [ 'skia_profile_enabled == 1', { 'cflags': ['-g', '-fno-omit-frame-pointer', '-marm', '-mapcs'], }], + [ 'skia_shared_lib', { + 'cflags': [ + '-fPIC', + ], + 'defines': [ + 'GR_DLL=1', + 'GR_IMPLEMENTATION=1', + 'SKIA_DLL', + 'SKIA_IMPLEMENTATION=1', + ], + }], [ 'skia_arch_type == "arm" and arm_thumb == 1', { 'cflags': [ '-mthumb', diff --git a/gyp/common_variables.gypi b/gyp/common_variables.gypi index 4f9f5422c4..ac937bd5c5 100644 --- a/gyp/common_variables.gypi +++ b/gyp/common_variables.gypi @@ -90,6 +90,7 @@ 'skia_osx_sdkroot%': '', 'skia_profile_enabled%': 0, 'skia_win_debuggers_path%': '', + 'skia_shared_lib%': 0, }, 'conditions': [ @@ -121,6 +122,7 @@ 'skia_gpu%': '<(skia_gpu)', 'skia_osx_sdkroot%': '<(skia_osx_sdkroot)', 'skia_profile_enabled%': '<(skia_profile_enabled)', + 'skia_shared_lib%': '<(skia_shared_lib)', 'skia_static_initializers%': '<(skia_static_initializers)', 'ios_sdk_version%': '6.0', 'skia_win_debuggers_path%': '<(skia_win_debuggers_path)', diff --git a/gyp/core.gyp b/gyp/core.gyp index 9e0792b773..d018cbea23 100644 --- a/gyp/core.gyp +++ b/gyp/core.gyp @@ -76,6 +76,11 @@ 'config/win', ], }], + [ 'skia_os == "android"', { + 'sources': [ + '../src/core/SkPaintOptionsAndroid.cpp', + ], + }], [ 'skia_os == "android" and skia_arch_type == "arm" and armv7 == 1', { # The code in SkUtilsArm.cpp can be used on an ARM-based Linux system, not only Android. 'sources': [ @@ -120,9 +125,6 @@ }], ], }, - 'dependencies': [ - 'opts.gyp:opts' - ], }, ], } diff --git a/gyp/debugger.gyp b/gyp/debugger.gyp index b935fb056d..9ea300d9b2 100644 --- a/gyp/debugger.gyp +++ b/gyp/debugger.gyp @@ -94,17 +94,12 @@ '../debugger/SkObjectParser.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'images.gyp:images', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'bench.gyp:bench_timer', 'tools.gyp:picture_renderer', ], 'conditions': [ [ 'skia_os == "nacl"', { - 'dependencies': [ - 'utils.gyp:utils', # For SkBase64.h - ], 'include_dirs': [ '../src/utils', ], diff --git a/gyp/effects.gyp b/gyp/effects.gyp index e110c9f069..91458eb96f 100644 --- a/gyp/effects.gyp +++ b/gyp/effects.gyp @@ -9,7 +9,10 @@ 'effects.gypi', ], 'include_dirs': [ + '../include/config', + '../include/core', '../include/effects', + '../include/utils', '../src/core', ], 'direct_dependent_settings': { @@ -17,15 +20,13 @@ '../include/effects', ], }, - 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - ], 'sources': [ 'effects.gypi', # Makes the gypi appear in IDEs (but does not modify the build). ], 'conditions': [ ['skia_gpu == 1', { 'include_dirs': [ + '../include/gpu', '../src/gpu', ], }], diff --git a/gyp/flags.gyp b/gyp/flags.gyp index aa83ea9e01..e80b0a32b9 100644 --- a/gyp/flags.gyp +++ b/gyp/flags.gyp @@ -10,8 +10,7 @@ '../tools/flags/SkCommandLineFlags.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'core.gyp:core', + 'skia_lib.gyp:skia_lib', ], 'direct_dependent_settings': { 'include_dirs': [ diff --git a/gyp/gm.gyp b/gyp/gm.gyp index fa413c37dc..a8b15339d6 100644 --- a/gyp/gm.gyp +++ b/gyp/gm.gyp @@ -16,7 +16,7 @@ '../gm/gm_expectations.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'core.gyp:core', 'images.gyp:images', 'jsoncpp.gyp:jsoncpp', @@ -57,14 +57,11 @@ '../src/pipe/utils/SamplePipeControllers.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'flags.gyp:flags', 'gm.gyp:gm_expectations', - 'images.gyp:images', 'jsoncpp.gyp:jsoncpp', 'pdf.gyp:pdf', - 'utils.gyp:utils', ], 'conditions': [ ['skia_os == "mac"', { diff --git a/gyp/most.gyp b/gyp/most.gyp index d32987f049..1ad25efe39 100644 --- a/gyp/most.gyp +++ b/gyp/most.gyp @@ -10,7 +10,7 @@ 'type': 'none', 'dependencies': [ # The minimal set of static libraries for basic Skia functionality. - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'bench.gyp:bench', 'gm.gyp:gm', diff --git a/gyp/nacl.gyp b/gyp/nacl.gyp index 484570be17..3dd4c8ee35 100644 --- a/gyp/nacl.gyp +++ b/gyp/nacl.gyp @@ -5,7 +5,7 @@ 'target_name': 'nacl_interface', 'type': 'static_library', 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', ], 'include_dirs': [ # For SkThreadUtils.h diff --git a/gyp/pathops_unittest.gyp b/gyp/pathops_unittest.gyp index a3ae936d92..c7c32ef2c9 100644 --- a/gyp/pathops_unittest.gyp +++ b/gyp/pathops_unittest.gyp @@ -27,11 +27,8 @@ '../tests/Test.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'flags.gyp:flags', - 'images.gyp:images', - 'utils.gyp:utils', ], 'conditions': [ [ 'skia_gpu == 1', { diff --git a/gyp/pdf.gyp b/gyp/pdf.gyp index 0e759142ca..31b48dbe28 100644 --- a/gyp/pdf.gyp +++ b/gyp/pdf.gyp @@ -6,7 +6,7 @@ 'type': 'static_library', 'standalone_static_library': 1, 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'zlib.gyp:zlib', ], 'include_dirs': [ diff --git a/gyp/pixman_test.gyp b/gyp/pixman_test.gyp index 64c5a9c568..a571dd79ef 100644 --- a/gyp/pixman_test.gyp +++ b/gyp/pixman_test.gyp @@ -118,10 +118,8 @@ '../../../pixman/pixman/pixman.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'experimental.gyp:experimental', - 'images.gyp:images', 'pdf.gyp:pdf', 'views.gyp:views', 'xml.gyp:xml', diff --git a/gyp/ports.gyp b/gyp/ports.gyp index fc9bb9ba4c..3422b8e30a 100644 --- a/gyp/ports.gyp +++ b/gyp/ports.gyp @@ -6,18 +6,17 @@ 'product_name': 'skia_ports', 'type': 'static_library', 'standalone_static_library': 1, - 'dependencies': [ - 'core.gyp:core', - 'sfnt.gyp:sfnt', - 'utils.gyp:utils', - ], 'include_dirs': [ + '../include/config', + '../include/core', '../include/effects', '../include/images', '../include/ports', + '../include/utils', '../include/xml', '../src/core', '../src/lazy', + '../src/sfnt', '../src/utils', ], 'sources': [ diff --git a/gyp/sfnt.gyp b/gyp/sfnt.gyp index 438f33e8e6..cc21b222bc 100644 --- a/gyp/sfnt.gyp +++ b/gyp/sfnt.gyp @@ -5,10 +5,9 @@ 'product_name': 'skia_sfnt', 'type': 'static_library', 'standalone_static_library': 1, - 'dependencies': [ - 'core.gyp:core', - ], 'include_dirs': [ + '../include/config', + '../include/core', '../src/sfnt', ], 'sources': [ diff --git a/gyp/shapeops_demo.gyp b/gyp/shapeops_demo.gyp index 4537c01b73..83836ee730 100644 --- a/gyp/shapeops_demo.gyp +++ b/gyp/shapeops_demo.gyp @@ -69,9 +69,7 @@ '../experimental/Intersection/TriangleUtilities.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'views.gyp:views', 'xml.gyp:xml', ], diff --git a/gyp/shapeops_edge.gyp b/gyp/shapeops_edge.gyp index 8c67cf7991..e4e7d72dff 100644 --- a/gyp/shapeops_edge.gyp +++ b/gyp/shapeops_edge.gyp @@ -115,9 +115,7 @@ '../experimental/Intersection/thingsToDo.txt', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', ], 'conditions': [ [ 'skia_gpu == 1', { diff --git a/gyp/shapeops_tool.gyp b/gyp/shapeops_tool.gyp index 3b1408a5ff..35caccb5ae 100644 --- a/gyp/shapeops_tool.gyp +++ b/gyp/shapeops_tool.gyp @@ -15,23 +15,15 @@ '../experimental/Intersection/AddTestOutput/main.cpp', ], 'dependencies': [ - 'core.gyp:core', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'experimental.gyp:experimental', - 'images.gyp:images', - 'ports.gyp:ports', 'pdf.gyp:pdf', - 'utils.gyp:utils', ], 'conditions': [ [ 'skia_gpu == 1', { 'include_dirs': [ '../src/gpu', ], - 'dependencies': [ - 'gpu.gyp:gr', - 'gpu.gyp:skgr', - ], }], ], }, diff --git a/gyp/skia_base_libs.gyp b/gyp/skia_lib.gyp index 83cc7c7529..f85c5ad127 100644 --- a/gyp/skia_base_libs.gyp +++ b/gyp/skia_lib.gyp @@ -1,10 +1,14 @@ # The minimal set of static libraries for basic Skia functionality. + { 'variables': { 'component_libs': [ 'core.gyp:core', + 'effects.gyp:effects', + 'images.gyp:images', 'opts.gyp:opts', 'ports.gyp:ports', + 'sfnt.gyp:sfnt', 'utils.gyp:utils', ], 'conditions': [ @@ -33,8 +37,24 @@ }, 'targets': [ { - 'target_name': 'skia_base_libs', - 'type': 'none', + 'target_name': 'skia_lib', + 'conditions': [ + [ 'skia_shared_lib', { + 'conditions': [ + [ 'skia_os == "android"', { + # The name skia will confuse the linker on android into using the system's libskia.so + # instead of the one packaged with the apk. We simply choose a different name to fix + # this. + 'product_name': 'skia_android', + }, { + 'product_name': 'skia', + }], + ], + 'type': 'shared_library', + }, { + 'type': 'none', + }], + ], 'dependencies': [ '<@(component_libs)', ], diff --git a/gyp/tests.gyp b/gyp/tests.gyp index 10a4ba45e7..557fea5a28 100644 --- a/gyp/tests.gyp +++ b/gyp/tests.gyp @@ -128,15 +128,11 @@ '../src/pipe/utils/SamplePipeControllers.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'flags.gyp:flags', 'experimental.gyp:experimental', - 'images.gyp:images', 'pdf.gyp:pdf', 'tools.gyp:picture_utils', - 'utils.gyp:utils', - 'sfnt.gyp:sfnt', ], 'conditions': [ [ 'skia_gpu == 1', { diff --git a/gyp/tools.gyp b/gyp/tools.gyp index ede028a0d7..25aa1dbf06 100644 --- a/gyp/tools.gyp +++ b/gyp/tools.gyp @@ -37,9 +37,7 @@ '../tools/skdiff_utils.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', ], }, { @@ -55,9 +53,7 @@ '../tools/skdiff_utils.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', ], }, { @@ -67,10 +63,8 @@ '../tools/skhello.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'flags.gyp:flags', - 'images.gyp:images', ], }, { @@ -84,11 +78,9 @@ '../src/utils/', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'flags.gyp:flags', 'gm.gyp:gm_expectations', - 'images.gyp:images', 'jsoncpp.gyp:jsoncpp', 'utils.gyp:utils', ], @@ -102,7 +94,7 @@ '../src/utils/SkLua.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'effects.gyp:effects', 'utils.gyp:utils', 'images.gyp:images', @@ -123,10 +115,9 @@ '../src/pipe/utils/', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', 'tools.gyp:picture_renderer', 'tools.gyp:picture_utils', - 'ports.gyp:ports', 'flags.gyp:flags', ], }, @@ -146,12 +137,10 @@ '../src/lazy/', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', + 'skia_lib.gyp:skia_lib', 'tools.gyp:picture_utils', 'tools.gyp:picture_renderer', 'bench.gyp:bench_timer', - 'ports.gyp:ports', 'flags.gyp:flags', ], }, @@ -174,9 +163,7 @@ '../src/utils/', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'tools.gyp:picture_utils', 'flags.gyp:flags', ], @@ -189,9 +176,6 @@ }, ], ], - 'export_dependent_settings': [ - 'images.gyp:images', - ], }, { 'target_name': 'render_pdfs', @@ -206,11 +190,8 @@ '../src/utils/', ], 'dependencies': [ - 'core.gyp:core', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'pdf.gyp:pdf', - 'ports.gyp:ports', 'tools.gyp:picture_utils', ], 'conditions': [ @@ -257,7 +238,7 @@ '../tools/picture_utils.h', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', + 'skia_lib.gyp:skia_lib', ], 'direct_dependent_settings': { 'include_dirs': [ @@ -272,9 +253,7 @@ '../tools/pinspect.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', ], }, { @@ -296,9 +275,7 @@ '../debugger/SkObjectParser.cpp', ], 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'effects.gyp:effects', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'tools.gyp:picture_utils', ], }, diff --git a/gyp/xps.gyp b/gyp/xps.gyp index 376874205c..29d5e075a9 100644 --- a/gyp/xps.gyp +++ b/gyp/xps.gyp @@ -6,8 +6,7 @@ 'type': 'static_library', 'standalone_static_library': 1, 'dependencies': [ - 'skia_base_libs.gyp:skia_base_libs', - 'images.gyp:images', + 'skia_lib.gyp:skia_lib', 'sfnt.gyp:sfnt', ], 'include_dirs': [ |