opts.gypi -> opts.gni

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4026

Change-Id: Ib687bd7ce87ddbbc60f95e7a30e20575971e5c59
Reviewed-on: https://skia-review.googlesource.com/4026
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
This commit is contained in:
Mike Klein 2016-10-26 18:37:24 -04:00 committed by Skia Commit-Bot
parent 8508f6582f
commit eb94e56882
4 changed files with 91 additions and 98 deletions

61
gn/opts.gni Normal file
View File

@ -0,0 +1,61 @@
# Copyright 2016 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Things are easiest for everyone if these source paths are absolute.
_src = get_path_info("../src", "abspath")
none = [
"$_src/opts/SkBitmapProcState_opts_none.cpp",
"$_src/opts/SkBlitMask_opts_none.cpp",
"$_src/opts/SkBlitRow_opts_none.cpp",
]
armv7 = [
"$_src/opts/SkBitmapProcState_opts_arm.cpp",
"$_src/opts/SkBlitMask_opts_arm.cpp",
"$_src/opts/SkBlitRow_opts_arm.cpp",
]
neon = [
"$_src/opts/SkBitmapProcState_arm_neon.cpp",
"$_src/opts/SkBitmapProcState_matrixProcs_neon.cpp",
"$_src/opts/SkBlitMask_opts_arm_neon.cpp",
"$_src/opts/SkBlitRow_opts_arm_neon.cpp",
]
arm64 = [
"$_src/opts/SkBitmapProcState_arm_neon.cpp",
"$_src/opts/SkBitmapProcState_matrixProcs_neon.cpp",
"$_src/opts/SkBitmapProcState_opts_arm.cpp",
"$_src/opts/SkBlitMask_opts_arm.cpp",
"$_src/opts/SkBlitMask_opts_arm_neon.cpp",
"$_src/opts/SkBlitRow_opts_arm.cpp",
"$_src/opts/SkBlitRow_opts_arm_neon.cpp",
]
crc32 = [ "$_src/opts/SkOpts_crc32.cpp" ]
mips_dsp = [
"$_src/opts/SkBitmapProcState_opts_mips_dsp.cpp",
"$_src/opts/SkBlitMask_opts_none.cpp",
"$_src/opts/SkBlitRow_opts_mips_dsp.cpp",
]
sse2 = [
"$_src/opts/SkBitmapFilter_opts_SSE2.cpp",
"$_src/opts/SkBitmapProcState_opts_SSE2.cpp",
"$_src/opts/SkBlitRow_opts_SSE2.cpp",
"$_src/opts/opts_check_x86.cpp",
]
ssse3 = [
"$_src/opts/SkBitmapProcState_opts_SSSE3.cpp",
"$_src/opts/SkOpts_ssse3.cpp",
]
sse41 = [ "$_src/opts/SkOpts_sse41.cpp" ]
sse42 = [ "$_src/opts/SkOpts_sse42.cpp" ]
avx = [ "$_src/opts/SkOpts_avx.cpp" ]
hsw = [ "$_src/opts/SkOpts_hsw.cpp" ]

View File

@ -3,32 +3,29 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This file is used to shared GN source lists between the standalone Skia
# and Chrome skia build. All paths produced by this header must be
# source-absolute since it will be included in different contexts in each
# checkout.
_path_to_include = get_path_info("../include", "abspath")
_path_to_src = get_path_info("../src", "abspath")
# Opts.
#
# Unlike the other variables here, this is a "scope" consisting of many
# sub-lists.
skia_opts = exec_script("gypi_to_gn.py",
[
rebase_path("../gyp/opts.gypi"),
"--replace=<(skia_include_path)=$_path_to_include",
"--replace=<(skia_src_path)=$_path_to_src",
],
"scope",
[ "../gyp/opts.gypi" ])
import("core.gni")
import("effects.gni")
import("gpu.gni")
import("opts.gni")
import("pdf.gni")
import("sksl.gni")
import("utils.gni")
skia_opts = {
none_sources = none
armv7_sources = armv7
neon_sources = neon
arm64_sources = arm64
crc32_sources = crc32
mips_dsp_sources = mips_dsp
sse2_sources = sse2
ssse3_sources = ssse3
sse41_sources = sse41
sse42_sources = sse42
avx_sources = avx
hsw_sources = hsw
}
# Skia Chromium defines. These flags will be defined in chromium If these
# become 'permanent', they should be moved into Chrome's skia build file.
skia_for_chromium_defines = [ "SK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS" ]

View File

