diff options
| -rw-r--r-- | bitbake/lib/bb/cooker.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 194046ea91..6041410575 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
| @@ -44,9 +44,9 @@ buildlog = logging.getLogger("BitBake.Build") | |||
| 44 | parselog = logging.getLogger("BitBake.Parsing") | 44 | parselog = logging.getLogger("BitBake.Parsing") |
| 45 | providerlog = logging.getLogger("BitBake.Provider") | 45 | providerlog = logging.getLogger("BitBake.Provider") |
| 46 | 46 | ||
| 47 | class MultipleMatches(Exception): | 47 | class NoSpecificMatch(bb.BBHandledException): |
| 48 | """ | 48 | """ |
| 49 | Exception raised when multiple file matches are found | 49 | Exception raised when no or multiple file matches are found |
| 50 | """ | 50 | """ |
| 51 | 51 | ||
| 52 | class NothingToBuild(Exception): | 52 | class NothingToBuild(Exception): |
| @@ -979,10 +979,15 @@ class BBCooker: | |||
| 979 | """ | 979 | """ |
| 980 | matches = self.matchFiles(buildfile) | 980 | matches = self.matchFiles(buildfile) |
| 981 | if len(matches) != 1: | 981 | if len(matches) != 1: |
| 982 | parselog.error("Unable to match %s (%s matches found):" % (buildfile, len(matches))) | 982 | if matches: |
| 983 | for f in matches: | 983 | msg = "Unable to match '%s' to a specific recipe file - %s matches found:" % (buildfile, len(matches)) |
| 984 | parselog.error(" %s" % f) | 984 | if matches: |
| 985 | raise MultipleMatches | 985 | for f in matches: |
| 986 | msg += "\n %s" % f | ||
| 987 | parselog.error(msg) | ||
| 988 | else: | ||
| 989 | parselog.error("Unable to find any recipe file matching '%s'" % buildfile) | ||
| 990 | raise NoSpecificMatch | ||
| 986 | return matches[0] | 991 | return matches[0] |
| 987 | 992 | ||
| 988 | def buildFile(self, buildfile, task): | 993 | def buildFile(self, buildfile, task): |
