diff options
author | binji@chromium.org <binji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-19 21:05:23 +0000 |
---|---|---|
committer | binji@chromium.org <binji@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-19 21:05:23 +0000 |
commit | c95658c1f125092be2ab561e8cc39eb05e80422b (patch) | |
tree | 7fea4f50dc73331ff233dfa5de9badcc756ad481 | |
parent | 29cbf34e5d08b87fc3d9b382a391801fd68a121f (diff) | |
download | chromium_src-c95658c1f125092be2ab561e8cc39eb05e80422b.zip chromium_src-c95658c1f125092be2ab561e8cc39eb05e80422b.tar.gz chromium_src-c95658c1f125092be2ab561e8cc39eb05e80422b.tar.bz2 |
Beginnings of moving more stuff from build_sdk.py to GYP.
Adds a new target to all.gyp: chromium_builder_nacl_sdk
Adds a native_client_sdk gyp file: it depends on nacl_core_sdk from the
native_client repo, but also builds and copies ppapi libraries to the toolchain
directories.
Retry of http://codereview.chromium.org/11363045/
This originally failed here: http://build.chromium.org/p/chromium/builders/Linux%20x64/builds/41342
With the following error:
init.c:(.text+0x3c): undefined reference to `__libc_setup_tls'
init.c:(.text+0x2e2): undefined reference to `_dl_init_static_tls'
init.c:(.text+0x2ec): undefined reference to `_dl_wait_lookup_done'
While building simple_glibc_x86_32.nexe.
My change seems to have tickled a bug in nacl_browser_test.gypi which was using
the link flag -lpthread instead of -pthread. Changing this seems to have fixed
the link failure.
BUG=none
TBR=noelallen@chromium.org
TBR=ncbray@chromium.org
Review URL: https://codereview.chromium.org/11280063
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168603 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | build/all.gyp | 15 | ||||
-rw-r--r-- | chrome/test/data/nacl/nacl_browser_test.gypi | 2 | ||||
-rw-r--r-- | native_client_sdk/src/build_tools/nacl_ppapi_sdk.gyp | 130 |
3 files changed, 146 insertions, 1 deletions
diff --git a/build/all.gyp b/build/all.gyp index bcbb259..b2bc5c7 100644 --- a/build/all.gyp +++ b/build/all.gyp @@ -350,6 +350,21 @@ '../third_party/webrtc/tools/tools.gyp:rgba_to_i420_converter', ], }, # target_name: chromium_builder_webrtc + { + 'target_name': 'chromium_builder_nacl_sdk', + 'type': 'none', + 'dependencies': [ + '../chrome/chrome.gyp:chrome', + '../native_client_sdk/src/build_tools/nacl_ppapi_sdk.gyp:*', + ], + 'conditions': [ + ['OS=="win"', { + 'dependencies': [ + '../chrome/chrome.gyp:chrome_nacl_win64', + ], + }], + ], + }, # target_name: chromium_builder_nacl_sdk ], # targets }], ['OS=="mac"', { diff --git a/chrome/test/data/nacl/nacl_browser_test.gypi b/chrome/test/data/nacl/nacl_browser_test.gypi index 557acc2..d4b36ea 100644 --- a/chrome/test/data/nacl/nacl_browser_test.gypi +++ b/chrome/test/data/nacl/nacl_browser_test.gypi @@ -71,7 +71,7 @@ 'link_flags': [ '-lppapi_cpp', '-lppapi', - '-lpthread', + '-pthread', ], }, 'target_conditions': [ diff --git a/native_client_sdk/src/build_tools/nacl_ppapi_sdk.gyp b/native_client_sdk/src/build_tools/nacl_ppapi_sdk.gyp new file mode 100644 index 0000000..29aa1ba --- /dev/null +++ b/native_client_sdk/src/build_tools/nacl_ppapi_sdk.gyp @@ -0,0 +1,130 @@ +# Copyright (c) 2012 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. + +{ + 'targets': [ + { + 'target_name': 'nacl_ppapi_sdk', + 'type': 'none', + 'dependencies': [ + '../../../native_client/build/nacl_core_sdk.gyp:nacl_core_sdk', + '../../../ppapi/native_client/native_client.gyp:ppapi_lib', + '../../../ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:pnacl_irt_shim', + '../../../ppapi/ppapi_untrusted.gyp:ppapi_cpp_lib', + '../../../ppapi/ppapi_untrusted.gyp:ppapi_gles2_lib', + ], + 'conditions': [ + ['target_arch!="arm"', { + 'copies': [ + # Newlib headers + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_newlib/x86_64-nacl/include', + 'files': [ + '../../../native_client/src/untrusted/irt/irt.h', + '../../../native_client/src/untrusted/irt/irt_ppapi.h', + '../../../native_client/src/untrusted/pthread/pthread.h', + '../../../native_client/src/untrusted/pthread/semaphore.h', + ], + }, + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_newlib/x86_64-nacl/include/nacl', + 'files': [ + '../../../native_client/src/untrusted/nacl/nacl_dyncode.h', + '../../../native_client/src/untrusted/nacl/nacl_startup.h', + '../../../native_client/src/untrusted/nacl/nacl_thread.h', + ], + }, + # Glibc headers + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_glibc/x86_64-nacl/include', + 'files': [ + '../../../native_client/src/untrusted/irt/irt.h', + '../../../native_client/src/untrusted/irt/irt_ppapi.h', + ], + }, + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_glibc/x86_64-nacl/include/nacl', + 'files': [ + '../../../native_client/src/untrusted/nacl/nacl_dyncode.h', + '../../../native_client/src/untrusted/nacl/nacl_startup.h', + '../../../native_client/src/untrusted/nacl/nacl_thread.h', + ], + }, + # PNaCl Newlib headers + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_pnacl/newlib/sdk/include', + 'files': [ + '../../../native_client/src/untrusted/irt/irt.h', + '../../../native_client/src/untrusted/irt/irt_ppapi.h', + '../../../native_client/src/untrusted/nacl/pnacl.h', + '../../../native_client/src/untrusted/pthread/pthread.h', + '../../../native_client/src/untrusted/pthread/semaphore.h', + ], + }, + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_pnacl/newlib/sdk/include/nacl', + 'files': [ + '../../../native_client/src/untrusted/nacl/nacl_dyncode.h', + '../../../native_client/src/untrusted/nacl/nacl_startup.h', + '../../../native_client/src/untrusted/nacl/nacl_thread.h', + ], + }, + # Newlib libs + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_newlib/x86_64-nacl/lib32', + 'files': [ + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_cpp.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/libppapi_gles2.a', + ], + }, + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_newlib/x86_64-nacl/lib', + 'files': [ + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_cpp.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/libppapi_gles2.a', + ], + }, + # Glibc libs + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_glibc/x86_64-nacl/lib32', + 'files': [ + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libppapi.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libppapi_cpp.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib32/libppapi_gles2.a', + ], + }, + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_glibc/x86_64-nacl/lib', + 'files': [ + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libppapi.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libppapi_cpp.a', + '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/lib64/libppapi_gles2.a', + ], + }, + # PNaCl IRT shim + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_pnacl/lib-x86-64', + 'files': [ + '<(PRODUCT_DIR)/libpnacl_irt_shim.a', + ], + }, + ], + }], + ['target_arch=="arm"', { + 'copies': [ + { + 'destination': '<(SHARED_INTERMEDIATE_DIR)/sdk/toolchain/<(OS)_x86_pnacl/lib-arm', + 'files': [ + '<(PRODUCT_DIR)/libpnacl_irt_shim.a', + ], + }, + ], + }], + ], + }, + ], +} + |