diff --git a/synthesis/configparser.py b/synthesis/configparser.py index 784b402246cd3c1a95f502269e0e554da558b3a4..34658eb2ddce9b891e5036abe98d83b1c10a864a 100644 --- a/synthesis/configparser.py +++ b/synthesis/configparser.py @@ -173,6 +173,9 @@ class ConfigParser(object): raise RuntimeError("Config file should be added only once") + def add_arbitrary_code(self, code): + self.arbitrary_code = code + def parse(self): options = {} ret = {} diff --git a/synthesis/module.py b/synthesis/module.py index b37ba3bf38e5242b1cc753e2b5ffd00882ea620d..ff0bba5b9facb4036ef212cf39bcc967de013609 100644 --- a/synthesis/module.py +++ b/synthesis/module.py @@ -21,6 +21,7 @@ class Module(object): self.options["files"] = files if manifest != None and fetchto == None: options["fetchto"] = os.path.dirname(manifest.path) + if manifest != None and url == None and path == None: self.options["url"] = os.path.dirname(manifest.path) self.options["path"] = os.path.dirname(manifest.path) @@ -32,7 +33,7 @@ class Module(object): self.options["path"] = path self.options["url"] = url if manifest == None: - if self.options["path"] != None: + if path != None: self.options["manifest"] = self.search_for_manifest() else: self.options["manifest"] = None @@ -43,6 +44,7 @@ class Module(object): self.options["isfetched"] = True else: self.options["isfetched"] = isfetched + if source != None: if source not in ["local", "svn", "git"]: raise ValueError("Inproper source: " + source) @@ -81,9 +83,10 @@ class Module(object): """ p.vprint("Looking for manifest in " + self.path) for filename in os.listdir(self.path): - if filename == "manifest.py" and not os.path.isdir(filename): - manifest = Manifest(path=os.path.abspath(os.path.join(self.path, filename))) - return manifest + if filename == "manifest.py" or filename == "Manifest.py": + if not os.path.isdir(filename): + manifest = Manifest(path=os.path.abspath(os.path.join(self.path, filename))) + return manifest # no manifest file found return None