/[gentoo-x86]/sys-boot/grub/grub-9999.ebuild
Gentoo

Contents of /sys-boot/grub/grub-9999.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.32 - (hide annotations) (download)
Sun Apr 3 18:18:12 2011 UTC (3 years, 3 months ago) by vapier
Branch: MAIN
Changes since 1.31: +11 -9 lines
Add support for USE="device-mapper sdl", drop dead configure options, and only depend on autogen for live scm ebuilds #357337 by Jon Severinsson.

(Portage version: 2.2.0_alpha28/cvs/Linux x86_64)

1 vapier 1.27 # Copyright 1999-2011 Gentoo Foundation
2 vapier 1.1 # Distributed under the terms of the GNU General Public License v2
3 vapier 1.32 # $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-9999.ebuild,v 1.31 2011/04/03 18:10:01 vapier Exp $
4 vapier 1.21
5     # XXX: need to implement a grub.conf migration in pkg_postinst before we ~arch
6 vapier 1.1
7 vapier 1.17 inherit mount-boot eutils flag-o-matic toolchain-funcs
8 vapier 1.1
9     if [[ ${PV} == "9999" ]] ; then
10 vapier 1.29 EBZR_REPO_URI="http://bzr.savannah.gnu.org/r/grub/trunk/grub/"
11 vapier 1.17 inherit autotools bzr
12 vapier 1.2 SRC_URI=""
13     else
14     SRC_URI="ftp://alpha.gnu.org/gnu/${PN}/${P}.tar.gz
15     mirror://gentoo/${P}.tar.gz"
16 vapier 1.1 fi
17    
18 vapier 1.32 DESCRIPTION="GNU GRUB boot loader"
19 vapier 1.1 HOMEPAGE="http://www.gnu.org/software/grub/"
20    
21 vapier 1.4 LICENSE="GPL-3"
22 vapier 1.3 use multislot && SLOT="2" || SLOT="0"
23 vapier 1.1 KEYWORDS=""
24 vapier 1.32 IUSE="custom-cflags debug device-mapper multislot static sdl truetype"
25 vapier 1.1
26 vapier 1.9 RDEPEND=">=sys-libs/ncurses-5.2-r5
27 vapier 1.18 dev-libs/lzo
28 vapier 1.32 debug? (
29     sdl? ( media-libs/libsdl )
30     )
31     device-mapper? ( >=sys-fs/lvm2-2.02.45 )
32 vapier 1.24 truetype? ( media-libs/freetype >=media-fonts/unifont-5 )"
33 vapier 1.9 DEPEND="${RDEPEND}
34 vapier 1.25 >=dev-lang/python-2.5.2"
35 vapier 1.32 [[ ${PV} == "9999" ]] && DEPEND+=" >=sys-devel/autogen-5.10 sys-apps/help2man"
36 vapier 1.1
37 vapier 1.5 export STRIP_MASK="*/grub/*/*.mod"
38 vapier 1.23 QA_EXECSTACK="sbin/grub-probe sbin/grub-setup sbin/grub-mkdevicemap bin/grub-script-check bin/grub-fstest"
39 vapier 1.1
40 vapier 1.6 src_unpack() {
41     if [[ ${PV} == "9999" ]] ; then
42 vapier 1.16 bzr_src_unpack
43 vapier 1.6 else
44     unpack ${A}
45     fi
46     cd "${S}"
47 vapier 1.15 epatch_user
48 vapier 1.7
49     # autogen.sh does more than just run autotools
50 vapier 1.19 # need to eautomake due to weirdness #296013
51 vapier 1.17 if [[ ${PV} == "9999" ]] ; then
52 vapier 1.25 sed -i -e '/^autoreconf/s:^:e:' autogen.sh || die
53 vapier 1.17 (. ./autogen.sh) || die
54     fi
55 vapier 1.6 }
56    
57 vapier 1.1 src_compile() {
58     use custom-cflags || unset CFLAGS CPPFLAGS LDFLAGS
59     use static && append-ldflags -static
60    
61     econf \
62 vapier 1.12 --disable-werror \
63 vapier 1.3 --sbindir=/sbin \
64     --bindir=/bin \
65     --libdir=/$(get_libdir) \
66 vapier 1.11 --disable-efiemu \
67 vapier 1.32 $(use_enable device-mapper) \
68 vapier 1.18 $(use_enable truetype grub-mkfont) \
69 vapier 1.10 $(use_enable debug mm-debug) \
70 vapier 1.32 $(use sdl && use_enable debug grub-emu-sdl) \
71     $(use_enable debug grub-emu-usb)
72 vapier 1.1 emake -j1 || die "making regular stuff"
73     }
74    
75     src_install() {
76     emake DESTDIR="${D}" install || die
77     dodoc AUTHORS ChangeLog NEWS README THANKS TODO
78 vapier 1.31
79     insinto /etc/defaults
80     doins "${FILESDIR}"/defaults || die
81 vapier 1.6 cat <<-EOF >> "${D}"/lib*/grub/grub-mkconfig_lib
82     GRUB_DISTRIBUTOR="Gentoo"
83     EOF
84 vapier 1.31
85 vapier 1.3 if use multislot ; then
86 vapier 1.14 sed -i "s:grub-install:grub2-install:" "${D}"/sbin/grub-install || die
87 vapier 1.3 mv "${D}"/sbin/grub{,2}-install || die
88 vapier 1.22 mv "${D}"/sbin/grub{,2}-set-default || die
89     mv "${D}"/usr/share/man/man8/grub{,2}-install.8 || die
90 vapier 1.13 mv "${D}"/usr/share/info/grub{,2}.info || die
91 vapier 1.3 fi
92     }
93    
94     setup_boot_dir() {
95     local boot_dir=$1
96     local dir=${boot_dir}/grub
97    
98     if [[ ! -e ${dir}/grub.cfg ]] ; then
99     einfo "Running: grub-mkconfig -o '${dir}/grub.cfg'"
100     grub-mkconfig -o "${dir}/grub.cfg"
101     fi
102    
103     #local install=grub-install
104     #use multislot && install="grub2-install --grub-setup=/bin/true"
105     #einfo "Running: ${install} "
106     #${install}
107 vapier 1.1 }
108    
109     pkg_postinst() {
110 vapier 1.28 mount-boot_mount_boot_partition
111 vapier 1.27
112 vapier 1.3 if use multislot ; then
113     elog "You have installed grub2 with USE=multislot, so to coexist"
114     elog "with grub1, the grub2 install binary is named grub2-install."
115     fi
116     setup_boot_dir "${ROOT}"boot
117 vapier 1.28
118     # needs to be after we call setup_boot_dir
119     mount-boot_pkg_postinst
120 vapier 1.1 }

  ViewVC Help
Powered by ViewVC 1.1.20