@@ -127,6 +127,18 @@ def onerror(func, path, exc_info):
127127parser .add_option ('--minimal-distrib-only' ,
128128 action = 'store_true' , dest = 'minimaldistribonly' , default = False ,
129129 help = 'create a minimal CEF binary distribution only' )
130+ parser .add_option ('--client-distrib' ,
131+ action = 'store_true' , dest = 'clientdistrib' , default = False ,
132+ help = 'create a client CEF binary distribution' )
133+ parser .add_option ('--client-distrib-only' ,
134+ action = 'store_true' , dest = 'clientdistribonly' , default = False ,
135+ help = 'create a client CEF binary distribution only' )
136+ parser .add_option ('--no-distrib-docs' ,
137+ action = 'store_true' , dest = 'nodistribdocs' , default = False ,
138+ help = "don't create CEF documentation" )
139+ parser .add_option ('--no-distrib-archive' ,
140+ action = 'store_true' , dest = 'nodistribarchive' , default = False ,
141+ help = "don't create archives for output directories" )
130142parser .add_option ('--ninja-build' ,
131143 action = 'store_true' , dest = 'ninjabuild' , default = False ,
132144 help = "build using ninja" )
@@ -140,7 +152,9 @@ def onerror(func, path, exc_info):
140152 parser .print_help (sys .stderr )
141153 sys .exit ()
142154
143- if options .noreleasebuild and (options .minimaldistrib or options .minimaldistribonly ):
155+ if (options .noreleasebuild and (options .minimaldistrib or options .minimaldistribonly or \
156+ options .clientdistrib or options .clientdistribonly )) or \
157+ (options .minimaldistribonly and options .clientdistribonly ):
144158 print 'Invalid combination of options'
145159 parser .print_help (sys .stderr )
146160 sys .exit ()
@@ -424,22 +438,43 @@ def onerror(func, path, exc_info):
424438 run (path + ' Release' , cef_tools_dir , depot_tools_dir )
425439
426440if (any_changed or options .forcedistrib ) and not options .nodistrib :
427- # make a CEF binary distribution
428- make_minimal = options .minimaldistrib or options .minimaldistribonly
429- path = os .path .join (cef_tools_dir , 'make_distrib' + script_ext )
430- if options .ninjabuild :
431- path = path + ' --ninja-build'
432- if options .nodebugbuild or options .noreleasebuild or make_minimal :
433- path = path + ' --allow-partial'
434-
435- if not options .minimaldistribonly :
436- # create the full distribution
437- run (path , cef_tools_dir , depot_tools_dir )
438-
439- if make_minimal :
440- # create the minimial distribution
441- path = path + ' --minimal'
442- if not options .minimaldistribonly :
443- # don't create the symbol archive twice
444- path = path + ' --no-symbols'
441+ # determine the requested distribution types
442+ distrib_types = []
443+ if options .minimaldistribonly :
444+ distrib_types .append ('minimal' )
445+ elif options .clientdistribonly :
446+ distrib_types .append ('client' )
447+ else :
448+ distrib_types .append ('standard' )
449+ if options .minimaldistrib :
450+ distrib_types .append ('minimal' )
451+ if options .clientdistrib :
452+ distrib_types .append ('client' )
453+
454+ first_type = True
455+
456+ # create the requested distribution types
457+ for type in distrib_types :
458+ path = os .path .join (cef_tools_dir , 'make_distrib' + script_ext )
459+ if options .nodebugbuild or options .noreleasebuild or type != 'standard' :
460+ path = path + ' --allow-partial'
461+ if options .ninjabuild :
462+ path = path + ' --ninja-build'
463+
464+ if type == 'minimal' :
465+ path = path + ' --minimal'
466+ elif type == 'client' :
467+ path = path + ' --client'
468+
469+ if first_type :
470+ if options .nodistribdocs :
471+ path = path + ' --no-docs'
472+ if options .nodistribarchive :
473+ path = path + ' --no-archive'
474+ first_type = False
475+ else :
476+ # don't create the symbol archives or documentation more than once
477+ path = path + ' --no-symbols --no-docs'
478+
479+ # create the distribution
445480 run (path , cef_tools_dir , depot_tools_dir )
0 commit comments