@ -4,10 +4,9 @@
# found in the LICENSE file.
# Gyp file for building opts target.
{
# Source lists live in opts.gypi. This makes it easier to maintain our Chrome GYP/GN setup.
# (To be honest, I'm not sure why we need to include common.gypi. I thought it was automatic.)
'variables': {
'includes': [ 'common.gypi', 'opts.gypi' ],
'includes': [ 'common.gypi' ],
},
# Generally we shove things into one 'opts' target conditioned on platform.
@ -35,15 +34,15 @@
[ '"x86" in skia_arch_type and skia_os != "ios"', {
'cflags': [ '-msse2' ],
'dependencies': [ 'opts_ssse3', 'opts_sse41', 'opts_sse42', 'opts_avx', 'opts_hsw' ],
'sources': [ '<@(sse2_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni sse2)' ],
}],
[ 'skia_arch_type == "mips"', {
'conditions': [
[ '(mips_arch_variant == "mips32r2") and (mips_dsp == 1 or mips_dsp == 2)', {
'sources': [ '<@(mips_dsp_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni mips_dsp)' ],
},{
'sources': [ '<@(none_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni none)' ],
}],
]
}],
@ -53,7 +52,7 @@
or (skia_os == "android" \
and skia_arch_type not in ["x86", "x86_64", "arm", "mips", \
"arm64"])', {
'sources': [ '<@(none_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni none)' ],
}],
[ 'skia_arch_type == "arm" and arm_version >= 7', {
@ -61,7 +60,7 @@
# ARM), the compiler doesn't like that.
'cflags!': [ '-fno-omit-frame-pointer', '-mapcs-frame', '-mapcs' ],
'cflags': [ '-fomit-frame-pointer' ],
'sources': [ '<@(armv7_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni armv7)' ],
'conditions': [
[ 'arm_neon == 1', {
'dependencies': [ 'opts_neon' ]
@ -70,7 +69,7 @@
}],
[ 'skia_arch_type == "arm64"', {
'sources': [ '<@(arm64_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni arm64)' ],
'dependencies': [ 'opts_crc32' ]
}],
@ -94,7 +93,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(crc32_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni crc32)' ],
'conditions': [
[ 'not skia_android_framework', { 'cflags': [ '-march=armv8-a+crc' ] }],
],
@ -110,7 +109,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(ssse3_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni ssse3)' ],
'conditions': [
[ 'skia_os == "win"', { 'defines' : [ 'SK_CPU_SSE_LEVEL=31' ] }],
[ 'not skia_android_framework', { 'cflags': [ '-mssse3' ] }],
@ -127,7 +126,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(sse41_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni sse41)' ],
'xcode_settings': { 'GCC_ENABLE_SSE41_EXTENSIONS': 'YES' },
'conditions': [
[ 'skia_os == "win"', { 'defines' : [ 'SK_CPU_SSE_LEVEL=41' ] }],
@ -145,7 +144,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(sse42_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni sse42)' ],
'xcode_settings': { 'GCC_ENABLE_SSE42_EXTENSIONS': 'YES' },
'conditions': [
[ 'skia_os == "win"', { 'defines' : [ 'SK_CPU_SSE_LEVEL=42' ] }],
@ -163,7 +162,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(avx_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni avx)' ],
'msvs_settings': { 'VCCLCompilerTool': { 'EnableEnhancedInstructionSet': '3' } },
'xcode_settings': { 'OTHER_CPLUSPLUSFLAGS': [ '-mavx' ] },
'conditions': [
@ -181,7 +180,7 @@
'../src/core',
'../src/utils',
],
'sources': [ '<@(hsw_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni hsw)' ],
'msvs_settings': { 'VCCLCompilerTool': { 'EnableEnhancedInstructionSet': '5' } },
'xcode_settings': {
'OTHER_CPLUSPLUSFLAGS': [ '-mavx2', '-mbmi', '-mbmi2', '-mf16c', '-mfma' ]
@ -207,7 +206,7 @@
'../src/opts',
'../src/utils',
],
'sources': [ '<@(neon_sources)' ],
'sources': [ '<!@(python read_gni.py ../gn/opts.gni neon)' ],
'cflags!': [
'-fno-omit-frame-pointer',
'-mfpu=vfp', # remove them all, just in case.

View File

@ -1,64 +0,0 @@
# Copyright 2015 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'none_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_opts_none.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_none.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_none.cpp',
],
'armv7_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_opts_arm.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_arm.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_arm.cpp',
],
'neon_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_arm_neon.cpp',
'<(skia_src_path)/opts/SkBitmapProcState_matrixProcs_neon.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_arm_neon.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_arm_neon.cpp',
],
'arm64_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_arm_neon.cpp',
'<(skia_src_path)/opts/SkBitmapProcState_matrixProcs_neon.cpp',
'<(skia_src_path)/opts/SkBitmapProcState_opts_arm.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_arm.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_arm_neon.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_arm.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_arm_neon.cpp',
],
'crc32_sources': [
'<(skia_src_path)/opts/SkOpts_crc32.cpp',
],
'mips_dsp_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_opts_mips_dsp.cpp',
'<(skia_src_path)/opts/SkBlitMask_opts_none.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_mips_dsp.cpp',
],
'sse2_sources': [
'<(skia_src_path)/opts/SkBitmapFilter_opts_SSE2.cpp',
'<(skia_src_path)/opts/SkBitmapProcState_opts_SSE2.cpp',
'<(skia_src_path)/opts/SkBlitRow_opts_SSE2.cpp',
'<(skia_src_path)/opts/opts_check_x86.cpp',
],
'ssse3_sources': [
'<(skia_src_path)/opts/SkBitmapProcState_opts_SSSE3.cpp',
'<(skia_src_path)/opts/SkOpts_ssse3.cpp',
],
'sse41_sources': [
'<(skia_src_path)/opts/SkOpts_sse41.cpp',
],
'sse42_sources': [
'<(skia_src_path)/opts/SkOpts_sse42.cpp',
],
'avx_sources': [
'<(skia_src_path)/opts/SkOpts_avx.cpp',
],
'hsw_sources': [
'<(skia_src_path)/opts/SkOpts_hsw.cpp',
],
}