Allow Android font manager on *nix.
authorbungeman <bungeman@google.com>
Wed, 15 Jul 2015 17:58:47 +0000 (10:58 -0700)
committerCommit bot <commit-bot@chromium.org>
Wed, 15 Jul 2015 17:58:47 +0000 (10:58 -0700)
There is nothing left in the SkFontMgr_android.cpp which is specific
to Android, so allow it to be built and used on *nix platforms. This
allows for easier development and testing.

The only reason to limit to *nix platforms are the dependencies on
Expat and FreeType. This should be buildable and runnable on other
platforms when these dependencies are also available.

Review URL: https://codereview.chromium.org/1228833003

gyp/ports.gyp
gyp/tests.gypi

index a0cfbd6..9d63d55 100644 (file)
           'sources': [
             '../src/ports/SkFontHost_FreeType.cpp',
             '../src/ports/SkFontHost_FreeType_common.cpp',
+            '../src/ports/SkFontMgr_android.cpp',
+            '../src/ports/SkFontMgr_android_parser.cpp',
+            '../src/ports/SkFontMgr_custom.cpp',
           ],
           'dependencies': [
             'freetype.gyp:freetype',
           ],
-        }],
-        [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "chromeos"]', {
           'conditions': [
-            [ 'skia_embedded_fonts', {
+            [ 'skia_os == "android"', {
+              'dependencies': [
+                 'android_deps.gyp:expat',
+              ],
+            }, {
               'link_settings': {
                 'libraries': [
                   '-ldl',
+                  '-lexpat',
                 ],
               },
+            }],
+            [ 'skia_embedded_fonts', {
               'variables': {
                 'embedded_font_data_identifier': 'sk_fonts',
                 'fonts_to_include': [
                   '../resources/fonts/Funkster.ttf',
                 ],
               },
-              'sources': [
-                '../include/ports/SkFontMgr_custom.h',
-                '../src/ports/SkFontMgr_custom.cpp',
-              ],
               'sources/': [['include', '../src/ports/SkFontMgr_custom_embedded_factory.cpp']],
               'actions': [{
                 'action_name': 'generate_embedded_font_data',
                 'SK_EMBEDDED_FONTS=<(embedded_font_data_identifier)',
               ],
             }, 'skia_no_fontconfig', {
-              'link_settings': {
-                'libraries': [
-                  '-ldl',
-                ],
-              },
-              'sources': [
-                '../include/ports/SkFontMgr_custom.h',
-                '../src/ports/SkFontMgr_custom.cpp',
-              ],
               'sources/': [['include', '../src/ports/SkFontMgr_custom_directory_factory.cpp']],
+            }, 'skia_os == "android"', {
+              'sources/': [['include', '../src/ports/SkFontMgr_android_factory.cpp']],
             }, {
               'link_settings': {
                 'libraries': [
                   '-lfontconfig',
-                  '-ldl',
                 ],
               },
               'sources': [
             '../src/ports/SkFontHost_mac.cpp',
             '../src/utils/mac/SkStream_mac.cpp',
           ],
-          'sources!': [
-            '../src/ports/SkFontHost_tables.cpp',
-          ],
         }],
         [ 'skia_os == "ios"', {
           'include_dirs': [
             '../src/ports/SkFontHost_mac.cpp',
             '../src/utils/mac/SkStream_mac.cpp',
           ],
-          'sources!': [
-            '../src/ports/SkFontHost_tables.cpp',
-          ],
         }],
         [ 'skia_os == "win"', {
           'include_dirs': [
           ],
           'sources': [
             '../src/ports/SkDebug_android.cpp',
-            '../src/ports/SkFontMgr_android.cpp',
-            '../src/ports/SkFontMgr_android_parser.cpp',
-          ],
-          'sources/': [['include', '../src/ports/SkFontMgr_android_factory.cpp']],
-          'dependencies': [
-             'android_deps.gyp:expat',
           ],
         }],
       ],
index ea332bf..e2de604 100644 (file)
@@ -13,6 +13,7 @@
     '../src/images',
     '../src/pathops',
     '../src/pdf',
+    '../src/ports',
     '../src/pipe/utils',
     '../src/utils',
     '../src/utils/debugger',
     'tools.gyp:sk_tool_utils',
   ],
   'conditions': [
-    [ 'skia_os == "android"',
-      {
-        'include_dirs': [ '../src/ports', ],
-      }, {
+    [ 'skia_os not in ["linux", "freebsd", "openbsd", "solaris", "chromeos", "android"]', {
         'sources!': [ '../tests/FontMgrAndroidParserTest.cpp', ],
-      }
-    ],
+    }],
     [ 'skia_android_framework == 1', {
       'libraries': [
         '-ldl',