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

Side by Side Diff: third_party/yasm/yasm_assemble.gni

Issue 535613002: GN: Build libvpx (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merged Created 6 years, 3 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 | « media/media_options.gni ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 # This provides the yasm_assemble() template which uses YASM to assemble 5 # This provides the yasm_assemble() template which uses YASM to assemble
6 # assembly files. 6 # assembly files.
7 # 7 #
8 # Files to be assembled with YASM should have an extension of .asm. 8 # Files to be assembled with YASM should have an extension of .asm.
9 # 9 #
10 # Parameters 10 # Parameters
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 "-m", "x86", 74 "-m", "x86",
75 ] 75 ]
76 } else if (cpu_arch == "x64") { 76 } else if (cpu_arch == "x64") {
77 _yasm_flags = [ 77 _yasm_flags = [
78 "-fwin64", 78 "-fwin64",
79 "-m", "amd64", 79 "-m", "amd64",
80 ] 80 ]
81 } 81 }
82 } 82 }
83 83
84 # Default yasm include dirs. Make it match the native build (source root and
85 # root generated code directory).
86 _yasm_flags += [
87 "-I.",
piman 2014/09/18 20:14:57 This (recently added) line was lost in the merge.
88 # Using "//." will produce a relative path "../.." which looks better than
89 # "../../" which will result from using "//" as the base (although both
90 # work). This is because rebase_path will terminate the result in a slash if
91 # the input ends in a slash.
92 "-I" + rebase_path("//.", root_build_dir),
93 "-I" + rebase_path(root_gen_dir, root_build_dir),
94 ]
95
96 if (is_win) { 84 if (is_win) {
97 asm_obj_extension = "obj" 85 asm_obj_extension = "obj"
98 } else { 86 } else {
99 asm_obj_extension = "o" 87 asm_obj_extension = "o"
100 } 88 }
101 89
102 template("yasm_assemble") { 90 template("yasm_assemble") {
103 # TODO(ajwong): Support use_system_yasm. 91 # TODO(ajwong): Support use_system_yasm.
104 assert(defined(invoker.sources), "Need sources defined for $target_name") 92 assert(defined(invoker.sources), "Need sources defined for $target_name")
105 93
(...skipping 29 matching lines...) Expand all
135 if (defined(invoker.deps)) { 123 if (defined(invoker.deps)) {
136 deps += invoker.deps 124 deps += invoker.deps
137 } 125 }
138 126
139 # Flags. 127 # Flags.
140 args += _yasm_flags 128 args += _yasm_flags
141 if (defined(invoker.yasm_flags)) { 129 if (defined(invoker.yasm_flags)) {
142 args += invoker.yasm_flags 130 args += invoker.yasm_flags
143 } 131 }
144 132
145 # Extra include directories. 133 # User defined include dirs go first.
146 if (defined(invoker.include_dirs)) { 134 if (defined(invoker.include_dirs)) {
147 foreach(include, invoker.include_dirs) { 135 foreach(include, invoker.include_dirs) {
148 args += [ "-I" + rebase_path(include, root_build_dir) ] 136 args += [ "-I" + rebase_path(include, root_build_dir) ]
149 } 137 }
150 } 138 }
151 139
140 # Default yasm include dirs. Make it match the native build (source root and
141 # root generated code directory).
142 # This goes to the end of include list.
143 args += [
144 # Using "//." will produce a relative path "../.." which looks better than
145 # "../../" which will result from using "//" as the base (although both
146 # work). This is because rebase_path will terminate the result in a
147 # slash if the input ends in a slash.
148 "-I" + rebase_path("//.", root_build_dir),
149 "-I" + rebase_path(root_gen_dir, root_build_dir),
150 ]
151
152
152 # Extra defines. 153 # Extra defines.
153 if (defined(invoker.defines)) { 154 if (defined(invoker.defines)) {
154 foreach(def, invoker.defines) { 155 foreach(def, invoker.defines) {
155 args += [ "-D$def" ] 156 args += [ "-D$def" ]
156 } 157 }
157 } 158 }
158 159
159 # Output file. 160 # Output file.
160 # 161 #
161 # TODO(brettw) it might be nice if there was a source expansion for the 162 # TODO(brettw) it might be nice if there was a source expansion for the
(...skipping 18 matching lines...) Expand all
180 source_set(source_set_name) { 181 source_set(source_set_name) {
181 if (defined(invoker.visibility)) { 182 if (defined(invoker.visibility)) {
182 visibility = invoker.visibility 183 visibility = invoker.visibility
183 } 184 }
184 185
185 sources = get_target_outputs(":$action_name") 186 sources = get_target_outputs(":$action_name")
186 187
187 deps = [ ":$action_name" ] 188 deps = [ ":$action_name" ]
188 } 189 }
189 } 190 }
OLDNEW
« no previous file with comments | « media/media_options.gni ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698