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

Side by Side Diff: pylib/gyp/generator/make.py

Issue 42394: Cleanup remove mac specific type 'application'... (Closed) Base URL: http://gyp.googlecode.com/svn/trunk/
Patch Set: '' Created 11 years, 9 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 | « no previous file | pylib/gyp/generator/msvs.py » ('j') | pylib/gyp/generator/xcode.py » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 2
3 # Notes: 3 # Notes:
4 # 4 #
5 # This is all roughly based on the Makefile system used by the Linux 5 # This is all roughly based on the Makefile system used by the Linux
6 # kernel. 6 # kernel.
7 # 7 #
8 # The code below generates a separate .mk file for each target, but 8 # The code below generates a separate .mk file for each target, but
9 # all are sourced by the top-level Makefile. This means that all 9 # all are sourced by the top-level Makefile. This means that all
10 # variables in .mk-files clobber one another. Be careful to use := 10 # variables in .mk-files clobber one another. Be careful to use :=
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 deps = [] 206 deps = []
207 if 'dependencies' in spec: 207 if 'dependencies' in spec:
208 deps = [libpaths[dep] for dep in spec['dependencies']] 208 deps = [libpaths[dep] for dep in spec['dependencies']]
209 libs = filter(lambda dep: dep.endswith('.a'), deps) 209 libs = filter(lambda dep: dep.endswith('.a'), deps)
210 diff = set(libs) - set(deps) 210 diff = set(libs) - set(deps)
211 if diff: 211 if diff:
212 print "Warning: filtered out", diff, "from deps list." 212 print "Warning: filtered out", diff, "from deps list."
213 deps = libs 213 deps = libs
214 214
215 # Now write the actual build rule. 215 # Now write the actual build rule.
216 if typ in ('executable', 'application'): 216 if typ == 'executable':
217 fp.write('%s: $(OBJS) %s\n' % (output, ' '.join(deps))) 217 fp.write('%s: $(OBJS) %s\n' % (output, ' '.join(deps)))
218 fp.write('\t$(call do_cmd,link)\n') 218 fp.write('\t$(call do_cmd,link)\n')
219 binpath = '$(obj)/bin/' + target 219 binpath = '$(obj)/bin/' + target
220 fp.write('%s: %s\n' % (binpath, output)) 220 fp.write('%s: %s\n' % (binpath, output))
221 fp.write('\tmkdir -p $(obj)/bin\n') 221 fp.write('\tmkdir -p $(obj)/bin\n')
222 fp.write('\tln %s %s\n' % (output, binpath)) 222 fp.write('\tln %s %s\n' % (output, binpath))
223 fp.write('# Also provide a short alias for building this executable:\n') 223 fp.write('# Also provide a short alias for building this executable:\n')
224 fp.write('%s: %s\n' % (target, binpath)) 224 fp.write('%s: %s\n' % (target, binpath))
225 elif typ == 'static_library': 225 elif typ == 'static_library':
226 fp.write('%s: $(OBJS) %s\n' % (output, ' '.join(deps))) 226 fp.write('%s: $(OBJS) %s\n' % (output, ' '.join(deps)))
(...skipping 25 matching lines...) Expand all
252 # Hack around SCons-specific gyp file. 252 # Hack around SCons-specific gyp file.
253 out = out.replace('../grit_derived_sources', '$(out)/gen') 253 out = out.replace('../grit_derived_sources', '$(out)/gen')
254 fp.write('%s: %s\n' % (out, name)) 254 fp.write('%s: %s\n' % (out, name))
255 dirs.add(os.path.split(out)[0]) 255 dirs.add(os.path.split(out)[0])
256 # Make the phony target depend on the inputs and generate the outputs. 256 # Make the phony target depend on the inputs and generate the outputs.
257 fp.write('%s: %s\n' % (name, ' '.join(inputs))) 257 fp.write('%s: %s\n' % (name, ' '.join(inputs)))
258 if len(dirs) > 0: 258 if len(dirs) > 0:
259 fp.write('\tmkdir -p %s\n' % ' '.join(dirs)) 259 fp.write('\tmkdir -p %s\n' % ' '.join(dirs))
260 fp.write('\t%s\n' % ' '.join(action['action'])) 260 fp.write('\t%s\n' % ' '.join(action['action']))
261 261
262 if typ not in ('executable', 'application', 'resource', 'none', 'static_librar y'): 262 if typ not in ('executable', 'resource', 'none', 'static_library'):
263 raise "unhandled typ", typ 263 raise "unhandled typ", typ
264 264
265 fp.write('\n') 265 fp.write('\n')
266 fp.write(footer) 266 fp.write(footer)
267 fp.write('\n') 267 fp.write('\n')
268 268
269 fp.close() 269 fp.close()
270 return output 270 return output
271 271
272 def GenerateOutput(target_list, target_dicts, data, params): 272 def GenerateOutput(target_list, target_dicts, data, params):
(...skipping 12 matching lines...) Expand all
285 target + params['options'].suffix + '.mk') 285 target + params['options'].suffix + '.mk')
286 286
287 spec = target_dicts[qualified_target] 287 spec = target_dicts[qualified_target]
288 config = spec['configurations']['Debug'] 288 config = spec['configurations']['Debug']
289 output = GenerateMakefile(output_file, build_file, spec, config) 289 output = GenerateMakefile(output_file, build_file, spec, config)
290 if output: 290 if output:
291 libpaths[qualified_target] = output 291 libpaths[qualified_target] = output
292 root_makefile.write('include ' + output_file + "\n") 292 root_makefile.write('include ' + output_file + "\n")
293 293
294 root_makefile.close() 294 root_makefile.close()
OLDNEW
« no previous file with comments | « no previous file | pylib/gyp/generator/msvs.py » ('j') | pylib/gyp/generator/xcode.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698