equal
deleted
inserted
replaced
446 |
446 |
447 When operated from the command-line there is a single Raptor object |
447 When operated from the command-line there is a single Raptor object |
448 created by the Main function. When operated by an IDE several Raptor |
448 created by the Main function. When operated by an IDE several Raptor |
449 objects may be created and operated at the same time.""" |
449 objects may be created and operated at the same time.""" |
450 |
450 |
451 |
451 # mission enumeration |
452 M_BUILD = 1 |
452 M_BUILD = 1 |
453 M_VERSION = 2 |
453 M_QUERY = 2 |
|
454 M_VERSION = 3 |
454 |
455 |
455 def __init__(self, home = None): |
456 def __init__(self, home = None): |
456 |
457 |
457 self.DefaultSetUp(home) |
458 self.DefaultSetUp(home) |
458 |
459 |
518 self.doExport = True |
519 self.doExport = True |
519 self.noBuild = False |
520 self.noBuild = False |
520 self.noDependInclude = False |
521 self.noDependInclude = False |
521 self.noDependGenerate = False |
522 self.noDependGenerate = False |
522 self.projects = set() |
523 self.projects = set() |
523 |
524 self.queries = [] |
|
525 |
524 self.cache = raptor_cache.Cache(self) |
526 self.cache = raptor_cache.Cache(self) |
525 self.override = {env: str(self.home)} |
527 self.override = {env: str(self.home)} |
526 self.targets = [] |
528 self.targets = [] |
527 self.defaultTargets = [] |
529 self.defaultTargets = [] |
528 |
530 |
715 |
717 |
716 def AddProject(self, projectName): |
718 def AddProject(self, projectName): |
717 self.projects.add(projectName.lower()) |
719 self.projects.add(projectName.lower()) |
718 return True |
720 return True |
719 |
721 |
|
722 def AddQuery(self, q): |
|
723 self.queries.append(q) |
|
724 self.mission = Raptor.M_QUERY |
|
725 return True |
|
726 |
720 def FilterList(self, value): |
727 def FilterList(self, value): |
721 self.filterList = value |
728 self.filterList = value |
722 return True |
729 return True |
723 |
730 |
724 def IgnoreOsDetection(self, value): |
731 def IgnoreOsDetection(self, value): |
1217 newcg.add(c) |
1224 newcg.add(c) |
1218 layers = [newcg] |
1225 layers = [newcg] |
1219 |
1226 |
1220 return layers |
1227 return layers |
1221 |
1228 |
|
1229 def Query(self): |
|
1230 "process command-line queries." |
|
1231 |
|
1232 if self.mission != Raptor.M_QUERY: |
|
1233 return 0 |
|
1234 |
|
1235 # establish an object cache based on the current settings |
|
1236 self.LoadCache() |
|
1237 |
|
1238 # our "self" is a valid object for initialising an API Context |
|
1239 import raptor_api |
|
1240 api = raptor_api.Context(self) |
|
1241 |
|
1242 print "<sbs version='%s'>" % raptor_version.fullversion() |
|
1243 |
|
1244 for q in self.queries: |
|
1245 try: |
|
1246 print api.StringQuery(q) |
|
1247 |
|
1248 except Exception, e: |
|
1249 self.Error("exception '%s' with query '%s'", str(e), q) |
|
1250 |
|
1251 print "</sbs>" |
|
1252 return self.errorCode |
|
1253 |
1222 def Build(self): |
1254 def Build(self): |
1223 |
1255 |
1224 if self.mission != Raptor.M_BUILD: # help or version requested instead. |
1256 if self.mission != Raptor.M_BUILD: # help or version requested instead. |
1225 return 0 |
1257 return 0 |
1226 |
1258 |
1354 DisplayBanner() |
1386 DisplayBanner() |
1355 |
1387 |
1356 # object which represents a build |
1388 # object which represents a build |
1357 b = Raptor.CreateCommandlineBuild(argv) |
1389 b = Raptor.CreateCommandlineBuild(argv) |
1358 |
1390 |
|
1391 if b.mission == Raptor.M_QUERY: |
|
1392 return b.Query() |
|
1393 |
1359 return b.Build() |
1394 return b.Build() |
1360 |
1395 |
1361 |
1396 |
1362 def DisplayBanner(): |
1397 def DisplayBanner(): |
1363 """Stuff that needs printing out for every command.""" |
1398 """Stuff that needs printing out for every command.""" |