1 |
Sorry, I missed one of the questions, but it requires a longer answer anyway. |
2 |
|
3 |
On Tue, Nov 3, 2020 at 5:56 AM Daniel Cordero <gentoo.catalyst@××××.ws> wrote: |
4 |
> How would a target that depends on a different rel_type work? Forks in |
5 |
> the dependency tree. |
6 |
|
7 |
I haven't given that a lot of thought yet, but it's something I would |
8 |
like to have a plan for. |
9 |
|
10 |
We build 32-bit and 64-bit systemd and non-systemd stages on SPARC, as |
11 |
well as a bootable ISO. |
12 |
|
13 |
32-bit systemd: stage1 -> stage3 |
14 |
32-bit non-systemd: stage1 -> stage3 |
15 |
64-bit systemd: stage1 -> stage3 |
16 |
64-bit non-systemd: stage1 -> stage3 -> livecd-stage1 -> livecd-stage2 |
17 |
(We skip stage2) |
18 |
|
19 |
This means that we have some build chains that are entirely |
20 |
independent from one another and could actually run in parallel. E.g., |
21 |
a 32-bit build could happen at the same time a 64-bit build runs |
22 |
without any conflicts. Our SPARC system has 256 threads, so it would |
23 |
like to build in parallel if possible. |
24 |
|
25 |
Similarly, a stage1 build from one of the 32-bit build chains could |
26 |
happen in parallel with a stage3 build from the other. We wouldn't |
27 |
want to run the same type of build concurrently if they share a binary |
28 |
package cache, because we would inevitably spend CPU cycles doing |
29 |
duplicate work. E.g., the systemd stage3 build running in parallel |
30 |
with the non-systemd stage3. |
31 |
|
32 |
Whether all of those build chains should be specified in the same |
33 |
".build" file... I don't know. It seems like it could get a bit |
34 |
unwieldy. |
35 |
|
36 |
Maybe we could have a top-level ".build" file that references each of |
37 |
these build chains, described in other files? If we did that, that |
38 |
would certainly allow us to specify a different rel_type per chain. |
39 |
|
40 |
I'm not aware of cases where we'd want different rel_types in the same |
41 |
chain. Do you know of such a case? |