Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Unified Diff: third_party/libvpx_new/BUILD.gn

Issue 1734613003: Move libvpx_new to libvpx (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/libvpx/source/config/win/x64/vpx_scale_rtcd.h ('k') | third_party/libvpx_new/DEPS » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/libvpx_new/BUILD.gn
diff --git a/third_party/libvpx_new/BUILD.gn b/third_party/libvpx_new/BUILD.gn
index e2a0320c19989c0d9ab480921d1757d298c288f2..24754dbc0bf71fb7e4dc302af572ffc41f9baccd 100644
--- a/third_party/libvpx_new/BUILD.gn
+++ b/third_party/libvpx_new/BUILD.gn
@@ -1,317 +1,15 @@
-# Copyright 2014 The Chromium Authors. All rights reserved.
+# Copyright 2016 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.
-import("//build/config/arm.gni")
-import("//build/config/android/config.gni")
-import("//build/config/sanitizers/sanitizers.gni")
-import("//third_party/libvpx_new/libvpx_srcs.gni")
-import("//third_party/yasm/yasm_assemble.gni")
-
-# Sets the architecture name for building libvpx.
-if (current_cpu == "x86") {
- cpu_arch_full = "ia32"
-} else if (current_cpu == "x64") {
- if (is_msan) {
- cpu_arch_full = "generic"
- } else {
- cpu_arch_full = "x64"
- }
-} else if (current_cpu == "arm") {
- if (arm_use_neon) {
- cpu_arch_full = "arm-neon"
- } else if (is_android) {
- cpu_arch_full = "arm-neon-cpu-detect"
- } else {
- cpu_arch_full = "arm"
- }
-} else {
- cpu_arch_full = current_cpu
-}
-
-if (is_nacl) {
- platform_include_dir = "//third_party/libvpx_new/source/config/nacl"
-} else {
- if (is_posix && !is_mac) {
- os_category = "linux"
- } else {
- os_category = current_os
- }
- platform_include_dir =
- "//third_party/libvpx_new/source/config/$os_category/$cpu_arch_full"
-}
-
-config("libvpx_config") {
- include_dirs = [
- "//third_party/libvpx_new/source/config",
- platform_include_dir,
- "//third_party/libvpx_new/source/libvpx",
- "$root_gen_dir/third_party/libvpx_new", # Provides vpx_rtcd.h.
- ]
-
- if (current_cpu == "arm" && is_clang) {
- # TODO(hans) Enable integrated-as (crbug.com/124610).
- asmflags = [ "-fno-integrated-as" ]
- if (is_android) {
- rebased_android_toolchain_root =
- rebase_path(android_toolchain_root, root_build_dir)
-
- # Else /usr/bin/as gets picked up.
- asmflags += [ "-B${rebased_android_toolchain_root}/bin" ]
- }
- }
-}
-
-# gn orders flags on a target before flags from configs. The default config
-# adds -Wall, and these flags have to be after -Wall -- so they need to come
-# from a config and can't be on the target directly.
-config("libvpx_warnings") {
- if (is_clang) {
- cflags = [
- # libvpx heavily relies on implicit enum casting.
- "-Wno-conversion",
-
- # libvpx does `if ((a == b))` in some places.
- "-Wno-parentheses-equality",
-
- # libvpx has many static functions in header, which trigger this warning.
- "-Wno-unused-function",
- ]
- } else if (!is_win) {
- cflags = [
- "-Wno-unused-function",
- "-Wno-sign-compare",
- ]
- }
-}
-
# This config is applied to targets that depend on libvpx.
config("libvpx_external_config") {
- include_dirs = [ "//third_party/libvpx_new/source/libvpx" ]
-}
-
-if (current_cpu == "x86" || current_cpu == "x64") {
- yasm_assemble("libvpx_yasm") {
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_assembly
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_assembly
- }
-
- defines = [ "CHROMIUM" ]
- if (is_android) {
- # On Android, define __ANDROID__ to use alternative standard library
- # functions.
- defines += [ "__ANDROID__" ]
- }
- include_dirs = [
- platform_include_dir,
- "//third_party/libvpx_new/source/config",
- "//third_party/libvpx_new/source/libvpx",
- target_gen_dir,
- ]
- }
-}
-
-static_library("libvpx_intrinsics_mmx") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (!is_win) {
- cflags = [ "-mmmx" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_mmx
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_mmx
- }
+ include_dirs = [ "//third_party/libvpx/source/libvpx" ]
}
-static_library("libvpx_intrinsics_sse2") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (!is_win || is_clang) {
- cflags = [ "-msse2" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_sse2
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_sse2
- }
-}
-
-static_library("libvpx_intrinsics_ssse3") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (!is_win || is_clang) {
- cflags = [ "-mssse3" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_ssse3
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_ssse3
- }
-}
-
-static_library("libvpx_intrinsics_sse4_1") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (!is_win || is_clang) {
- cflags = [ "-msse4.1" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_sse4_1
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_sse4_1
- }
-}
-
-static_library("libvpx_intrinsics_avx") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (is_win) {
- cflags = [ "/arch:AVX" ]
- } else {
- cflags = [ "-mavx" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_avx
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_avx
- }
-}
-
-static_library("libvpx_intrinsics_avx2") {
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- if (is_win) {
- cflags = [ "/arch:AVX2" ]
- } else {
- cflags = [ "-mavx2" ]
- }
- if (current_cpu == "x86") {
- sources = libvpx_srcs_x86_avx2
- } else if (current_cpu == "x64") {
- sources = libvpx_srcs_x86_64_avx2
- }
-}
-
-if (cpu_arch_full == "arm-neon-cpu-detect") {
- static_library("libvpx_intrinsics_neon") {
- configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
- configs += [ ":libvpx_config" ]
- configs += [ ":libvpx_warnings" ]
- cflags = [ "-mfpu=neon" ]
- sources = libvpx_srcs_arm_neon_cpu_detect_neon
- }
-}
-
-# Converts ARM assembly files to GAS style.
-if (current_cpu == "arm") {
- action_foreach("convert_arm_assembly") {
- script = "//third_party/libvpx_new/run_perl.py"
- if (cpu_arch_full == "arm-neon") {
- sources = libvpx_srcs_arm_neon_assembly
- } else if (cpu_arch_full == "arm-neon-cpu-detect") {
- sources = libvpx_srcs_arm_neon_cpu_detect_assembly
- } else {
- sources = libvpx_srcs_arm_assembly
- }
- outputs = [
- "$target_gen_dir/{{source_name_part}}.S",
- ]
- args = [
- "-s",
- rebase_path(
- "//third_party/libvpx_new/source/libvpx/build/make/ads2gas.pl",
- root_build_dir),
- "-i",
- "{{source}}",
- "-o",
- rebase_path("$target_gen_dir/{{source_name_part}}.S"),
- ]
- }
-
- static_library("libvpx_assembly_arm") {
- sources = get_target_outputs(":convert_arm_assembly")
- configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
- configs += [ ":libvpx_config" ]
- configs += [ ":libvpx_warnings" ]
- if (cpu_arch_full == "arm-neon" || cpu_arch_full == "arm-neon-cpu-detect") {
- asmflags = [ "-mfpu=neon" ]
- }
- deps = [
- ":convert_arm_assembly",
- ]
- }
-}
-
-static_library("libvpx_new") {
- if (!is_debug && is_win) {
- configs -= [ "//build/config/compiler:default_optimization" ]
- configs += [ "//build/config/compiler:optimize_max" ]
- }
-
- if (is_nacl) {
- sources = libvpx_srcs_generic
- } else if (current_cpu == "x86") {
- sources = libvpx_srcs_x86
- } else if (current_cpu == "x64") {
- if (is_msan) {
- sources = libvpx_srcs_generic
- } else {
- sources = libvpx_srcs_x86_64
- }
- } else if (current_cpu == "mipsel") {
- sources = libvpx_srcs_mips
- } else if (current_cpu == "arm") {
- if (arm_use_neon) {
- sources = libvpx_srcs_arm_neon
- } else if (is_android) {
- sources = libvpx_srcs_arm_neon_cpu_detect
- } else {
- sources = libvpx_srcs_arm
- }
- } else if (current_cpu == "arm64") {
- sources = libvpx_srcs_arm64
- }
-
- configs += [ ":libvpx_config" ]
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [ "//build/config/compiler:no_chromium_code" ]
- configs += [ ":libvpx_warnings" ]
- deps = []
- if (current_cpu == "x86" || (current_cpu == "x64" && !is_msan)) {
- deps += [
- ":libvpx_intrinsics_avx",
- ":libvpx_intrinsics_avx2",
- ":libvpx_intrinsics_mmx",
- ":libvpx_intrinsics_sse2",
- ":libvpx_intrinsics_sse4_1",
- ":libvpx_intrinsics_ssse3",
- ":libvpx_yasm",
- ]
- }
- if (cpu_arch_full == "arm-neon-cpu-detect") {
- deps += [ ":libvpx_intrinsics_neon" ]
- }
- if (is_android) {
- deps += [ "//third_party/android_tools:cpu_features" ]
- }
- if (current_cpu == "arm") {
- deps += [ ":libvpx_assembly_arm" ]
- }
-
+group("libvpx_new") {
+ public_deps = [
+ "//third_party/libvpx",
+ ]
public_configs = [ ":libvpx_external_config" ]
}
« no previous file with comments | « third_party/libvpx/source/config/win/x64/vpx_scale_rtcd.h ('k') | third_party/libvpx_new/DEPS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698