| Index: src/trusted/plugin/build.scons
|
| diff --git a/src/trusted/plugin/build.scons b/src/trusted/plugin/build.scons
|
| deleted file mode 100644
|
| index ffa46c9744ee43b5e6b4cd363983b18d60cdcde9..0000000000000000000000000000000000000000
|
| --- a/src/trusted/plugin/build.scons
|
| +++ /dev/null
|
| @@ -1,199 +0,0 @@
|
| -# -*- python -*-
|
| -# Copyright (c) 2011 The Native Client Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -
|
| -# TODO(polina): for Mac build check if no longer need .r files and/or document
|
| -# target browsers for each bundle target.
|
| -
|
| -Import('env')
|
| -
|
| -if not env.Bit('mac'):
|
| - env['COMPONENT_STATIC'] = False
|
| -
|
| -
|
| -plugin_env = env.Clone()
|
| -if env.Bit('linux'):
|
| - plugin_env.Append(
|
| - CCFLAGS=['-fPIC', '-Wno-long-long',],
|
| - CPPDEFINES = ['XP_UNIX', 'MOZ_X11'],
|
| - # Catch unresolved symbols in libraries.
|
| - LINKFLAGS=['-Wl,-z,defs'],
|
| - )
|
| -
|
| - # We usually try to build things statically, but the plugin is a .so
|
| - plugin_env.FilterOut(LINKFLAGS=['-static'])
|
| -
|
| -if env.Bit('mac'):
|
| - plugin_env.Append(
|
| - CCFLAGS=['-Wno-long-long',
|
| - # warning: Basically all of our 2d Mac stuff is deprecated.
|
| - '-Wno-deprecated',
|
| - '-Wno-deprecated-declarations'],
|
| - CPPDEFINES = [
|
| - 'XP_MACOSX',
|
| - 'XP_UNIX',
|
| - ['TARGET_API_MAC_CARBON', '1'],
|
| - # TODO(robertm): NO_X11 may be obsolete
|
| - 'NO_X11',
|
| - 'USE_SYSTEM_CONSOLE',
|
| - ],
|
| - FRAMEWORKS = ['Carbon'],
|
| - # TODO(jrg): it's a little awkward to, when you want a bundle:
|
| - # 1) add -bundle to your LINKFLAGS
|
| - # 2) create a "program" (which shows up in all_programs target)
|
| - # 3) create a bundle out of it, specifying the bundle extension
|
| - # Ideally that all happens inside a CompleteBundlePseudoBuilder().
|
| - LINKFLAGS = ['-bundle', '-framework', 'Foundation']
|
| - )
|
| -
|
| -if env.Bit('windows'):
|
| - plugin_env.Append(
|
| - CPPDEFINES = ['XP_WIN', 'WIN32', '_WINDOWS'],
|
| - )
|
| -
|
| -common_inputs = [
|
| - 'array_ppapi.cc',
|
| - 'browser_interface.cc',
|
| - 'desc_based_handle.cc',
|
| - 'file_downloader.cc',
|
| - 'manifest.cc',
|
| - 'method_map.cc',
|
| - 'module_ppapi.cc',
|
| - 'nacl_subprocess.cc',
|
| - 'nexe_arch.cc',
|
| - 'plugin.cc',
|
| - 'pnacl_coordinator.cc',
|
| - 'pnacl_srpc_lib.cc',
|
| - 'scriptable_handle.cc',
|
| - 'service_runtime.cc',
|
| - 'srpc_client.cc',
|
| - 'string_encoding.cc',
|
| - 'utility.cc',
|
| - 'var_utils.cc',
|
| -]
|
| -
|
| -if env.Bit('target_x86'):
|
| - common_inputs += ['arch_x86/sandbox_isa.cc']
|
| -elif env.Bit('target_arm'):
|
| - common_inputs += ['arch_arm/sandbox_isa.cc']
|
| -else:
|
| - # Unrecognized architecture - this is a build failure.
|
| - print "Unrecognized architecture: %s" % env['TARGET_ARCHITECTURE']
|
| - Return()
|
| -
|
| -# The libraries used by both the PPAPI plugin. They and the PPAPI specific
|
| -# libraries must come before OS libraries, because they may generate references
|
| -# that are resolved by the OS libraries. E.g., libplatform.a contains
|
| -# references to symbols from libcrypto.so.
|
| -common_libs = [
|
| - 'nonnacl_util',
|
| - 'nonnacl_srpc',
|
| - 'gio_wrapped_desc',
|
| - 'nrd_xfer',
|
| - 'nacl_perf_counter',
|
| - 'nacl_base',
|
| - 'imc',
|
| - 'weak_ref',
|
| - 'platform',
|
| - 'platform_qual_lib',
|
| - 'reverse_service',
|
| - 'gio',
|
| - 'jsoncpp',
|
| - 'sel',
|
| - 'simple_service',
|
| - 'thread_interface',
|
| - 'env_cleanser',
|
| - 'nacl_error_code',
|
| -]
|
| -
|
| -os_libs = [ ]
|
| -if plugin_env.Bit('linux'):
|
| - os_libs += ['dl', 'Xt', 'X11', 'crypto']
|
| -
|
| -if plugin_env.Bit('windows'):
|
| - os_libs += ['gdi32', 'user32', ]
|
| -
|
| -
|
| -###############################################################################
|
| -# PPAPI Plugin Build
|
| -###############################################################################
|
| -
|
| -# We build a shared library with this build script to allow easier build
|
| -# testing. This library can also be loaded into Chrome using --no-sandbox
|
| -# --register-pepper-plugins="path/to/library;application/x-nacl".
|
| -#
|
| -# The .gyp files include rules used to link the plugin statically into Chrome.
|
| -# (This is still work in progress as of mid-Nov 2010.)
|
| -#
|
| -
|
| -ppNaClPlugin = 'ppNaClPlugin'
|
| -
|
| -ppapi_libs = common_libs + [ 'ppapi_cpp', 'ppapi_browser', 'nonnacl_srpc' ]
|
| -if plugin_env['SHARED_LIBS_SPECIAL']:
|
| - plugin_env.Append(LIBS=[l + '_shared' for l in ppapi_libs] + os_libs)
|
| -else:
|
| - plugin_env.Append(LIBS=ppapi_libs + os_libs)
|
| -
|
| -if not env.Bit('mac'): # linux, windows, arm
|
| - # This builds with
|
| - # MODE=... ppNaClPlugin sel_ldr
|
| - # with the output going to
|
| - # scons-out/.../staging/libppNaClPlugin.so on Linux and
|
| - # scons-out/.../staging/ppNaClPlugin.dll on Windows.
|
| - ppapi_plugin = plugin_env.ComponentLibrary(ppNaClPlugin,
|
| - common_inputs,
|
| - no_import_lib=True)
|
| -else: # mac
|
| - # This builds with
|
| - # MODE=... scons-out/.../staging/ppNaClPlugin.bundle sel_ldr
|
| - # This places both ppNaClPlugin.bundle/ and sel_ldr into staging/.
|
| - # One must either set $NACL_SEL_LDR=path/to/sel_ldr or manually
|
| - # copy sel_ldr to path/to/ppNaClPlugin.bundle/Contents/Resources/.
|
| - # (the 2nd option has been disabled:
|
| - # see ../nonnacl_util/osx/get_plugin_dirname.mm).
|
| - REZ = '/Developer/Tools/Rez'
|
| - plugin_env.Command(target='ppNaClPlugin.rsrc',
|
| - source='osx_ppapi/ppNaClPlugin.r',
|
| - action=[Action(REZ + ' -o ${TARGET} ${SOURCE} -useDF')])
|
| - ppapi_plugin = plugin_env.ComponentProgram(ppNaClPlugin,
|
| - common_inputs,
|
| - no_import_lib=True)
|
| - # Bundle pattern can be found in
|
| - # site_scons/site_tools/target_platform_mac.py
|
| - bundle_name = '${STAGING_DIR}/' + ppNaClPlugin + '.bundle'
|
| - plugin_env.Bundle(bundle_name,
|
| - BUNDLE_EXE = ppapi_plugin,
|
| - BUNDLE_PKGINFO_FILENAME = 0,
|
| - BUNDLE_RESOURCES = 'ppNaClPlugin.rsrc',
|
| - BUNDLE_INFO_PLIST = 'osx_ppapi/Info.plist')
|
| -
|
| -plugin_env.Alias('plugin', plugin_env.GetPPAPIPluginPath(False))
|
| -
|
| -###############################################################################
|
| -# PPAPI Plugin Test
|
| -###############################################################################
|
| -
|
| -# Rather than link ppNaClPlugin statically, this unittest uses the dynamic
|
| -# library. Note that these tests do not yet run on ARM.
|
| -unittest_sources = ['dylib_unittest.cc', 'plugin_unittest.cc']
|
| -if env.Bit('target_x86'):
|
| - if env.Bit('linux'):
|
| - unittest = env.ComponentProgram('ppapi_plugin_unittest',
|
| - unittest_sources,
|
| - no_import_lib=True,
|
| - EXTRA_LIBS=['dl'])
|
| - elif env.Bit('mac'):
|
| - unittest = env.ComponentProgram('ppapi_plugin_unittest', unittest_sources)
|
| - elif env.Bit('windows'):
|
| - unittest = env.ComponentProgram('ppapi_plugin_unittest',
|
| - unittest_sources,
|
| - no_import_lib=True)
|
| - node = env.CommandTest('ppapi_plugin_unittest.out',
|
| - command=[unittest,
|
| - ppapi_plugin,
|
| - env['BUILD_ISA_NAME']])
|
| - env.AddNodeToTestSuite(node, ['small_tests'], 'run_ppapi_plugin_unittest')
|
| -
|
| -
|
| -# TODO(polina,sehr): add a test for the PPAPI plugin on ARM.
|
|
|