Index: tools.gyp |
=================================================================== |
--- tools.gyp (revision 8056) |
+++ tools.gyp (working copy) |
@@ -8,116 +8,138 @@ |
'build/common.gypi', |
], |
###################################################################### |
- 'conditions': [ |
- ['target_arch!="arm"', { |
- 'targets' : [ |
+ 'targets' : [ |
+ { |
+ 'target_name': 'prep_toolchain', |
+ 'type': 'none', |
+ 'conditions': [ |
+ ['target_arch=="ia32"', { |
+ 'dependencies': [ |
+ 'crt_init_32', |
+ 'crt_fini_32', |
+ ], |
+ }], |
+ ['target_arch=="x64" or OS=="win"', { |
+ 'dependencies': [ |
+ 'crt_init_64', |
+ 'crt_fini_64', |
+ ], |
+ }], |
+ ['target_arch=="arm"', { |
+ 'dependencies': [ |
+ 'crt_init_arm', |
+ 'crt_fini_arm', |
+ ], |
+ }], |
+ ], |
+ }, |
+ { |
+ 'target_name': 'copy_headers', |
+ 'type': 'none', |
+ 'actions': [ |
{ |
- 'target_name': 'prep_toolchain', |
- 'type': 'none', |
- 'conditions': [ |
- ['target_arch=="ia32"', { |
- 'dependencies': [ |
- 'crt_init_32', |
- 'crt_fini_32', |
- ], |
- }], |
- ['target_arch=="x64" or OS=="win"', { |
- 'dependencies': [ |
- 'crt_init_64', |
- 'crt_fini_64', |
- ], |
- }], |
+ 'action_name': 'Install crt1.o 32', |
+ 'msvs_cygwin_shell': 0, |
+ 'description': 'Install crt1.o 32', |
+ 'inputs': [ |
+ 'src/untrusted/stubs/crt1.x', |
+ ], |
+ 'outputs': [ |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
+ ], |
+ 'action': [ |
+ '>(python_exe)', |
+ '<(DEPTH)/native_client/build/copy_sources.py', |
+ 'src/untrusted/stubs/crt1.x', |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
], |
}, |
{ |
- 'target_name': 'copy_headers', |
- 'type': 'none', |
- 'actions': [ |
- { |
- 'action_name': 'Install crt1.o 32', |
- 'msvs_cygwin_shell': 0, |
- 'description': 'Install crt1.o 32', |
- 'inputs': [ |
- 'src/untrusted/stubs/crt1.x', |
- ], |
- 'outputs': [ |
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
- ], |
- 'action': [ |
- '>(python_exe)', |
- '<(DEPTH)/native_client/build/copy_sources.py', |
- 'src/untrusted/stubs/crt1.x', |
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib32/32/crt1.o', |
- ], |
- }, |
- { |
- 'action_name': 'Install crt1.o 64', |
- 'msvs_cygwin_shell': 0, |
- 'description': 'Install crt1.o 64', |
- 'inputs': [ |
- 'src/untrusted/stubs/crt1.x', |
- ], |
- 'outputs': [ |
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
- ], |
- 'action': [ |
- '>(python_exe)', |
- '<(DEPTH)/native_client/build/copy_sources.py', |
- 'src/untrusted/stubs/crt1.x', |
- '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
- ], |
- }, |
+ 'action_name': 'Install crt1.o 64', |
+ 'msvs_cygwin_shell': 0, |
+ 'description': 'Install crt1.o 64', |
+ 'inputs': [ |
+ 'src/untrusted/stubs/crt1.x', |
+ ], |
+ 'outputs': [ |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
+ ], |
+ 'action': [ |
+ '>(python_exe)', |
+ '<(DEPTH)/native_client/build/copy_sources.py', |
+ 'src/untrusted/stubs/crt1.x', |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/lib64/crt1.o', |
+ ], |
+ }, |
+ { |
+ 'action_name': 'Install crt1.o arm', |
+ 'msvs_cygwin_shell': 0, |
+ 'description': 'Install crt1.o arm', |
+ 'inputs': [ |
+ 'pnacl/support/crt1.x', |
+ ], |
+ 'outputs': [ |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/crt1.o', |
+ ], |
+ 'action': [ |
+ '>(python_exe)', |
+ '<(DEPTH)/native_client/build/copy_sources.py', |
+ 'pnacl/support/crt1.x', |
+ '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/crt1.o', |
+ ], |
+ }, |
+ ], |
+ 'copies': [ |
+ # NEWLIB copies |
+ { |
+ 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include/nacl', |
+ # Alphabetical order in dst dir for easier verification. |
+ 'files': [ |
+ '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
+ '<(DEPTH)/native_client/src/untrusted/nacl/nacl_dyncode.h', |
+ '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
+ '<(DEPTH)/native_client/src/shared/imc/nacl_imc_c.h', |
+ '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
+ '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
+ '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
+ '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
+ '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
+ '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
], |
- 'copies': [ |
- # NEWLIB copies |
- { |
- 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include/nacl', |
- # Alphabetical order in dst dir for easier verification. |
- 'files': [ |
- '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
- '<(DEPTH)/native_client/src/untrusted/nacl//nacl_dyncode.h', |
- '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
- '<(DEPTH)/native_client/src/shared/imc/nacl_imc_c.h', |
- '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
- '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
- '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
- '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
- '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
- '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
- ], |
- }, |
- { |
- 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include', |
- 'files': [ |
- '<(DEPTH)/native_client/src/untrusted/pthread/pthread.h', |
- '<(DEPTH)/native_client/src/untrusted/pthread/semaphore.h' |
- ], |
- }, |
- # GLIBC copies |
- { |
- # Alphabetical order in dst dir for easier verification. |
- 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/include/nacl', |
- 'files': [ |
- '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
- '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
- '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
- '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
- '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
- '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
- '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
- '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
- '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
- ], |
- }, |
+ }, |
+ { |
+ 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/include', |
+ 'files': [ |
+ '<(DEPTH)/native_client/src/untrusted/pthread/pthread.h', |
+ '<(DEPTH)/native_client/src/untrusted/pthread/semaphore.h' |
+ ], |
+ }, |
+ # GLIBC copies |
+ { |
+ # Alphabetical order in dst dir for easier verification. |
+ 'destination': '<(SHARED_INTERMEDIATE_DIR)/tc_glibc/include/nacl', |
+ 'files': [ |
+ '<(DEPTH)/native_client/src/trusted/weak_ref/call_on_main_thread.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_check.h', |
+ '<(DEPTH)/native_client/src/untrusted/ppapi/nacl_file.h', |
+ '<(DEPTH)/native_client/src/shared/imc/nacl_imc.h', |
+ '<(DEPTH)/native_client/src/include/nacl/nacl_inttypes.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_log.h', |
+ '<(DEPTH)/native_client/src/shared/srpc/nacl_srpc.h', |
+ '<(DEPTH)/native_client/src/shared/platform/nacl_threads.h', |
+ '<(DEPTH)/ppapi/native_client/src/shared/ppapi_proxy/ppruntime.h', |
+ '<(DEPTH)/native_client/src/shared/platform/refcount_base.h', |
+ '<(DEPTH)/native_client/src/trusted/weak_ref/weak_ref.h' |
], |
}, |
- ], |
- }], |
+ ], |
+ }, |
+ ], |
+ |
+ 'conditions': [ |
['target_arch=="x64" or OS=="win"', { |
'targets' : [ |
{ |
@@ -218,5 +240,53 @@ |
} |
], |
}], |
+ ['target_arch=="arm"', { |
+ 'targets' : [ |
+ { |
+ 'target_name': 'crt_init_arm', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'copy_headers' |
+ ], |
+ 'variables': { |
+ 'nlib_target': 'crt_init_dummy', |
+ 'build_glibc': 0, |
+ 'build_newlib': 1, |
+ 'extra_args': [ |
+ '--compile', |
+ '--no-suffix', |
+ '--strip=_arm' |
+ ], |
+ 'outarm': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/crti.o', |
+ 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm', |
+ 'sources': [ |
+ 'src/untrusted/stubs/crti_arm.S', |
+ ] |
+ }, |
+ }, |
+ { |
+ 'target_name': 'crt_fini_arm', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'copy_headers' |
+ ], |
+ 'variables': { |
+ 'nlib_target': 'crt_fini_dummy', |
+ 'build_glibc': 0, |
+ 'build_newlib': 1, |
+ 'extra_args': [ |
+ '--compile', |
+ '--no-suffix', |
+ '--strip=_arm' |
+ ], |
+ 'outarm': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm/crtn.o', |
+ 'objdir': '<(SHARED_INTERMEDIATE_DIR)/tc_newlib/libarm', |
+ 'sources': [ |
+ 'src/untrusted/stubs/crtn_arm.S' |
+ ] |
+ }, |
+ } |
+ ], |
+ }], |
], |
} |