1 |
aidecoe 12/11/01 09:54:08 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: dracut-024-r1.ebuild dracut-023-r3.ebuild |
5 |
Log: |
6 |
Fixes bug #437700. Thanks to Alexander Tsoy <alexander@××××.me> for the |
7 |
report and the patch. |
8 |
|
9 |
Also bumped dhcp version dependency to >=4.2.4_p2-r1 wrt bug #437108. |
10 |
|
11 |
(Portage version: 2.1.11.31/cvs/Linux x86_64, signed Manifest commit with key E1DBFAB5) |
12 |
|
13 |
Revision Changes Path |
14 |
1.91 sys-kernel/dracut/ChangeLog |
15 |
|
16 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/ChangeLog?rev=1.91&view=markup |
17 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/ChangeLog?rev=1.91&content-type=text/plain |
18 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/ChangeLog?r1=1.90&r2=1.91 |
19 |
|
20 |
Index: ChangeLog |
21 |
=================================================================== |
22 |
RCS file: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v |
23 |
retrieving revision 1.90 |
24 |
retrieving revision 1.91 |
25 |
diff -u -r1.90 -r1.91 |
26 |
--- ChangeLog 28 Oct 2012 11:24:44 -0000 1.90 |
27 |
+++ ChangeLog 1 Nov 2012 09:54:08 -0000 1.91 |
28 |
@@ -1,6 +1,18 @@ |
29 |
# ChangeLog for sys-kernel/dracut |
30 |
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
31 |
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.90 2012/10/28 11:24:44 aidecoe Exp $ |
32 |
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/ChangeLog,v 1.91 2012/11/01 09:54:08 aidecoe Exp $ |
33 |
+ |
34 |
+*dracut-024-r1 (01 Nov 2012) |
35 |
+*dracut-023-r3 (01 Nov 2012) |
36 |
+ |
37 |
+ 01 Nov 2012; Amadeusz Żołnowski <aidecoe@g.o> |
38 |
+ +files/024-0001-Fallback-to-external-blkid-and-path_id.patch, |
39 |
+ +files/023-0003-Fallback-to-external-blkid-and-path_id.patch, |
40 |
+ +dracut-023-r3.ebuild, +dracut-024-r1.ebuild: |
41 |
+ Fixes bug #437700. Thanks to Alexander Tsoy <alexander@××××.me> for the |
42 |
+ report and the patch. |
43 |
+ |
44 |
+ Also bumped dhcp version dependency to >=4.2.4_p2-r1 wrt bug #437108. |
45 |
|
46 |
*dracut-024 (28 Oct 2012) |
47 |
|
48 |
|
49 |
|
50 |
|
51 |
1.1 sys-kernel/dracut/dracut-024-r1.ebuild |
52 |
|
53 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/dracut-024-r1.ebuild?rev=1.1&view=markup |
54 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/dracut-024-r1.ebuild?rev=1.1&content-type=text/plain |
55 |
|
56 |
Index: dracut-024-r1.ebuild |
57 |
=================================================================== |
58 |
# Copyright 1999-2012 Gentoo Foundation |
59 |
# Distributed under the terms of the GNU General Public License v2 |
60 |
# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/dracut-024-r1.ebuild,v 1.1 2012/11/01 09:54:08 aidecoe Exp $ |
61 |
|
62 |
EAPI=4 |
63 |
|
64 |
inherit eutils linux-info toolchain-funcs |
65 |
|
66 |
add_req_use_for() { |
67 |
local dep="$1"; shift |
68 |
local f |
69 |
|
70 |
for f in "$@"; do |
71 |
REQUIRED_USE+="${f}? ( ${dep} ) |
72 |
" |
73 |
done |
74 |
} |
75 |
|
76 |
DESCRIPTION="Generic initramfs generation tool" |
77 |
HOMEPAGE="http://dracut.wiki.kernel.org" |
78 |
SRC_URI="mirror://kernel/linux/utils/boot/${PN}/${P}.tar.bz2" |
79 |
LICENSE="GPL-2" |
80 |
SLOT="0" |
81 |
KEYWORDS="~amd64 ~x86" |
82 |
|
83 |
REQUIRED_USE="dracut_modules_crypt-gpg? ( dracut_modules_crypt ) |
84 |
dracut_modules_crypt-loop? ( dracut_modules_crypt ) |
85 |
dracut_modules_livenet? ( dracut_modules_dmsquash-live ) |
86 |
" |
87 |
COMMON_MODULES=" |
88 |
dracut_modules_biosdevname |
89 |
dracut_modules_bootchart |
90 |
dracut_modules_btrfs |
91 |
dracut_modules_caps |
92 |
dracut_modules_crypt-gpg |
93 |
dracut_modules_crypt-loop |
94 |
dracut_modules_gensplash |
95 |
dracut_modules_mdraid |
96 |
dracut_modules_multipath |
97 |
dracut_modules_plymouth |
98 |
dracut_modules_syslog |
99 |
dracut_modules_systemd |
100 |
" |
101 |
DM_MODULES=" |
102 |
dracut_modules_crypt |
103 |
dracut_modules_dmraid |
104 |
dracut_modules_dmsquash-live |
105 |
dracut_modules_livenet |
106 |
dracut_modules_lvm |
107 |
" |
108 |
NETWORK_MODULES=" |
109 |
dracut_modules_cifs |
110 |
dracut_modules_iscsi |
111 |
dracut_modules_livenet |
112 |
dracut_modules_nbd |
113 |
dracut_modules_nfs |
114 |
dracut_modules_ssh-client |
115 |
" |
116 |
add_req_use_for device-mapper ${DM_MODULES} |
117 |
add_req_use_for net ${NETWORK_MODULES} |
118 |
IUSE_DRACUT_MODULES="${COMMON_MODULES} ${DM_MODULES} ${NETWORK_MODULES}" |
119 |
IUSE="debug device-mapper optimization net selinux ${IUSE_DRACUT_MODULES}" |
120 |
|
121 |
RESTRICT="test" |
122 |
|
123 |
CDEPEND=">sys-fs/udev-166 |
124 |
dracut_modules_systemd? ( sys-apps/systemd ) |
125 |
" |
126 |
RDEPEND="${CDEPEND} |
127 |
app-arch/cpio |
128 |
>=app-shells/bash-4.0 |
129 |
>=app-shells/dash-0.5.4.11 |
130 |
>=sys-apps/baselayout-1.12.14-r1 |
131 |
|| ( >=sys-apps/module-init-tools-3.8 >sys-apps/kmod-5[tools] ) |
132 |
>=sys-apps/sysvinit-2.87-r3 |
133 |
>=sys-apps/util-linux-2.21 |
134 |
|
135 |
debug? ( dev-util/strace ) |
136 |
device-mapper? ( || ( sys-fs/device-mapper >=sys-fs/lvm2-2.02.33 ) ) |
137 |
net? ( net-misc/curl >=net-misc/dhcp-4.2.4_p2-r1[client] sys-apps/iproute2 ) |
138 |
selinux? ( sys-libs/libselinux sys-libs/libsepol ) |
139 |
dracut_modules_biosdevname? ( sys-apps/biosdevname ) |
140 |
dracut_modules_bootchart? ( app-benchmarks/bootchart2 sys-apps/usleep |
141 |
sys-process/acct ) |
142 |
dracut_modules_btrfs? ( sys-fs/btrfs-progs ) |
143 |
dracut_modules_caps? ( sys-libs/libcap ) |
144 |
dracut_modules_cifs? ( net-fs/cifs-utils ) |
145 |
dracut_modules_crypt? ( sys-fs/cryptsetup ) |
146 |
dracut_modules_crypt-gpg? ( app-crypt/gnupg ) |
147 |
dracut_modules_dmraid? ( sys-fs/dmraid sys-fs/multipath-tools ) |
148 |
dracut_modules_gensplash? ( media-gfx/splashutils ) |
149 |
dracut_modules_iscsi? ( >=sys-block/open-iscsi-2.0.871.3 ) |
150 |
dracut_modules_lvm? ( >=sys-fs/lvm2-2.02.33 ) |
151 |
dracut_modules_mdraid? ( sys-fs/mdadm ) |
152 |
dracut_modules_multipath? ( sys-fs/multipath-tools ) |
153 |
dracut_modules_nbd? ( sys-block/nbd ) |
154 |
dracut_modules_nfs? ( net-fs/nfs-utils net-nds/rpcbind ) |
155 |
dracut_modules_plymouth? ( >=sys-boot/plymouth-0.8.3-r1 ) |
156 |
dracut_modules_ssh-client? ( dev-libs/openssl ) |
157 |
dracut_modules_syslog? ( || ( app-admin/syslog-ng app-admin/rsyslog ) ) |
158 |
" |
159 |
DEPEND="${CDEPEND} |
160 |
app-text/asciidoc |
161 |
>=dev-libs/libxslt-1.1.26 |
162 |
app-text/docbook-xml-dtd:4.5 |
163 |
>=app-text/docbook-xsl-stylesheets-1.75.2 |
164 |
virtual/pkgconfig |
165 |
" |
166 |
|
167 |
# |
168 |
# Helper functions |
169 |
# |
170 |
|
171 |
# Returns true if any of specified modules is enabled by USE flag and false |
172 |
# otherwise. |
173 |
# $1 = list of modules (which have corresponding USE flags of the same name) |
174 |
any_module() { |
175 |
local m modules=" $@ " |
176 |
|
177 |
for m in ${modules}; do |
178 |
! use $m && modules=${modules/ $m / } |
179 |
done |
180 |
|
181 |
shopt -s extglob |
182 |
modules=${modules%%+( )} |
183 |
shopt -u extglob |
184 |
|
185 |
[[ ${modules} ]] |
186 |
} |
187 |
|
188 |
# Removes module from modules.d. |
189 |
# $1 = module name |
190 |
# Module name can be specified without number prefix. |
191 |
rm_module() { |
192 |
local force m |
193 |
[[ $1 = -f ]] && force=-f |
194 |
|
195 |
for m in $@; do |
196 |
if [[ $m =~ ^[0-9][0-9][^\ ]*$ ]]; then |
197 |
rm ${force} --interactive=never -r "${modules_dir}"/$m |
198 |
else |
199 |
rm ${force} --interactive=never -r "${modules_dir}"/[0-9][0-9]$m |
200 |
fi |
201 |
done |
202 |
} |
203 |
|
204 |
# |
205 |
# ebuild functions |
206 |
# |
207 |
|
208 |
src_prepare() { |
209 |
local udevdir="$($(tc-getPKG_CONFIG) udev --variable=udevdir)" |
210 |
[[ ${udevdir} ]] || die "Couldn't detect udevdir" |
211 |
einfo "Setting udevdir to ${udevdir}..." |
212 |
sed -e "s@udevdir=.*@udevdir=\"${udevdir}\"@" \ |
213 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
214 |
|
215 |
if use dracut_modules_systemd; then |
216 |
local systemdutildir="$($(tc-getPKG_CONFIG) systemd \ |
217 |
--variable=systemdutildir)" |
218 |
local systemdsystemunitdir="$($(tc-getPKG_CONFIG) systemd \ |
219 |
--variable=systemdsystemunitdir)" |
220 |
[[ ${systemdutildir} ]] || die "Couldn't detect systemdutildir" |
221 |
[[ ${systemdsystemunitdir} ]] \ |
222 |
|| die "Couldn't detect systemdsystemunitdir" |
223 |
einfo "Setting systemdutildir to ${systemdutildir} and ..." |
224 |
sed -e "4asystemdutildir=\"${systemdutildir}\"" \ |
225 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
226 |
einfo "Setting systemdsystemunitdir to ${systemdsystemunitdir}..." |
227 |
sed -e "5asystemdsystemunitdir=\"${systemdsystemunitdir}\"" \ |
228 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
229 |
fi |
230 |
} |
231 |
|
232 |
src_compile() { |
233 |
emake prefix=/usr sysconfdir=/etc DESTDIR="${D}" doc |
234 |
if use optimization; then |
235 |
ewarn "Enabling experimental optimization!" |
236 |
tc-export CC |
237 |
emake prefix=/usr sysconfdir=/etc DESTDIR="${D}" install/dracut-install |
238 |
fi |
239 |
} |
240 |
|
241 |
src_install() { |
242 |
local libdir="/usr/lib" |
243 |
|
244 |
emake prefix=/usr libdir="${libdir}" sysconfdir=/etc \ |
245 |
DESTDIR="${D}" install |
246 |
|
247 |
dodir /var/lib/dracut/overlay |
248 |
dodoc HACKING TODO AUTHORS NEWS README* |
249 |
|
250 |
insinto /etc/dracut.conf.d |
251 |
newins dracut.conf.d/gentoo.conf.example gentoo.conf |
252 |
|
253 |
insinto /etc/logrotate.d |
254 |
newins dracut.logrotate dracut |
255 |
|
256 |
dohtml dracut.html |
257 |
|
258 |
# |
259 |
# Modules |
260 |
# |
261 |
local module |
262 |
modules_dir="${D%/}/${libdir#/}/dracut/modules.d" |
263 |
|
264 |
# Remove modules not enabled by USE flags |
265 |
for module in ${IUSE_DRACUT_MODULES} ; do |
266 |
! use ${module} && rm_module -f ${module#dracut_modules_} |
267 |
done |
268 |
|
269 |
# Those flags are specific, and even are corresponding to modules, they need |
270 |
# to be declared as regular USE flags. |
271 |
use debug || rm_module 95debug |
272 |
use selinux || rm_module 98selinux |
273 |
|
274 |
# Following flags define set of helper modules which are base dependencies |
275 |
# for others and as so have no practical use, so remove these modules. |
276 |
use device-mapper || rm_module 90dm |
277 |
use net || rm_module 40network 45ifcfg 45url-lib |
278 |
|
279 |
# Remove S/390 modules which are not tested at all |
280 |
rm_module 80cms 95dasd 95dasd_mod 95zfcp 95znet |
281 |
|
282 |
# Remove modules which won't work for sure |
283 |
rm_module 95fcoe # no tools |
284 |
# fips module depends on masked app-crypt/hmaccalc |
285 |
rm_module 01fips 02fips-aesni |
286 |
|
287 |
# Remove extra modules which go to future dracut-extras |
288 |
rm_module 05busybox 97masterkey 98ecryptfs 98integrity |
289 |
} |
290 |
|
291 |
pkg_postinst() { |
292 |
if linux-info_get_any_version && linux_config_src_exists; then |
293 |
ewarn "" |
294 |
ewarn "If the following test report contains a missing kernel" |
295 |
ewarn "configuration option, you should reconfigure and rebuild your" |
296 |
ewarn "kernel before booting image generated with this Dracut version." |
297 |
ewarn "" |
298 |
|
299 |
local CONFIG_CHECK="~BLK_DEV_INITRD ~DEVTMPFS ~MODULES" |
300 |
|
301 |
# Kernel configuration options descriptions: |
302 |
local desc_DEVTMPFS="Maintain a devtmpfs filesystem to mount at /dev" |
303 |
local desc_BLK_DEV_INITRD="Initial RAM filesystem and RAM disk "\ |
304 |
"(initramfs/initrd) support" |
305 |
local desc_MODULES="Enable loadable module support" |
306 |
|
307 |
local opt desc |
308 |
|
309 |
# Generate ERROR_* variables for check_extra_config. |
310 |
for opt in ${CONFIG_CHECK}; do |
311 |
opt=${opt#\~} |
312 |
desc=desc_${opt} |
313 |
eval "local ERROR_${opt}='CONFIG_${opt}: \"${!desc}\"" \ |
314 |
"is missing and REQUIRED'" |
315 |
done |
316 |
|
317 |
check_extra_config |
318 |
echo |
319 |
else |
320 |
ewarn "" |
321 |
ewarn "Your kernel configuration couldn't be checked. Do you have" |
322 |
ewarn "/usr/src/linux/.config file there? Please check manually if" |
323 |
ewarn "following options are enabled:" |
324 |
ewarn "" |
325 |
ewarn " CONFIG_BLK_DEV_INITRD" |
326 |
ewarn " CONFIG_DEVTMPFS" |
327 |
ewarn " CONFIG_MODULES" |
328 |
ewarn "" |
329 |
fi |
330 |
} |
331 |
|
332 |
|
333 |
|
334 |
1.1 sys-kernel/dracut/dracut-023-r3.ebuild |
335 |
|
336 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/dracut-023-r3.ebuild?rev=1.1&view=markup |
337 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-kernel/dracut/dracut-023-r3.ebuild?rev=1.1&content-type=text/plain |
338 |
|
339 |
Index: dracut-023-r3.ebuild |
340 |
=================================================================== |
341 |
# Copyright 1999-2012 Gentoo Foundation |
342 |
# Distributed under the terms of the GNU General Public License v2 |
343 |
# $Header: /var/cvsroot/gentoo-x86/sys-kernel/dracut/dracut-023-r3.ebuild,v 1.1 2012/11/01 09:54:08 aidecoe Exp $ |
344 |
|
345 |
EAPI=4 |
346 |
|
347 |
inherit eutils linux-info toolchain-funcs |
348 |
|
349 |
add_req_use_for() { |
350 |
local dep="$1"; shift |
351 |
local f |
352 |
|
353 |
for f in "$@"; do |
354 |
REQUIRED_USE+="${f}? ( ${dep} ) |
355 |
" |
356 |
done |
357 |
} |
358 |
|
359 |
DESCRIPTION="Generic initramfs generation tool" |
360 |
HOMEPAGE="http://dracut.wiki.kernel.org" |
361 |
SRC_URI="mirror://kernel/linux/utils/boot/${PN}/${P}.tar.bz2" |
362 |
LICENSE="GPL-2" |
363 |
SLOT="0" |
364 |
KEYWORDS="~amd64 ~x86" |
365 |
|
366 |
REQUIRED_USE="dracut_modules_crypt-gpg? ( dracut_modules_crypt ) |
367 |
dracut_modules_crypt-loop? ( dracut_modules_crypt ) |
368 |
dracut_modules_livenet? ( dracut_modules_dmsquash-live ) |
369 |
" |
370 |
COMMON_MODULES=" |
371 |
dracut_modules_biosdevname |
372 |
dracut_modules_bootchart |
373 |
dracut_modules_btrfs |
374 |
dracut_modules_caps |
375 |
dracut_modules_crypt-gpg |
376 |
dracut_modules_crypt-loop |
377 |
dracut_modules_gensplash |
378 |
dracut_modules_mdraid |
379 |
dracut_modules_multipath |
380 |
dracut_modules_plymouth |
381 |
dracut_modules_syslog |
382 |
dracut_modules_systemd |
383 |
" |
384 |
DM_MODULES=" |
385 |
dracut_modules_crypt |
386 |
dracut_modules_dmraid |
387 |
dracut_modules_dmsquash-live |
388 |
dracut_modules_livenet |
389 |
dracut_modules_lvm |
390 |
" |
391 |
NETWORK_MODULES=" |
392 |
dracut_modules_cifs |
393 |
dracut_modules_iscsi |
394 |
dracut_modules_livenet |
395 |
dracut_modules_nbd |
396 |
dracut_modules_nfs |
397 |
dracut_modules_ssh-client |
398 |
" |
399 |
add_req_use_for device-mapper ${DM_MODULES} |
400 |
add_req_use_for net ${NETWORK_MODULES} |
401 |
IUSE_DRACUT_MODULES="${COMMON_MODULES} ${DM_MODULES} ${NETWORK_MODULES}" |
402 |
IUSE="debug device-mapper optimization net selinux ${IUSE_DRACUT_MODULES}" |
403 |
|
404 |
RESTRICT="test" |
405 |
|
406 |
CDEPEND=">sys-fs/udev-166 |
407 |
dracut_modules_systemd? ( sys-apps/systemd ) |
408 |
" |
409 |
RDEPEND="${CDEPEND} |
410 |
app-arch/cpio |
411 |
>=app-shells/bash-4.0 |
412 |
>=app-shells/dash-0.5.4.11 |
413 |
>=sys-apps/baselayout-1.12.14-r1 |
414 |
|| ( >=sys-apps/module-init-tools-3.8 >sys-apps/kmod-5[tools] ) |
415 |
>=sys-apps/sysvinit-2.87-r3 |
416 |
>=sys-apps/util-linux-2.21 |
417 |
|
418 |
debug? ( dev-util/strace ) |
419 |
device-mapper? ( || ( sys-fs/device-mapper >=sys-fs/lvm2-2.02.33 ) ) |
420 |
net? ( net-misc/curl >=net-misc/dhcp-4.2.4_p2-r1[client] sys-apps/iproute2 ) |
421 |
selinux? ( sys-libs/libselinux sys-libs/libsepol ) |
422 |
dracut_modules_biosdevname? ( sys-apps/biosdevname ) |
423 |
dracut_modules_bootchart? ( app-benchmarks/bootchart2 sys-apps/usleep |
424 |
sys-process/acct ) |
425 |
dracut_modules_btrfs? ( sys-fs/btrfs-progs ) |
426 |
dracut_modules_caps? ( sys-libs/libcap ) |
427 |
dracut_modules_cifs? ( net-fs/cifs-utils ) |
428 |
dracut_modules_crypt? ( sys-fs/cryptsetup ) |
429 |
dracut_modules_crypt-gpg? ( app-crypt/gnupg ) |
430 |
dracut_modules_dmraid? ( sys-fs/dmraid sys-fs/multipath-tools ) |
431 |
dracut_modules_gensplash? ( media-gfx/splashutils ) |
432 |
dracut_modules_iscsi? ( >=sys-block/open-iscsi-2.0.871.3 ) |
433 |
dracut_modules_lvm? ( >=sys-fs/lvm2-2.02.33 ) |
434 |
dracut_modules_mdraid? ( sys-fs/mdadm ) |
435 |
dracut_modules_multipath? ( sys-fs/multipath-tools ) |
436 |
dracut_modules_nbd? ( sys-block/nbd ) |
437 |
dracut_modules_nfs? ( net-fs/nfs-utils net-nds/rpcbind ) |
438 |
dracut_modules_plymouth? ( >=sys-boot/plymouth-0.8.3-r1 ) |
439 |
dracut_modules_ssh-client? ( dev-libs/openssl ) |
440 |
dracut_modules_syslog? ( || ( app-admin/syslog-ng app-admin/rsyslog ) ) |
441 |
" |
442 |
DEPEND="${CDEPEND} |
443 |
app-text/asciidoc |
444 |
>=dev-libs/libxslt-1.1.26 |
445 |
app-text/docbook-xml-dtd:4.5 |
446 |
>=app-text/docbook-xsl-stylesheets-1.75.2 |
447 |
virtual/pkgconfig |
448 |
" |
449 |
|
450 |
# |
451 |
# Helper functions |
452 |
# |
453 |
|
454 |
# Returns true if any of specified modules is enabled by USE flag and false |
455 |
# otherwise. |
456 |
# $1 = list of modules (which have corresponding USE flags of the same name) |
457 |
any_module() { |
458 |
local m modules=" $@ " |
459 |
|
460 |
for m in ${modules}; do |
461 |
! use $m && modules=${modules/ $m / } |
462 |
done |
463 |
|
464 |
shopt -s extglob |
465 |
modules=${modules%%+( )} |
466 |
shopt -u extglob |
467 |
|
468 |
[[ ${modules} ]] |
469 |
} |
470 |
|
471 |
# Removes module from modules.d. |
472 |
# $1 = module name |
473 |
# Module name can be specified without number prefix. |
474 |
rm_module() { |
475 |
local force m |
476 |
[[ $1 = -f ]] && force=-f |
477 |
|
478 |
for m in $@; do |
479 |
if [[ $m =~ ^[0-9][0-9][^\ ]*$ ]]; then |
480 |
rm ${force} --interactive=never -r "${modules_dir}"/$m |
481 |
else |
482 |
rm ${force} --interactive=never -r "${modules_dir}"/[0-9][0-9]$m |
483 |
fi |
484 |
done |
485 |
} |
486 |
|
487 |
# |
488 |
# ebuild functions |
489 |
# |
490 |
|
491 |
src_prepare() { |
492 |
epatch "${FILESDIR}/${PV}-0001-dracut-functions.sh-find_binary-path-s.patch" |
493 |
epatch "${FILESDIR}/${PV}-0002-90crypt-call-systemd-commands-only-if-.patch" |
494 |
|
495 |
local udevdir="$($(tc-getPKG_CONFIG) udev --variable=udevdir)" |
496 |
[[ ${udevdir} ]] || die "Couldn't detect udevdir" |
497 |
einfo "Setting udevdir to ${udevdir}..." |
498 |
sed -e "s@udevdir=.*@udevdir=\"${udevdir}\"@" \ |
499 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
500 |
|
501 |
if use dracut_modules_systemd; then |
502 |
local systemdutildir="$($(tc-getPKG_CONFIG) systemd \ |
503 |
--variable=systemdutildir)" |
504 |
local systemdsystemunitdir="$($(tc-getPKG_CONFIG) systemd \ |
505 |
--variable=systemdsystemunitdir)" |
506 |
[[ ${systemdutildir} ]] || die "Couldn't detect systemdutildir" |
507 |
[[ ${systemdsystemunitdir} ]] \ |
508 |
|| die "Couldn't detect systemdsystemunitdir" |
509 |
einfo "Setting systemdutildir to ${systemdutildir} and ..." |
510 |
sed -e "4asystemdutildir=\"${systemdutildir}\"" \ |
511 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
512 |
einfo "Setting systemdsystemunitdir to ${systemdsystemunitdir}..." |
513 |
sed -e "5asystemdsystemunitdir=\"${systemdsystemunitdir}\"" \ |
514 |
-i "${S}/dracut.conf.d/gentoo.conf.example" || die |
515 |
fi |
516 |
} |
517 |
|
518 |
src_compile() { |
519 |
emake prefix=/usr sysconfdir=/etc DESTDIR="${D}" doc |
520 |
if use optimization; then |
521 |
ewarn "Enabling experimental optimization!" |
522 |
tc-export CC |
523 |
emake prefix=/usr sysconfdir=/etc DESTDIR="${D}" install/dracut-install |
524 |
fi |
525 |
} |
526 |
|
527 |
src_install() { |
528 |
local libdir="/usr/lib" |
529 |
|
530 |
emake prefix=/usr libdir="${libdir}" sysconfdir=/etc \ |
531 |
DESTDIR="${D}" install |
532 |
|
533 |
dodir /var/lib/dracut/overlay |
534 |
dodoc HACKING TODO AUTHORS NEWS README* |
535 |
|
536 |
insinto /etc/dracut.conf.d |
537 |
newins dracut.conf.d/gentoo.conf.example gentoo.conf |
538 |
|
539 |
insinto /etc/logrotate.d |
540 |
newins dracut.logrotate dracut |
541 |
|
542 |
dohtml dracut.html |
543 |
|
544 |
# |
545 |
# Modules |
546 |
# |
547 |
local module |
548 |
modules_dir="${D%/}/${libdir#/}/dracut/modules.d" |
549 |
|
550 |
# Remove modules not enabled by USE flags |
551 |
for module in ${IUSE_DRACUT_MODULES} ; do |
552 |
! use ${module} && rm_module -f ${module#dracut_modules_} |
553 |
done |
554 |
|
555 |
# Those flags are specific, and even are corresponding to modules, they need |
556 |
# to be declared as regular USE flags. |
557 |
use debug || rm_module 95debug |
558 |
use selinux || rm_module 98selinux |
559 |
|
560 |
# Following flags define set of helper modules which are base dependencies |
561 |
# for others and as so have no practical use, so remove these modules. |
562 |
use device-mapper || rm_module 90dm |
563 |
use net || rm_module 40network 45ifcfg 45url-lib |
564 |
|
565 |
# Remove S/390 modules which are not tested at all |
566 |
rm_module 80cms 95dasd 95dasd_mod 95zfcp 95znet |
567 |
|
568 |
# Remove modules which won't work for sure |
569 |
rm_module 95fcoe # no tools |
570 |
# fips module depends on masked app-crypt/hmaccalc |
571 |
rm_module 01fips 02fips-aesni |
572 |
|
573 |
# Remove extra modules which go to future dracut-extras |
574 |
rm_module 05busybox 97masterkey 98ecryptfs 98integrity |
575 |
} |
576 |
|
577 |
pkg_postinst() { |
578 |
if linux-info_get_any_version && linux_config_src_exists; then |
579 |
ewarn "" |
580 |
ewarn "If the following test report contains a missing kernel" |
581 |
ewarn "configuration option, you should reconfigure and rebuild your" |
582 |
ewarn "kernel before booting image generated with this Dracut version." |
583 |
ewarn "" |
584 |
|
585 |
local CONFIG_CHECK="~BLK_DEV_INITRD ~DEVTMPFS ~MODULES" |
586 |
|
587 |
# Kernel configuration options descriptions: |
588 |
local desc_DEVTMPFS="Maintain a devtmpfs filesystem to mount at /dev" |
589 |
local desc_BLK_DEV_INITRD="Initial RAM filesystem and RAM disk "\ |
590 |
"(initramfs/initrd) support" |
591 |
local desc_MODULES="Enable loadable module support" |
592 |
|
593 |
local opt desc |
594 |
|
595 |
# Generate ERROR_* variables for check_extra_config. |
596 |
for opt in ${CONFIG_CHECK}; do |
597 |
opt=${opt#\~} |
598 |
desc=desc_${opt} |
599 |
eval "local ERROR_${opt}='CONFIG_${opt}: \"${!desc}\"" \ |
600 |
"is missing and REQUIRED'" |
601 |
done |
602 |
|
603 |
check_extra_config |
604 |
echo |
605 |
else |
606 |
ewarn "" |
607 |
ewarn "Your kernel configuration couldn't be checked. Do you have" |
608 |
ewarn "/usr/src/linux/.config file there? Please check manually if" |
609 |
ewarn "following options are enabled:" |
610 |
ewarn "" |
611 |
ewarn " CONFIG_BLK_DEV_INITRD" |
612 |
ewarn " CONFIG_DEVTMPFS" |
613 |
ewarn " CONFIG_MODULES" |
614 |
ewarn "" |
615 |
fi |
616 |
} |