Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: build/config/linux/BUILD.gn

Issue 362583002: Add more GN deps to the build. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « BUILD.gn ('k') | build/secondary/third_party/cacheinvalidation/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//build/config/linux/pkg_config.gni") 5 import("//build/config/linux/pkg_config.gni")
6 import("//build/config/sysroot.gni") 6 import("//build/config/sysroot.gni")
7 import("//build/config/ui.gni") 7 import("//build/config/ui.gni")
8 import("//tools/generate_library_loader/generate_library_loader.gni")
8 9
9 config("sdk") { 10 config("sdk") {
10 if (sysroot != "") { 11 if (sysroot != "") {
11 cflags = [ "--sysroot=" + sysroot ] 12 cflags = [ "--sysroot=" + sysroot ]
12 ldflags = [ "--sysroot=" + sysroot ] 13 ldflags = [ "--sysroot=" + sysroot ]
13 14
14 # Need to get some linker flags out of the sysroot. 15 # Need to get some linker flags out of the sysroot.
15 ldflags += [ exec_script("sysroot_ld_path.py", 16 ldflags += [ exec_script("sysroot_ld_path.py",
16 [ rebase_path("//build/linux/sysroot_ld_path.sh", root_build_dir), 17 [ rebase_path("//build/linux/sysroot_ld_path.sh", root_build_dir),
17 sysroot ], 18 sysroot ],
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 101
101 config("libresolv") { 102 config("libresolv") {
102 libs = [ "resolv" ] 103 libs = [ "resolv" ]
103 } 104 }
104 105
105 pkg_config("gconf") { 106 pkg_config("gconf") {
106 packages = [ "gconf-2.0" ] 107 packages = [ "gconf-2.0" ]
107 defines = [ "USE_GCONF" ] 108 defines = [ "USE_GCONF" ]
108 } 109 }
109 110
110 # name: Name to use for the value of the --name arg.
111 # output_h/output_cc: Names for the generated header/cc file with no dir.
112 # header: header file to process. Example: "<foo/bar.h>"
113 # functions: List of strings for functions to process.
114 # config: Label of the config generated by pkgconfig.
115 template("generate_library_loader") {
116 output_h = "$root_gen_dir/library_loaders/" + invoker.output_h
117 output_cc = "$root_gen_dir/library_loaders/" + invoker.output_cc
118
119 action_visibility = ":$target_name"
120 action("${target_name}_loader") {
121 visibility = action_visibility
122
123 script = "//tools/generate_library_loader/generate_library_loader.py"
124 if (defined(invoker.visibility)) {
125 visibility = invoker.visibility
126 }
127
128 outputs = [ output_h, output_cc ]
129
130 args = [
131 "--name", invoker.name,
132 "--output-h", rebase_path(output_h),
133 "--output-cc", rebase_path(output_cc),
134 "--header", invoker.header,
135 # Note GYP build exposes a per-target variable to control this, which, if
136 # manually set to true, will disable dlopen(). Its not clear this is
137 # needed, so here we just leave off. If this can be done globally, we
138 # can expose one switch for this value, otherwise we need to add a templat e
139 # param for this.
140 "--link-directly=0",
141 ] + invoker.functions
142 }
143
144 source_set(target_name) {
145 direct_dependent_configs = [ invoker.config ]
146 sources = [ output_h, output_cc ]
147 deps = [ ":${target_name}_loader" ]
148 }
149 }
150
151 pkg_config("gio_config") { 111 pkg_config("gio_config") {
152 packages = [ "gio-2.0" ] 112 packages = [ "gio-2.0" ]
153 defines = [ "USE_GIO" ] 113 defines = [ "USE_GIO" ]
154 ignore_libs = true # Loader generated below. 114 ignore_libs = true # Loader generated below.
155 } 115 }
156 116
157 # This generates a target named "gio". 117 # This generates a target named "gio".
158 generate_library_loader("gio") { 118 generate_library_loader("gio") {
159 name = "LibGioLoader" 119 name = "LibGioLoader"
160 output_h = "libgio.h" 120 output_h = "libgio.h"
161 output_cc = "libgio_loader.cc" 121 output_cc = "libgio_loader.cc"
162 header = "<gio/gio.h>" 122 header = "<gio/gio.h>"
163 config = ":gio_config" 123 config = ":gio_config"
164 124
165 functions = [ 125 functions = [
166 "g_settings_new", 126 "g_settings_new",
167 "g_settings_get_child", 127 "g_settings_get_child",
168 "g_settings_get_string", 128 "g_settings_get_string",
169 "g_settings_get_boolean", 129 "g_settings_get_boolean",
170 "g_settings_get_int", 130 "g_settings_get_int",
171 "g_settings_get_strv", 131 "g_settings_get_strv",
172 "g_settings_list_schemas", 132 "g_settings_list_schemas",
173 ] 133 ]
174 } 134 }
175 135
176 # pkgconfig doesn't return anything interesting for this other than -lpci
177 # on suppotred systems, so we hardcode.
178 config("libpci_config") {
179 # This is not needed as long as we're setting link_directly=0 for the library
180 # loaders.
181 #libs = [ "pci" ]
182 }
183
184 # This generates a target named "libpci". 136 # This generates a target named "libpci".
185 generate_library_loader("libpci") { 137 generate_library_loader("libpci") {
186 name = "LibPciLoader" 138 name = "LibPciLoader"
187 output_h = "libpci.h" 139 output_h = "libpci.h"
188 output_cc = "libpci_loader.cc" 140 output_cc = "libpci_loader.cc"
189 header = "<pci/pci.h>" 141 header = "<pci/pci.h>"
190 config = ":libpci_config"
191 142
192 functions = [ 143 functions = [
193 "pci_alloc", 144 "pci_alloc",
194 "pci_init", 145 "pci_init",
195 "pci_cleanup", 146 "pci_cleanup",
196 "pci_scan_bus", 147 "pci_scan_bus",
197 "pci_fill_info", 148 "pci_fill_info",
198 "pci_lookup_name", 149 "pci_lookup_name",
199 ] 150 ]
200 } 151 }
152
153 generate_library_loader("libspeechd") {
154 name = "LibSpeechdLoader"
155 output_h = "libspeechd.h"
156 output_cc = "libspeechd.cc"
157 header = "<libspeechd.h>"
158 bundled_header = "\"third_party/speech-dispatcher/libspeechd.h\""
159
160 functions = [
161 "spd_open",
162 "spd_say",
163 "spd_stop",
164 "spd_close",
165 "spd_pause",
166 "spd_resume",
167 "spd_set_notification_on",
168 "spd_set_voice_rate",
169 "spd_set_voice_pitch",
170 "spd_list_synthesis_voices",
171 "spd_set_synthesis_voice",
172 "spd_list_modules",
173 "spd_set_output_module",
174 ]
175 }
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | build/secondary/third_party/cacheinvalidation/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698