Annotation of /smage/branches/alx-0_6_0/core/mkinitrd/mkinitrd-6.3.5-r7.smage2
Parent Directory | Revision Log
Revision 3617 -
(hide annotations)
(download)
Wed Jul 11 10:05:45 2012 UTC (11 years, 10 months ago) by niro
File size: 3295 byte(s)
Wed Jul 11 10:05:45 2012 UTC (11 years, 10 months ago) by niro
File size: 3295 byte(s)
-added patch to include missing firmware blobs
1 | niro | 3617 | # $Id$ |
2 | |||
3 | PNAME="mkinitrd" | ||
4 | PVER="6.3.5" | ||
5 | PBUILD="r7" | ||
6 | |||
7 | PCATEGORIE="sys-apps" | ||
8 | |||
9 | DESCRIPTION="Mkinitrd creates filesystem images for use as initial ramdisk (initrd) images." | ||
10 | HOMEPAGE="http://magellan-linux.de/" | ||
11 | |||
12 | DEPEND=">= sys-apps/gawk-3 | ||
13 | >= virtual/which | ||
14 | >= virtual/debianutils | ||
15 | >= sys-apps/module-init-tools-3.12 | ||
16 | >= app-arch/cpio-2 | ||
17 | >= virtual/gzip | ||
18 | >= sys-fs/e2fsprogs-1.41 | ||
19 | >= dev-libs/popt-1.16 | ||
20 | >= sys-apps/util-linux-2.19 | ||
21 | >= sys-apps/v86d-0.1.10" | ||
22 | |||
23 | # nasm is needed to rebuild syslinux | ||
24 | SDEPEND=">= virtual/kernel-sources | ||
25 | >= sys-apps/findutils-4 | ||
26 | >= virtual/sed | ||
27 | >= dev-lang/nasm-2" | ||
28 | |||
29 | SRCFILE="${PNAME}-${PVER}.tar.bz2" | ||
30 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" | ||
31 | |||
32 | REMOVE_DEPRECATED_MAGE_TARGETS=1 | ||
33 | ALX_ONLY_KEEP="sbin usr/sbin usr/$(mlibdir)/mkinitrd etc/conf.d/mkinitrd" | ||
34 | sminclude mbuild alx-split | ||
35 | |||
36 | SRC_URI=( | ||
37 | mirror://${PNAME}/${SRCFILE} | ||
38 | mirror://${PNAME}/${PNAME}-${PVER}-no-glib2-dep.patch | ||
39 | mirror://${PNAME}/${PNAME}-${PVER}-respect-rootdelay-and-mount-devtmpfs-in-sysroot-if-supported.patch | ||
40 | mirror://${PNAME}/${PNAME}-${PVER}-fix-dev-handling.patch | ||
41 | mirror://${PNAME}/${PNAME}-${PVER}-klibc-1.5.22.patch | ||
42 | mirror://${PNAME}/${PNAME}-${PVER}-variable-sysroot-and-substition-fix.patch | ||
43 | mirror://${PNAME}/${PNAME}-${PVER}-include-firmware.patch | ||
44 | ) | ||
45 | |||
46 | src_prepare() | ||
47 | { | ||
48 | munpack ${SRCFILE} || die | ||
49 | cd ${SRCDIR} | ||
50 | |||
51 | # no need to link against glib2 - removed in later versions | ||
52 | mpatch ${PNAME}-${PVER}-no-glib2-dep.patch || die | ||
53 | |||
54 | # respect rootdelay given in cmdline and mount devtmpfs in sysroot before switch-root if supported | ||
55 | mpatch ${PNAME}-${PVER}-respect-rootdelay-and-mount-devtmpfs-in-sysroot-if-supported.patch || die | ||
56 | |||
57 | # fix broken devtmpfs handling of prior patch and only mount dev if really needed | ||
58 | # do not umount initrds dev,proc,sys but mount move it to real sysroot | ||
59 | mpatch ${PNAME}-${PVER}-fix-dev-handling.patch || die | ||
60 | |||
61 | # update klibc to 1.5.22 | ||
62 | mpatch ${PNAME}-${PVER}-klibc-1.5.22.patch || die | ||
63 | |||
64 | # support variable sysroot and fixed variable substitution while linking cloop mount dirs | ||
65 | mpatch ${PNAME}-${PVER}-variable-sysroot-and-substition-fix.patch || die | ||
66 | |||
67 | # include required firmware blobs in initrd | ||
68 | mpatch ${PNAME}-${PVER}-include-firmware.patch || die | ||
69 | |||
70 | # enable scsi,sata and pata checks for 2.6.29 as default | ||
71 | sed -i -e "s:^\(DOSCSI=\).*:\1yes:" \ | ||
72 | -e "s:^\(DOSATA=\).*:\1yes:" \ | ||
73 | -e "s:^\(DOPATA=\).*:\1yes:" \ | ||
74 | livecd/linuxrc.sh || die | ||
75 | |||
76 | # fix version, we want ${PVER}-${PBUILD} | ||
77 | echo "${PVER}-${PBUILD}" > VERSION || die | ||
78 | |||
79 | # fix libdir on 64bit arches | ||
80 | sed -i "s:^\(LIBDIR =\).*:\1 /usr/$(mlibdir):" livecd/Makefile || die | ||
81 | sed -i "s:^\(LIBDIR.*=\).*:\1 /usr/$(mlibdir)/mkinitrd:" isolinux/Makefile || die | ||
82 | |||
83 | # only load supported fb-drivers with dofb | ||
84 | : > livecd/modules.framebuffer || die | ||
85 | local mod | ||
86 | for mod in i915 mga nouveau r128 radeon savage sis tdfx ttm via uvesafb | ||
87 | do | ||
88 | echo "${mod}" >> livecd/modules.framebuffer || die | ||
89 | done | ||
90 | } | ||
91 | |||
92 | src_compile() | ||
93 | { | ||
94 | cd ${SRCDIR} | ||
95 | mmake -j1 ARCH=${ARCH/i*86/i386} || die | ||
96 | } | ||
97 | |||
98 | preinstall() | ||
99 | { | ||
100 | add_conf_prot_ignore /etc/conf.d/mkinitrd | ||
101 | } | ||
102 | |||
103 | postinstall() | ||
104 | { | ||
105 | # re-create initrd | ||
106 | mount /boot &> /dev/null | ||
107 | kv="$(readlink /boot/initrd | sed -e 's:initrd-::' -e 's:.img::')" | ||
108 | if [ -d /lib/modules/${kv} ] | ||
109 | then | ||
110 | mkinitrd -f /boot/initrd-"${kv}".img "${kv}" | ||
111 | else | ||
112 | echo "Warning: modules dir /lib/modules/${kv} does not exist!" | ||
113 | fi | ||
114 | } |