summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbitbake/bin/bitbake-layers32
1 files changed, 31 insertions, 1 deletions
diff --git a/bitbake/bin/bitbake-layers b/bitbake/bin/bitbake-layers
index 56253f5d28..746d79ddec 100755
--- a/bitbake/bin/bitbake-layers
+++ b/bitbake/bin/bitbake-layers
@@ -76,10 +76,18 @@ class Commands(cmd.Cmd):
76 self.prepare_cooker() 76 self.prepare_cooker()
77 77
78 def do_show_layers(self, args): 78 def do_show_layers(self, args):
79 """show_layers: shows current configured layers"""
79 self.check_prepare_cooker() 80 self.check_prepare_cooker()
80 logger.info(str(self.config_data.getVar('BBLAYERS', True))) 81 logger.info(str(self.config_data.getVar('BBLAYERS', True)))
81 82
82 def do_show_overlayed(self, args): 83 def do_show_overlayed(self, args):
84 """show_overlayed: list overlayed recipes (where there is a recipe in another
85layer that has a higher layer priority)
86
87syntax: show_overlayed
88
89Highest priority recipes are listed with the recipes they overlay as subitems.
90"""
83 self.check_prepare_cooker() 91 self.check_prepare_cooker()
84 if self.cooker.overlayed: 92 if self.cooker.overlayed:
85 logger.info('Overlayed recipes:') 93 logger.info('Overlayed recipes:')
@@ -91,9 +99,25 @@ class Commands(cmd.Cmd):
91 logger.info('No overlayed recipes found') 99 logger.info('No overlayed recipes found')
92 100
93 def do_flatten(self, args): 101 def do_flatten(self, args):
102 """flatten: flattens layer configuration into a separate output directory.
103
104syntax: flatten <outputdir>
105
106Takes the current layer configuration and builds a "flattened" directory
107containing the contents of all layers, with any overlayed recipes removed
108and bbappends appended to the corresponding recipes. Note that some manual
109cleanup may still be necessary afterwards, in particular:
110
111* where non-recipe files (such as patches) are overwritten (the flatten
112 command will show a warning for these)
113* where anything beyond the normal layer setup has been added to
114 layer.conf (only the lowest priority layer's layer.conf is used)
115* overridden/appended items from bbappends will need to be tidied up
116"""
94 arglist = args.split() 117 arglist = args.split()
95 if len(arglist) != 1: 118 if len(arglist) != 1:
96 logger.error('syntax: flatten <outputdir>') 119 logger.error('Please specify an output directory')
120 self.do_help('flatten')
97 return 121 return
98 122
99 if os.path.exists(arglist[0]) and os.listdir(arglist[0]): 123 if os.path.exists(arglist[0]) and os.listdir(arglist[0]):
@@ -150,6 +174,12 @@ class Commands(cmd.Cmd):
150 recipefile.writelines(appendfile.readlines()) 174 recipefile.writelines(appendfile.readlines())
151 175
152 def do_show_appends(self, args): 176 def do_show_appends(self, args):
177 """show_appends: List bbappend files and recipe files they apply to
178
179syntax: show_appends
180
181Recipes are listed with the bbappends that apply to them as subitems.
182"""
153 self.check_prepare_cooker() 183 self.check_prepare_cooker()
154 if not self.cooker_data.appends: 184 if not self.cooker_data.appends:
155 logger.info('No append files found') 185 logger.info('No append files found')