Home | History | Annotate | Download | only in gyp
      1 # Copyright 2014 Google Inc.
      2 #
      3 # Use of this source code is governed by a BSD-style license that can be
      4 # found in the LICENSE file.
      5 
      6 {
      7   'variables': {
      8     'skia_warnings_as_errors': 0,
      9   },
     10   'targets': [
     11     {
     12       'target_name': 'libpng',
     13       'type': 'none',
     14       'conditions': [
     15         [ 'skia_os == "android"',
     16           {
     17             'dependencies': [
     18               'android_deps.gyp:png',
     19             ],
     20             'export_dependent_settings': [
     21               'android_deps.gyp:png',
     22             ],
     23           }, {  # skia_os != "android"
     24             'dependencies': [
     25               'libpng.gyp:libpng_static',
     26             ],
     27             'export_dependent_settings': [
     28               'libpng.gyp:libpng_static',
     29             ],
     30           }
     31         ]
     32       ]
     33     },
     34     {
     35       'target_name': 'libpng_static',
     36       'type': 'static_library',
     37       'standalone_static_library': 1,
     38       'include_dirs': [
     39         # Needed for generated pnglibconf.h and pngprefix.h
     40         '../third_party/libpng',
     41         '../third_party/externals/libpng',
     42       ],
     43       'dependencies': [
     44         'zlib.gyp:zlib',
     45       ],
     46       'export_dependent_settings': [
     47         'zlib.gyp:zlib',
     48       ],
     49       'direct_dependent_settings': {
     50         'include_dirs': [
     51           '../third_party/externals/libpng',
     52           # Needed for generated pnglibconf.h and pngprefix.h
     53           '../third_party/libpng',
     54         ],
     55         'defines': [
     56           'SKIA_PNG_PREFIXED',
     57         ],
     58       },
     59       'cflags': [
     60         '-w',
     61         '-fvisibility=hidden',
     62       ],
     63       'sources': [
     64         '../third_party/externals/libpng/png.c',
     65         '../third_party/externals/libpng/pngerror.c',
     66         '../third_party/externals/libpng/pngget.c',
     67         '../third_party/externals/libpng/pngmem.c',
     68         '../third_party/externals/libpng/pngpread.c',
     69         '../third_party/externals/libpng/pngread.c',
     70         '../third_party/externals/libpng/pngrio.c',
     71         '../third_party/externals/libpng/pngrtran.c',
     72         '../third_party/externals/libpng/pngrutil.c',
     73         '../third_party/externals/libpng/pngset.c',
     74         '../third_party/externals/libpng/pngtrans.c',
     75         '../third_party/externals/libpng/pngwio.c',
     76         '../third_party/externals/libpng/pngwrite.c',
     77         '../third_party/externals/libpng/pngwtran.c',
     78         '../third_party/externals/libpng/pngwutil.c',
     79       ],
     80       'conditions': [
     81         [ 'skia_os == "ios"', {
     82           # explicitly disable looking for NEON on iOS builds
     83           'defines': [
     84             'PNG_ARM_NEON_OPT=0',
     85           ],
     86         }, { # skia_os != "ios" 
     87           'dependencies': [
     88             'libpng.gyp:libpng_static_neon',
     89           ],
     90         }],
     91       ],
     92     },
     93     {
     94       'target_name': 'libpng_static_neon',
     95       'type': 'static_library',
     96       'include_dirs': [
     97         # Needed for generated pnglibconf.h and pngprefix.h
     98         '../third_party/libpng',
     99         '../third_party/externals/libpng',
    100       ],
    101       'dependencies': [
    102         'zlib.gyp:zlib',
    103       ],
    104      'sources': [
    105         '../third_party/externals/libpng/arm/arm_init.c',
    106         '../third_party/externals/libpng/arm/filter_neon.S',
    107         '../third_party/externals/libpng/arm/filter_neon_intrinsics.c',
    108       ],
    109       'conditions': [
    110         ['arm_neon_optional', {
    111           'cflags': [
    112             '-mfpu=neon',
    113           ],
    114         }],
    115       ],
    116     }
    117   ]
    118 }
    119