Gentoo Archives: gentoo-pms

From: Ciaran McCreesh <ciaran.mccreesh@××××××××××.com>
To: Christian Faulhammer <fauli@g.o>
Cc: gentoo-pms@l.g.o
Subject: Re: [gentoo-pms] Patches for your reviewing pleasure: Various improvements, including cheat sheet
Date: Tue, 14 Apr 2009 14:47:08
Message-Id: 20090414154657.37fb5ad8@snowcone
In Reply to: Re: [gentoo-pms] Patches for your reviewing pleasure: Various improvements, including cheat sheet by Christian Faulhammer
1 On Tue, 14 Apr 2009 15:55:43 +0200
2 Christian Faulhammer <fauli@g.o> wrote:
3 > > I agree with you on the principle, but not on the numbers. It's not
4 > > worth using subdirectories until 'ls' output won't fit on one
5 > > screen.
6 >
7 > Having actually done the change, does make the thing look really
8 > good. After a make run all the .log, .aux and whatever files are also
9 > around.
10
11 Well, it's really an all or nothing thing. And all's going to be a pain
12 until we're sure we aren't going to have to go back and edit the
13 history.
14
15 > 0001: Desk reference, updated and all issues you raised handled.
16
17 You're indenting with two spaces rather than four, and don't have our
18 precious vim modelines. Lack of consistency makes me cry!
19
20 > + from the same checkout as this overview.
21
22 has trailing whitespace. Git moans about this.
23
24 > + Please report mistakes or enhancements to this document via the
25
26 should read "mistakes in or enhancements to"
27
28 > +Currently there is no full specification what EAPI 0 includes.
29 > +Portage, official ebuild documentation and existing ebuilds set the
30 > +standard here, although obvious errors are still errors.
31
32 I'm wondering whether we can tone this (and the similar wording in PMS)
33 down a bit. The Council approved PMS as "correct, except where people
34 file bugs" a while back.
35
36 > + disabled explicitely by user configuration) with a \code{+} sign in
37
38 Spelling of 'explicitly'.
39
40 > +\item[Named slot dependencies] Dependencies can explicitely request a
41
42 Ditto.
43
44 > +\item[\code{SRC\_URI} arrows] Allows redirection of upstream file
45 > + naming scheme by using an "arrow" (\code{->}) to a new file name in
46 > + DISTDIR. See \featureref{src-uri-arrows}.
47
48 Not sure on this wording. How about something like:
49
50 SRC_URI="http://some/url -> foo" can be used to use foo as the
51 filename for downloads.
52
53 > +\item[USE dependencies] Dependencies can be specified to be built with
54 > + or without a specific USE flag, thus getting rid of countless
55 > + \code{built\_with\_use} checks. A more sophisticated syntax is
56 > + available in EAPI 3.
57
58 Dependencies can specify use flag requirements on their target,
59 removing the need for built_with_use checks. A more powerful syntax
60 that does not require the flag to be in IUSE is in EAPI 3.
61
62 > + Patching and other preparing tasks must no longer take place in
63 > + \code{src\_unpack} but in \code{src\_prepare}.
64
65 Patching and similar preparation must now be done in src_prepare,
66 not src_unpack.
67
68 > + be called via \code{default\_\emph{phasename}}, so small additions
69 > + you need will not be accompanied by a complete reimplementation of
70 > + the phase. Additionally as a shorthand for the current phase's
71 > + default definition \code{default} can be invoked.
72
73 so duplicating the standard implementation is no longer necessary.
74 The default function calls the current phase's default_ function
75 automatically.
76
77 > + Duplicating checks from the \code{pkg\_setup} phase may be
78 > + necessary.
79
80 Most checks should usually be repeated in pkg_setup.
81
82 > + phase can be called even for non-installed packages. Do not depend
83 > + on any outside programs in that case! See \featureref{pkg-info}.
84
85 Be warned that dependencies might not have been installed.
86
87 > +\item[Slot operators] There are two ways to define a wanted slot in a
88 > + dependency string:
89
90 Dependencies that are both DEPEND and RDEPEND and that can match
91 multiple slots should specify one of:
92
93 > +\item[USE dependency defaults] Additionally to the features offered in
94
95 In addition to the ...
96
97 > + after a USE flag (mind the braces).
98
99 Braces are {}. You want brackets or parentheses.
100
101 > The former leads to the
102 > + assumption that the USE flag is available when not found in the
103 > + dependency, the latter leads to the reverse behaviour. This mimicks
104 > + parts of the behaviour of \code{-{}-missing} in
105
106 The former specifies that flags not in IUSE should be treated as
107 enabled; the latter, disabled. Cannot be used with USE_EXPAND flags.
108
109 > + \code{/usr/share\{doc,info,man\}} are compressed on-disk after
110
111 s/are/may be
112
113 > + With \code{docompress} all arguments are passed to the inclusion
114 > + list, while the behaviour can be inverted with the \code{-x}
115 > + switch. See \featureref{controllable-compress}.
116
117 docompress path ... adds paths to the inclusion list for
118 compression. docompress -x path ... adds paths to the exclusion
119 list.
120
121 > + files respectively in the known manner.
122
123 "in the known manner" sounds weird.
124
125 > + command given as argument will not abort the build process in case
126 > + of a failure but preserve the exit status nonetheless. See
127
128 I'd mention that commands die on error before this. And then:
129
130 will return non-zero on failure rather than aborting the build.
131
132 > +\item[USE flags in any-of] Inside of \code{||} constructs USE flag
133 > + conditionals are forbidden (with exceptions).
134
135 use? ( ) blocks are forbidden as direct children of || ( ) blocks.
136
137 > + anymore.
138
139 'anymore' as a single word is generally considered horrible.
140
141 > 0002: Some Makefile tweaking (really minor).
142
143 OK, but won't apply easily without 0001, and I'm lazy.
144
145 > 0003: Use plainurl.bst from the system.
146
147 Applied, thanks.
148
149 > 0004: Some proper using of the description environment.
150
151 Applied, thanks.
152
153 --
154 Ciaran McCreesh

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies