aboutsummaryrefslogtreecommitdiff
path: root/devel/electron13/files/patch-build_linux_libpci_BUILD.gn
blob: 282c79c699c30cde045b81d8510194ac3de70465 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
--- build/linux/libpci/BUILD.gn.orig	2021-01-07 00:36:18 UTC
+++ build/linux/libpci/BUILD.gn
@@ -3,20 +3,36 @@
 # found in the LICENSE file.
 
 import("//tools/generate_library_loader/generate_library_loader.gni")
+import("//build/config/linux/pkg_config.gni")
 
-# This generates a target named "libpci".
-generate_library_loader("libpci") {
-  name = "LibPciLoader"
-  output_h = "libpci.h"
-  output_cc = "libpci_loader.cc"
-  header = "<pci/pci.h>"
+declare_args() {
+  use_system_libpci = is_bsd
+}
 
-  functions = [
-    "pci_alloc",
-    "pci_init",
-    "pci_cleanup",
-    "pci_scan_bus",
-    "pci_fill_info",
-    "pci_lookup_name",
-  ]
+if (use_system_libpci) {
+  pkg_config("system_libpci") {
+    packages = [ "libpci" ]
+  }
+
+  source_set("libpci") {
+    public_configs = [ ":system_libpci" ]
+  }
+
+} else {
+  # This generates a target named "libpci".
+  generate_library_loader("libpci") {
+    name = "LibPciLoader"
+    output_h = "libpci.h"
+    output_cc = "libpci_loader.cc"
+    header = "<pci/pci.h>"
+
+    functions = [
+      "pci_alloc",
+      "pci_init",
+      "pci_cleanup",
+      "pci_scan_bus",
+      "pci_fill_info",
+      "pci_lookup_name",
+    ]
+  }
 }