Index: build/linux/system.gyp |
diff --git a/build/linux/system.gyp b/build/linux/system.gyp |
index 2eacbdbaaba56db8f5633e7a63ef3d78dc8cae5c..23f2689c6b7f427d2c09282606f8cb1f234c8fdc 100644 |
--- a/build/linux/system.gyp |
+++ b/build/linux/system.gyp |
@@ -11,6 +11,8 @@ |
'pkg-config': 'pkg-config' |
}] |
], |
+ |
+ 'linux_link_libpci%': 0, |
}, |
'conditions': [ |
[ 'os_posix==1 and OS!="mac"', { |
@@ -275,6 +277,70 @@ |
], |
}, |
{ |
+ 'target_name': 'libpci', |
+ 'type': 'static_library', |
+ 'cflags': [ |
+ '<!@(<(pkg-config) --cflags libpci)', |
+ ], |
+ 'include_dirs': [ |
+ '../..', |
+ ], |
+ 'direct_dependent_settings': { |
+ 'include_dirs': [ |
+ '<(SHARED_INTERMEDIATE_DIR)', |
+ ], |
+ 'conditions': [ |
+ ['linux_link_libpci==1', { |
+ 'link_settings': { |
+ 'ldflags': [ |
+ '<!@(<(pkg-config) --libs-only-L --libs-only-other libpci)', |
+ ], |
+ 'libraries': [ |
+ '<!@(<(pkg-config) --libs-only-l libpci)', |
+ ], |
+ } |
+ }], |
+ ], |
+ }, |
+ 'hard_dependency': 1, |
+ 'actions': [ |
+ { |
+ 'variables': { |
+ 'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libpci.h', |
+ 'output_cc': '<(INTERMEDIATE_DIR)/libpci_loader.cc', |
+ 'generator': '../../tools/generate_library_loader/generate_library_loader.py', |
+ }, |
+ 'action_name': 'generate_libpci_loader', |
+ 'inputs': [ |
+ '<(generator)', |
+ ], |
+ 'outputs': [ |
+ '<(output_h)', |
+ '<(output_cc)', |
+ ], |
+ 'action': ['python', |
+ '<(generator)', |
+ '--name', 'LibPciLoader', |
+ '--output-h', '<(output_h)', |
+ '--output-cc', '<(output_cc)', |
+ '--header', '<pci/pci.h>', |
+ # TODO(phajdan.jr): Report problem to pciutils project |
+ # and get it fixed so that we don't need --use-extern-c. |
+ '--use-extern-c', |
+ '--link-directly=<(linux_link_libpci)', |
+ 'pci_alloc', |
+ 'pci_init', |
+ 'pci_cleanup', |
+ 'pci_scan_bus', |
+ 'pci_fill_info', |
+ 'pci_lookup_name', |
+ ], |
+ 'message': 'Generating libpci library loader.', |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
'target_name': 'x11', |
'type': 'none', |
'toolsets': ['host', 'target'], |