author | Giulio Cesare Solaroli <giulio.cesare@clipperz.com> | 2013-04-17 15:45:39 (UTC) |
---|---|---|
committer | Giulio Cesare Solaroli <giulio.cesare@clipperz.com> | 2013-04-17 15:45:39 (UTC) |
commit | 48c9280c9a255f2a85ad5729830df884e64a9c5d (patch) (unidiff) | |
tree | 14787438153cdc0b4b445c66f046bccf3dd99ee2 /scripts/builder/main.py | |
parent | 4ce8041b11afc7f02c678565e0e96e59a5a557b6 (diff) | |
download | clipperz-48c9280c9a255f2a85ad5729830df884e64a9c5d.zip clipperz-48c9280c9a255f2a85ad5729830df884e64a9c5d.tar.gz clipperz-48c9280c9a255f2a85ad5729830df884e64a9c5d.tar.bz2 |
Updated build script to handle 'checksum' target
The build script can now be invoked, for example, with the following options:
> ./scripts/build checksum --frontend beta gamma
-rwxr-xr-x | scripts/builder/main.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/scripts/builder/main.py b/scripts/builder/main.py index b9fe04a..ecdbf6a 100755 --- a/scripts/builder/main.py +++ b/scripts/builder/main.py | |||
@@ -131,61 +131,66 @@ def usage (message): | |||
131 | print "build install debug --backends php python --frontends beta gamma" | 131 | print "build install debug --backends php python --frontends beta gamma" |
132 | print "build install debug development --backends php python --frontends beta gamma gamma.mobile" | 132 | print "build install debug development --backends php python --frontends beta gamma gamma.mobile" |
133 | exit(1) | 133 | exit(1) |
134 | 134 | ||
135 | #-------------------------------------------------------------------- | 135 | #-------------------------------------------------------------------- |
136 | 136 | ||
137 | def allFrontends (): | 137 | def allFrontends (): |
138 | return ['beta', 'gamma', 'gamma.mobile'] | 138 | return ['beta', 'gamma', 'gamma.mobile'] |
139 | 139 | ||
140 | def allBackends (): | 140 | def allBackends (): |
141 | return ['php', 'python'] | 141 | return ['php', 'python'] |
142 | 142 | ||
143 | #-------------------------------------------------------------------- | 143 | #-------------------------------------------------------------------- |
144 | 144 | ||
145 | def main (): | 145 | def main (): |
146 | settings = {} | 146 | settings = {} |
147 | parameters = list(itertools.islice(sys.argv, 1, None)) | 147 | parameters = list(itertools.islice(sys.argv, 1, None)) |
148 | 148 | ||
149 | sys.path.append(os.path.join(scriptDir(), 'backends')) | 149 | sys.path.append(os.path.join(scriptDir(), 'backends')) |
150 | sys.path.append(os.path.join(scriptDir(), 'frontends')) | 150 | sys.path.append(os.path.join(scriptDir(), 'frontends')) |
151 | currentRepository = repository.repositoryWithPath(projectBaseDir()) | 151 | currentRepository = repository.repositoryWithPath(projectBaseDir()) |
152 | 152 | ||
153 | clean() | 153 | clean() |
154 | versions = list(itertools.takewhile(lambda x: not x.startswith('--'), parameters)) | 154 | versions = list(itertools.takewhile(lambda x: not x.startswith('--'), parameters)) |
155 | settings['versions'] = versions; #['debug', 'install', 'development'] | 155 | settings['versions'] = versions; #['debug', 'install', 'development', 'checksum'] |
156 | parameters = deque(itertools.dropwhile(lambda x: not x.startswith('--'), parameters)) | 156 | parameters = deque(itertools.dropwhile(lambda x: not x.startswith('--'), parameters)) |
157 | 157 | ||
158 | if len(parameters) > 0: | 158 | if len(parameters) > 0: |
159 | parameter = parameters.popleft() | 159 | parameter = parameters.popleft() |
160 | if parameter == "--ALL": | 160 | if parameter == "--ALL": |
161 | settings['frontends'] = allFrontends() | 161 | settings['frontends'] = allFrontends() |
162 | settings['backends'] = allBackends() | 162 | settings['backends'] = allBackends() |
163 | else: | 163 | else: |
164 | while parameter != None: | 164 | while parameter != None: |
165 | values = list(itertools.takewhile(lambda x: not x.startswith('--'), parameters)) | 165 | values = list(itertools.takewhile(lambda x: not x.startswith('--'), parameters)) |
166 | 166 | ||
167 | if parameter == "--backends": | 167 | if parameter == "--backends": |
168 | settings['backends'] = values | 168 | settings['backends'] = values |
169 | elif parameter == "--frontends": | 169 | elif parameter == "--frontends": |
170 | settings['frontends'] = values | 170 | settings['frontends'] = values |
171 | 171 | ||
172 | parameters = deque(itertools.dropwhile(lambda x: not x.startswith('--'), parameters)) | 172 | parameters = deque(itertools.dropwhile(lambda x: not x.startswith('--'), parameters)) |
173 | if parameters: | 173 | if parameters: |
174 | parameter = parameters.popleft() | 174 | parameter = parameters.popleft() |
175 | else: | 175 | else: |
176 | parameter = None | 176 | parameter = None |
177 | 177 | ||
178 | if 'checksum' in settings['versions']: | ||
179 | if not 'backends' in settings: | ||
180 | settings['backends'] = [] | ||
181 | settings['backends'].append('checksum') | ||
182 | |||
178 | if (not settings.has_key('versions')): | 183 | if (not settings.has_key('versions')): |
179 | usage("missing 'versions'") | 184 | usage("missing 'versions'") |
180 | if (not settings.has_key('frontends')): | 185 | if (not settings.has_key('frontends')): |
181 | usage("missing 'frontends'") | 186 | usage("missing 'frontends'") |
182 | if (not settings.has_key('backends')): | 187 | if (not settings.has_key('backends')): |
183 | usage("missing 'backends'") | 188 | usage("missing 'backends'") |
184 | 189 | ||
185 | build(settings, currentRepository) | 190 | build(settings, currentRepository) |
186 | else: | 191 | else: |
187 | usage("Suggestions on how to call the 'build' script:") | 192 | usage("Suggestions on how to call the 'build' script:") |
188 | 193 | ||
189 | 194 | ||
190 | if __name__ == "__main__": | 195 | if __name__ == "__main__": |
191 | main() | 196 | main() |