Chromium Code Reviews| Index: media/cdm/ppapi/cdm_adapter.gni |
| diff --git a/media/cdm/ppapi/cdm_adapter.gni b/media/cdm/ppapi/cdm_adapter.gni |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..4da61b8cd1ce2e9dcfdbdff79a9a05f1d84c75a5 |
| --- /dev/null |
| +++ b/media/cdm/ppapi/cdm_adapter.gni |
| @@ -0,0 +1,127 @@ |
| +# Copyright 2015 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. |
| + |
| +# This template defines a CDM adapter target. Just use this as you would a |
| +# normal target and everything should work correctly. If GYP, you would instead |
| +# depend on media/media_cdm_adapter.gyp:cdmadapter which would in turn modify |
| +# your target with direct_dependent_settings. |
| +template("cdm_adapter") { |
| + # TODO(GYP) On Mac/Linux this should be a loadable_module. |
|
ddorwin
2015/02/25 01:18:32
I assume "GYP" TODOs will be resolved before switc
brettw
2015/02/25 01:32:42
Yes.
|
| + shared_library(target_name) { |
| + # Don't filter sources list again. |
| + set_sources_assignment_filter([]) |
| + |
| + sources = [ |
| + "//media/cdm/ppapi/api/content_decryption_module.h", |
| + "//media/cdm/ppapi/cdm_adapter.cc", |
| + "//media/cdm/ppapi/cdm_adapter.h", |
| + "//media/cdm/ppapi/cdm_file_io_impl.cc", |
| + "//media/cdm/ppapi/cdm_file_io_impl.h", |
| + "//media/cdm/ppapi/cdm_helpers.cc", |
| + "//media/cdm/ppapi/cdm_helpers.h", |
| + "//media/cdm/ppapi/cdm_logging.cc", |
| + "//media/cdm/ppapi/cdm_logging.h", |
| + "//media/cdm/ppapi/cdm_wrapper.h", |
| + "//media/cdm/ppapi/linked_ptr.h", |
| + "//media/cdm/ppapi/supported_cdm_versions.h", |
| + ] |
| + if (defined(invoker.sources)) { |
| + sources += invoker.sources |
| + } |
| + |
| + if (is_mac) { |
| + ldflags = [ |
| + # Not to strip important symbols by -Wl,-dead_strip. |
| + "-Wl,-exported_symbol,_PPP_GetInterface", |
| + "-Wl,-exported_symbol,_PPP_InitializeModule", |
| + "-Wl,-exported_symbol,_PPP_ShutdownModule", |
| + ] |
| + #TODO(GYP) Mac: 'DYLIB_INSTALL_NAME_BASE': '@loader_path', |
| + } else if (is_posix && !is_mac) { |
| + cflags = [ "-fvisibility=hidden" ] |
| + # Note GYP sets rpath but this is set by default on shared libraries. |
|
ddorwin
2015/02/25 01:18:32
Are you saying there is a difference between GYP a
brettw
2015/02/25 01:32:42
THis is in the GN build, not GYP. I updated the co
ddorwin
2015/02/25 02:07:56
Thanks.
|
| + } |
| + |
| + configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
|
ddorwin
2015/02/25 01:18:32
Reference crbug.com/167187?
brettw
2015/02/25 01:32:42
Done.
|
| + |
| + if (defined(invoker.all_dependent_configs)) { |
|
ddorwin
2015/02/25 01:18:32
Is this needed anywhere else? Is there a better so
brettw
2015/02/25 01:32:42
Most of these are unused for the cdm adapter targe
ddorwin
2015/02/25 02:07:56
Thanks. I was just curious if there should be some
brettw
2015/02/25 02:19:54
I've considered a better way to do this, but as in
|
| + all_dependent_configs = invoker.all_dependent_configs |
| + } |
| + if (defined(invoker.allow_circular_includes_from)) { |
| + allow_circular_includes_from = invoker.allow_circular_includes_from |
| + } |
| + if (defined(invoker.cflags)) { |
| + cflags = invoker.cflags |
| + } |
| + if (defined(invoker.cflags_c)) { |
| + cflags_c = invoker.cflags_c |
| + } |
| + if (defined(invoker.cflags_cc)) { |
| + cflags_cc = invoker.cflags_cc |
| + } |
| + if (defined(invoker.cflags_objc)) { |
| + cflags_objc = invoker.cflags_objc |
| + } |
| + if (defined(invoker.cflags_objcc)) { |
| + cflags_objcc = invoker.cflags_objcc |
| + } |
| + if (defined(invoker.check_includes)) { |
| + check_includes = invoker.check_includes |
| + } |
| + if (defined(invoker.data)) { |
| + data = invoker.data |
| + } |
| + if (defined(invoker.data_deps)) { |
| + data_deps = invoker.data_deps |
| + } |
| + if (defined(invoker.datadeps)) { |
| + datadeps = invoker.datadeps |
| + } |
| + if (defined(invoker.defines)) { |
| + defines = invoker.defines |
| + } |
| + if (defined(invoker.deps)) { |
| + deps = invoker.deps |
| + } |
| + if (defined(invoker.direct_dependent_configs)) { |
| + direct_dependent_configs = invoker.direct_dependent_configs |
| + } |
| + if (defined(invoker.forward_dependent_configs_from)) { |
| + forward_dependent_configs_from = invoker.forward_dependent_configs_from |
| + } |
| + if (defined(invoker.include_dirs)) { |
| + include_dirs = invoker.include_dirs |
| + } |
| + if (defined(invoker.ldflags)) { |
| + ldflags = invoker.ldflags |
| + } |
| + if (defined(invoker.lib_dirs)) { |
| + lib_dirs = invoker.lib_dirs |
| + } |
| + if (defined(invoker.libs)) { |
| + libs = invoker.libs |
| + } |
| + if (defined(invoker.output_extension)) { |
| + output_extension = invoker.output_extension |
| + } |
| + if (defined(invoker.output_name)) { |
| + output_name = invoker.output_name |
| + } |
| + if (defined(invoker.public)) { |
| + public = invoker.public |
| + } |
| + if (defined(invoker.public_configs)) { |
| + public_configs = invoker.public_configs |
| + } |
| + if (defined(invoker.public_deps)) { |
| + public_deps = invoker.public_deps |
| + } |
| + if (defined(invoker.testonly)) { |
| + testonly = invoker.testonly |
| + } |
| + if (defined(invoker.visibility)) { |
| + visibility = invoker.visibility |
| + } |
| + } |
| +} |