Index: build/config/linux/BUILD.gn |
diff --git a/build/config/linux/BUILD.gn b/build/config/linux/BUILD.gn |
index 758f42a6164a935143689fb215835fe9a2e8ad27..e132116d243f6666d3e01818ef4ee2907ba6b70e 100644 |
--- a/build/config/linux/BUILD.gn |
+++ b/build/config/linux/BUILD.gn |
@@ -8,6 +8,11 @@ import("//build/config/sysroot.gni") |
import("//build/config/ui.gni") |
import("//tools/generate_library_loader/generate_library_loader.gni") |
+gypi_values = exec_script("//build/gypi_to_gn.py", |
+ [ rebase_path("../../linux/system.gyp") ], |
+ "scope", |
+ [ "../../linux/system.gyp" ]) |
+ |
config("sdk") { |
if (sysroot != "") { |
cflags = [ "--sysroot=" + sysroot ] |
@@ -15,9 +20,12 @@ config("sdk") { |
# Need to get some linker flags out of the sysroot. |
ldflags += [ exec_script("sysroot_ld_path.py", |
- [ rebase_path("//build/linux/sysroot_ld_path.sh", root_build_dir), |
- sysroot ], |
- "value") ] |
+ [ |
+ rebase_path("//build/linux/sysroot_ld_path.sh", |
+ root_build_dir), |
+ sysroot, |
+ ], |
+ "value") ] |
} |
# Set here because OS_CHROMEOS cannot be autodetected in build_config.h like |
@@ -36,7 +44,12 @@ pkg_config("freetype2") { |
} |
pkg_config("glib") { |
- packages = [ "glib-2.0", "gmodule-2.0", "gobject-2.0", "gthread-2.0" ] |
+ packages = [ |
+ "glib-2.0", |
+ "gmodule-2.0", |
+ "gobject-2.0", |
+ "gthread-2.0", |
+ ] |
} |
pkg_config("pangocairo") { |
@@ -47,10 +60,6 @@ pkg_config("pangoft2") { |
packages = [ "pangoft2" ] |
} |
-pkg_config("udev") { |
- packages = [ "libudev" ] |
-} |
- |
# Note: if your target also depends on //dbus, you don't need to add this |
# config (it will get added automatically if you depend on //dbus). |
pkg_config("dbus") { |
@@ -140,24 +149,13 @@ if (use_brlapi) { |
header = "<brlapi.h>" |
config = ":brlapi_config" |
- functions = [ |
- "brlapi_getHandleSize", |
- "brlapi_error_location", |
- "brlapi_strerror", |
- "brlapi__acceptKeys", |
- "brlapi__openConnection", |
- "brlapi__closeConnection", |
- "brlapi__getDisplaySize", |
- "brlapi__enterTtyModeWithPath", |
- "brlapi__leaveTtyMode", |
- "brlapi__writeDots", |
- "brlapi__readKey", |
- ] |
+ functions = gypi_values.libbrlapi_functions |
} |
} |
pkg_config("gio_config") { |
packages = [ "gio-2.0" ] |
+ |
# glib >=2.40 deprecate g_settings_list_schemas in favor of |
# g_settings_schema_source_list_schemas. This function is not available on |
# earlier versions that we still need to support (specifically, 2.32), so |
@@ -165,8 +163,11 @@ pkg_config("gio_config") { |
# TODO(mgiuca): Remove this suppression when we drop support for Ubuntu 13.10 |
# (saucy) and earlier. Update the code to use |
# g_settings_schema_source_list_schemas instead. |
- defines = [ "USE_GIO", "GLIB_DISABLE_DEPRECATION_WARNINGS" ] |
- |
+ defines = [ |
+ "USE_GIO", |
+ "GLIB_DISABLE_DEPRECATION_WARNINGS", |
+ ] |
+ |
# TODO(brettw) Theoretically I think ignore_libs should be set so that we |
# don't link directly to GIO and use the loader generated below. But the gio |
# target in GYP doesn't make any sense to me and appears to link directly to |
@@ -183,15 +184,7 @@ generate_library_loader("gio") { |
header = "<gio/gio.h>" |
config = ":gio_config" |
- functions = [ |
- "g_settings_new", |
- "g_settings_get_child", |
- "g_settings_get_string", |
- "g_settings_get_boolean", |
- "g_settings_get_int", |
- "g_settings_get_strv", |
- "g_settings_list_schemas", |
- ] |
+ functions = gypi_values.libgio_functions |
} |
# This generates a target named "libpci". |
@@ -201,14 +194,34 @@ generate_library_loader("libpci") { |
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", |
- ] |
+ functions = gypi_values.libpci_functions |
} |
# Looking for libspeechd? Use //third_party/speech-dispatcher |
+ |
+# This generates a target named "udev0_loader". |
+generate_library_loader("udev0_loader") { |
+ name = "LibUdev0Loader" |
+ output_h = "libudev0.h" |
+ output_cc = "libudev0_loader.cc" |
+ header = "\"third_party/libudev/libudev0.h\"" |
+ |
+ functions = gypi_values.libudev_functions |
+} |
+ |
+# This generates a target named "udev1_loader". |
+generate_library_loader("udev1_loader") { |
+ name = "LibUdev1Loader" |
+ output_h = "libudev1.h" |
+ output_cc = "libudev1_loader.cc" |
+ header = "\"third_party/libudev/libudev1.h\"" |
+ |
+ functions = gypi_values.libudev_functions |
+} |
+ |
+group("udev") { |
+ deps = [ |
+ ":udev0_loader", |
+ ":udev1_loader", |
+ ] |
+} |