Index: sandbox/mac/sandbox_mac.gypi |
diff --git a/sandbox/mac/sandbox_mac.gypi b/sandbox/mac/sandbox_mac.gypi |
index 29a65342b6c435886596e9522c270e0f613c3aa3..a2a616fcfb3df8ebe64747037e089c9dc46ed36d 100644 |
--- a/sandbox/mac/sandbox_mac.gypi |
+++ b/sandbox/mac/sandbox_mac.gypi |
@@ -41,43 +41,51 @@ |
'$(SDKROOT)/usr/lib/libbsm.dylib', |
], |
}, |
- 'actions': [ |
- { |
- 'variables': { |
- 'generate_stubs_script': '../tools/generate_stubs/generate_stubs.py', |
- 'generate_stubs_header_path': 'xpc_stubs_header.fragment', |
- 'generate_stubs_sig_public_path': 'xpc_stubs.sig', |
- 'generate_stubs_sig_private_path': 'xpc_private_stubs.sig', |
- 'generate_stubs_project': 'sandbox/mac', |
- 'generate_stubs_output_stem': 'xpc_stubs', |
- }, |
- 'action_name': 'generate_stubs', |
- 'inputs': [ |
- '<(generate_stubs_script)', |
- '<(generate_stubs_header_path)', |
- '<(generate_stubs_sig_public_path)', |
- '<(generate_stubs_sig_private_path)', |
+ 'conditions': [ |
+ # When the build SDK is 10.6, generate a dynamic stub loader. When the |
+ # SDK is higher, then libxpc.dylib will be loaded automatically as part |
+ # of libSystem, and only forward declarations of private symbols are |
+ # necessary. |
+ ['mac_sdk == "10.6"', { |
+ 'actions': [ |
+ { |
+ 'variables': { |
+ 'generate_stubs_script': '../tools/generate_stubs/generate_stubs.py', |
+ 'generate_stubs_header_path': 'xpc_stubs_header.fragment', |
+ 'generate_stubs_sig_public_path': 'xpc_stubs.sig', |
+ 'generate_stubs_sig_private_path': 'xpc_private_stubs.sig', |
+ 'generate_stubs_project': 'sandbox/mac', |
+ 'generate_stubs_output_stem': 'xpc_stubs', |
+ }, |
+ 'action_name': 'generate_stubs', |
+ 'inputs': [ |
+ '<(generate_stubs_script)', |
+ '<(generate_stubs_header_path)', |
+ '<(generate_stubs_sig_public_path)', |
+ '<(generate_stubs_sig_private_path)', |
+ ], |
+ 'outputs': [ |
+ '<(INTERMEDIATE_DIR)/<(generate_stubs_output_stem).cc', |
+ '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)/<(generate_stubs_output_stem).h', |
+ ], |
+ 'action': [ |
+ 'python', |
+ '<(generate_stubs_script)', |
+ '-i', '<(INTERMEDIATE_DIR)', |
+ '-o', '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)', |
+ '-t', 'posix_stubs', |
+ '-e', '<(generate_stubs_header_path)', |
+ '-s', '<(generate_stubs_output_stem)', |
+ '-p', '<(generate_stubs_project)', |
+ '-x', 'SANDBOX_EXPORT', |
+ '<(generate_stubs_sig_public_path)', |
+ '<(generate_stubs_sig_private_path)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ 'message': 'Generating XPC stubs for 10.6 compatability.', |
+ }, |
], |
- 'outputs': [ |
- '<(INTERMEDIATE_DIR)/<(generate_stubs_output_stem).cc', |
- '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)/<(generate_stubs_output_stem).h', |
- ], |
- 'action': [ |
- 'python', |
- '<(generate_stubs_script)', |
- '-i', '<(INTERMEDIATE_DIR)', |
- '-o', '<(SHARED_INTERMEDIATE_DIR)/<(generate_stubs_project)', |
- '-t', 'posix_stubs', |
- '-e', '<(generate_stubs_header_path)', |
- '-s', '<(generate_stubs_output_stem)', |
- '-p', '<(generate_stubs_project)', |
- '-x', 'SANDBOX_EXPORT', |
- '<(generate_stubs_sig_public_path)', |
- '<(generate_stubs_sig_private_path)', |
- ], |
- 'process_outputs_as_sources': 1, |
- 'message': 'Generating XPC stubs for 10.6 compatability.', |
- }, |
+ }], |
], |
}, |
{ |