forked from cztomczak/cefpython
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathautomate-git.py.patch
More file actions
128 lines (127 loc) · 6.06 KB
/
automate-git.py.patch
File metadata and controls
128 lines (127 loc) · 6.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
diff --git automate-git.py automate-git.py
index d5e75ae..9b3db23 100644
--- automate-git.py
+++ automate-git.py
@@ -1,3 +1,92 @@
+""" See automate.py. This script is for internal usage only, don't
+call it directly. This is a modified copy of automate-git.py from
+upstream CEF.
+
+Some modifications were applied for CEF Python specific use case.
+There is a patch file with the same name as this script that contains
+differences from the original file.
+
+-------------------------------------------------------------------------------
+
+Usage: automate-git.py [options]
+
+ This utility implements automation for the download, update, build and
+distribution of CEF.
+
+Options:
+ -h, --help show this help message and exit
+ --download-dir=DIR Download directory with no spaces [required].
+ --depot-tools-dir=DIR
+ Download directory for depot_tools.
+ --depot-tools-archive=DEPOTTOOLSARCHIVE
+ Zip archive file that contains a single top-level
+ depot_tools directory.
+ --branch=BRANCH Branch of CEF to build (trunk, 1916, ...). This will
+ be used to name the CEF download directory and to
+ identify the correct URL if --url is not specified.
+ The default value is trunk.
+ --url=URL CEF download URL. If not specified the default URL
+ will be used.
+ --chromium-url=CHROMIUMURL
+ Chromium download URL. If not specified the default
+ URL will be used.
+ --checkout=CHECKOUT Version of CEF to checkout. If not specified the most
+ recent remote version of the branch will be used.
+ --chromium-checkout=CHROMIUMCHECKOUT
+ Version of Chromium to checkout (Git branch/hash/tag).
+ This overrides the value specified by CEF in
+ CHROMIUM_BUILD_COMPATIBILITY.txt.
+ --force-config Force creation of a new gclient config file.
+ --force-clean Force a clean checkout of Chromium and CEF. This will
+ trigger a new update, build and distribution.
+ --force-clean-deps Force a clean checkout of Chromium dependencies. Used
+ in combination with --force-clean.
+ --dry-run Output commands without executing them.
+ --dry-run-platform=DRYRUNPLATFORM
+ Simulate a dry run on the specified platform (windows,
+ macosx, linux). Must be used in combination with the
+ --dry-run flag.
+ --force-update Force a Chromium and CEF update. This will trigger a
+ new build and distribution.
+ --no-update Do not update Chromium or CEF. Pass --force-build or
+ --force-distrib if you desire a new build or
+ distribution.
+ --no-cef-update Do not update CEF. Pass --force-build or --force-
+ distrib if you desire a new build or distribution.
+ --no-chromium-update Do not update Chromium.
+ --no-depot-tools-update
+ Do not update depot_tools.
+ --force-build Force CEF debug and release builds. This builds
+ [build-target] on all platforms and chrome_sandbox on
+ Linux.
+ --no-build Do not build CEF.
+ --build-target=BUILDTARGET
+ Target name(s) to build (defaults to "cefclient").
+ --build-tests Also build the cef_unittests target.
+ --no-debug-build Don't perform the CEF debug build.
+ --no-release-build Don't perform the CEF release build.
+ --verbose-build Show all command lines while building.
+ --build-log-file Write build logs to file. The file will be named
+ "build-[branch]-[debug|release].log" in the download
+ directory.
+ --x64-build Create a 64-bit build.
+ --arm-build Create an ARM build.
+ --force-distrib Force creation of a CEF binary distribution.
+ --no-distrib Don't create a CEF binary distribution.
+ --minimal-distrib Create a minimal CEF binary distribution.
+ --minimal-distrib-only
+ Create a minimal CEF binary distribution only.
+ --client-distrib Create a client CEF binary distribution.
+ --client-distrib-only
+ Create a client CEF binary distribution only.
+ --no-distrib-docs Don't create CEF documentation.
+ --no-distrib-archive Don't create archives for output directories.
+ --clean-artifacts Clean the artifacts output directory.
+ --distrib-subdir=DISTRIBSUBDIR
+ CEF distrib dir name, child of
+ chromium/src/cef/binary_distrib
+"""
+
# Copyright (c) 2014 The Chromium Embedded Framework Authors. All rights
# reserved. Use of this source code is governed by a BSD-style license that
# can be found in the LICENSE file.
@@ -457,9 +546,14 @@ if (options.nochromiumupdate and options.forceupdate) or \
(options.nocefupdate and options.forceupdate) or \
(options.nobuild and options.forcebuild) or \
(options.nodistrib and options.forcedistrib):
- print "Invalid combination of options."
- parser.print_help(sys.stderr)
- sys.exit()
+ # -- CEF Python modification below
+ if (options.nocefupdate and options.forceupdate):
+ pass
+ else:
+ print "Invalid combination of options."
+ parser.print_help(sys.stderr)
+ sys.exit()
+ # --
if (options.noreleasebuild and \
(options.minimaldistrib or options.minimaldistribonly or \
@@ -945,6 +1039,12 @@ if not options.nobuild and (chromium_checkout_changed or \
command = 'ninja -C '
if options.verbosebuild:
command = 'ninja -v -C'
+
+ # -- CEF Python modification below
+ assert os.environ['CEFPYTHON_NINJA_JOBS']
+ command = 'ninja -v -j' + os.environ['CEFPYTHON_NINJA_JOBS'] + ' -C'
+ # --
+
target = ' ' + options.buildtarget
if options.buildtests:
target = target + ' cef_unittests'