| # 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. |
| |
| if (is_mac) { |
| import("//build/config/mac/rules.gni") |
| } |
| |
| # Declares a PPAPI example target of the correct type for the current platform |
| # and with the right linker flags. |
| template("ppapi_example") { |
| if (!is_mac) { |
| shared_library(target_name) { |
| testonly = true |
| |
| if (defined(invoker.output_name)) { |
| output_name = invoker.output_name |
| } |
| |
| sources = invoker.sources |
| deps = invoker.deps + [ "//build/config:exe_and_shlib_deps" ] |
| } |
| } else { |
| mac_plugin_bundle(target_name) { |
| testonly = true |
| |
| if (defined(invoker.output_name)) { |
| output_name = invoker.output_name |
| } |
| |
| sources = invoker.sources |
| deps = invoker.deps |
| |
| 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", |
| ] |
| } |
| } |
| } |