1 |
On Thu, 21 May 2020 13:41:18 -0700 |
2 |
Matt Turner <mattst88@g.o> wrote: |
3 |
|
4 |
> On Thu, May 21, 2020 at 10:34 AM Daniel Cordero |
5 |
> <gentoo.catalyst@××××.ws> wrote: |
6 |
> > |
7 |
> > From: Daniel Cordero <catalyst@××××.io> |
8 |
> > |
9 |
> > dir_setup() doesn't exist, bootloader() exists but requires specific |
10 |
> > tools to be installed in the seed stage and doesn't check that they |
11 |
> > are, causing the build to fail. |
12 |
> > --- |
13 |
> > If I have misconstrued the purpose of bootloader, then documentation |
14 |
> > needs to be written. |
15 |
> |
16 |
> I don't actually see any documentation about |
17 |
> > catalyst/targets/embedded.py | 2 -- |
18 |
> > 1 file changed, 2 deletions(-) |
19 |
> > |
20 |
> > diff --git a/catalyst/targets/embedded.py |
21 |
> > b/catalyst/targets/embedded.py index aa23f5b3..1b4ad9d6 100644 |
22 |
> > --- a/catalyst/targets/embedded.py |
23 |
> > +++ b/catalyst/targets/embedded.py |
24 |
> > @@ -41,7 +41,6 @@ class embedded(StageBase): |
25 |
> > |
26 |
> > def set_action_sequence(self): |
27 |
> > self.settings['action_sequence'] = [ |
28 |
> > - "dir_setup", |
29 |
> |
30 |
> Nice. This function was removed in 2005, so the embedded target has |
31 |
> been broken ever since. That certainly answers my question as to |
32 |
> whether anyone uses it. |
33 |
> |
34 |
> Fixes: 1dafb5fa06d2 (Add locking support. ...) |
35 |
> |
36 |
> So, you must use the embedded target. Could you tell me how you use |
37 |
> it, for what device, etc? |
38 |
> |
39 |
> > "unpack", |
40 |
> > "config_profile_link", |
41 |
> > "setup_confdir", |
42 |
> > @@ -51,7 +50,6 @@ class embedded(StageBase): |
43 |
> > "setup_environment", |
44 |
> > "build_kernel", |
45 |
> > "build_packages", |
46 |
> > - "bootloader", |
47 |
> |
48 |
> It's not obvious to me what specific tools this requires to be |
49 |
> installed in the seed stage. Presumably you're referring to this? |
50 |
> |
51 |
> cmd([self.settings['controller_file'], 'bootloader', |
52 |
> self.settings['target_path'].rstrip('/')] |
53 |
> |
54 |
> which eventually runs bootloader-setup.sh. |
55 |
> |
56 |
> I'd assume it's generally sensible to install a bootloader in the |
57 |
> embedded target, and I don't think we have mechanism for customizing |
58 |
> the action_sequence, so if we remove bootloader from the list then I |
59 |
> think the python bootloader() function is just dead code, isn't it? I |
60 |
> doubt that's the end result we want. |
61 |
> |
62 |
|
63 |
|
64 |
No, if you notice, this is removing the bootloader action sequence only |
65 |
for the embedded target. Each target subclasses stagebase, so can |
66 |
override what is defined in stagebase as needed. Customizing the |
67 |
action_sequence is something that pretty much all the targets do. |