1 |
Carsten Lohrke <carlo@g.o> posted |
2 |
200809141621.11069.carlo@g.o, excerpted below, on Sun, 14 Sep 2008 |
3 |
16:21:03 +0200: |
4 |
|
5 |
> What I do strongly oppose is changing the meaning of the '!' symbol, as |
6 |
> blockers, which should remain real blockers will not be adjusted by us, |
7 |
> when changing an ebuild to EAPI 2++ in every case, since we're humans |
8 |
> after all. So, if you implement this, keep '!' as is and find another |
9 |
> symbol for these "soft" blockers. |
10 |
|
11 |
I had wondered about that, but since no devs were bringing it up, I |
12 |
thought it must not be as big a deal as I had thought. Now one has. |
13 |
|
14 |
>> ~ * A new src_prepare phase function is called after src_unpack. |
15 |
>> |
16 |
>> ~ * The old src_compile phase function is split into separate ~ |
17 |
>> src_configure and src_compile fuctions. |
18 |
> |
19 |
> All I do see is more complexity, but no real benefit. |
20 |
|
21 |
This is from a user's perspective, but there's a significant benefit to |
22 |
people with poor hardware. |
23 |
|
24 |
I began my Gentoo journey with memory that only marginally supported the |
25 |
bandwidth it was rated for and had to live with the related crashes, |
26 |
reboots, and restart-the-emerges. As such, I quickly learned the |
27 |
benefits of ccache and ebuid's step-by-step process. I sure could have |
28 |
used a separate configure step at that point! |
29 |
|
30 |
With configure separate, it wouldn't have had to be redone each time I |
31 |
crashed and had to restart. I could and often did re-issue the half |
32 |
completed make commands by hand, letting the package's own build system |
33 |
pick up where it left off, but that didn't fill in the blanks in |
34 |
portage's package data, and I had to reissue the ebuild compile command |
35 |
to do so. Only compile meant reconfigure too, which of course touched |
36 |
the various makefiles, forcing a recompile of the whole thing again -- |
37 |
and another chance at a crash while doing so. If configure had been a |
38 |
separate stage, all those makefiles wouldn't have been touched and the |
39 |
package's build system would have seen that everything was built already, |
40 |
which would have saved me an AWFUL lot of trouble. |
41 |
|
42 |
The unpack/prepare split wouldn't have been quite as useful as that was |
43 |
generally fast and crash resistant enough I didn't have problems with it, |
44 |
but it won't hurt, and would make user modification of existing ebuilds |
45 |
slightly easier. |
46 |
|
47 |
As for the dev perspective, based on my ebuild hacking to date, I can see |
48 |
a significant benefit for the two spits there as well. That the new |
49 |
phases match natural steps in most upstream package build processes where |
50 |
Gentoo formerly merged steps makes it that much simpler to trace down |
51 |
bugs when something goes wrong. |
52 |
|
53 |
-- |
54 |
Duncan - List replies preferred. No HTML msgs. |
55 |
"Every nonfree program has a lord, a master -- |
56 |
and if you use the program, he is your master." Richard Stallman |