grub: remove old grub versions, now maintained in coreos-overlay

This commit is contained in:
Michael Marineau 2014-10-19 19:30:35 -07:00
parent 994fbf19f4
commit c11611fb65
21 changed files with 0 additions and 4194 deletions

View File

@ -1,156 +0,0 @@
# ChangeLog for sys-boot/grub-static
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/ChangeLog,v 1.34 2012/08/08 15:01:59 ago Exp $
08 Aug 2012; Agostino Sarubbo <ago@gentoo.org> grub-static-0.97-r12.ebuild:
Stable for AMD64, wrt bug #418393
23 Jul 2012; Mike Frysinger <vapier@gentoo.org> grub-static-0.96-r1.ebuild,
grub-static-0.97-r10.ebuild, grub-static-0.97-r12.ebuild,
grub-static-0.97-r6.ebuild, grub-static-0.97-r9.ebuild,
grub-static-0.97.ebuild:
Block grub-0.9x versions only #398451 by Duncan.
*grub-static-0.97-r12 (02 Jun 2012)
02 Jun 2012; Mike Frysinger <vapier@gentoo.org> +grub-static-0.97-r12.ebuild:
Version bump.
10 Apr 2011; Ulrich Mueller <ulm@gentoo.org> grub-static-0.96-r1.ebuild,
grub-static-0.97.ebuild, grub-static-0.97-r6.ebuild,
grub-static-0.97-r9.ebuild, grub-static-0.97-r10.ebuild:
Don't PROVIDE virtual/bootloader, bug 359971.
24 Feb 2011; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r10.ebuild:
One more bit for hanno. I_KNOW_WHAT_IM_DOING=1 will now enable you to install
an unusable grub on amd64 systems without IA32_EMULATION, for specific rescue
situations.
24 Feb 2011; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r10.ebuild:
Provide advanced option for hanno to help with system rescues.
21 Feb 2011; Markos Chandras <hwoarang@gentoo.org>
grub-static-0.97-r10.ebuild:
Stable on amd64 wrt bug #355693
09 Jan 2011; Mike Frysinger <vapier@gentoo.org>
grub-static-0.97-r9.ebuild, grub-static-0.97-r10.ebuild:
Use new mount-boot_pkg_postinst helper.
30 Nov 2010; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.96-r1.ebuild, grub-static-0.97.ebuild,
grub-static-0.97-r6.ebuild, grub-static-0.97-r9.ebuild,
grub-static-0.97-r10.ebuild:
QA cleanup for repoman happiness.
*grub-static-0.97-r10 (30 Nov 2010)
30 Nov 2010; Robin H. Johnson <robbat2@gentoo.org>
+grub-static-0.97-r10.ebuild:
Bump grub-static to match grub 0.97-r10.
12 Dec 2009; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r9.ebuild:
Suppress the pre-stripped warning.
12 Dec 2009; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r9.ebuild:
Bug #296537: Increase the warnings and catch where the user does not have
IA32_EMULATION set, by trying to run the binary.
04 Jul 2009; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r9.ebuild:
Port from sys-boot/grub: Bug #261857: easier install with $ROOT usage.
04 Jul 2009; Robin H. Johnson <robbat2@gentoo.org>
grub-static-0.97-r9.ebuild:
Bug #255271: check for IA32_EMULATION on 64-bit, as we are building a
32-bit binary and need to be able to run it.
15 May 2009; Markus Meier <maekke@gentoo.org> grub-static-0.97-r9.ebuild:
amd64 stable, bug #269201
14 May 2009; Christian Faulhammer <fauli@gentoo.org>
grub-static-0.97-r9.ebuild:
x86 stable, bug 269201
11 Jan 2009; Markus Meier <maekke@gentoo.org> grub-static-0.97-r6.ebuild:
amd64 stable, bug #254028
*grub-static-0.97-r9 (03 Jan 2009)
03 Jan 2009; Christoph Mende <angelos@gentoo.org>
+grub-static-0.97-r9.ebuild:
Version bump to match sys-boot/grub
28 Oct 2008; Christoph Mende <angelos@gentoo.org>
grub-static-0.97-r6.ebuild:
Added missing inherit eutils, bug 244706
*grub-static-0.97-r6 (27 Oct 2008)
27 Oct 2008; Robin H. Johnson <robbat2@gentoo.org>
+grub-static-0.97-r6.ebuild:
Bug #239224, version bump to match current non-static build. See bug for
full list of fixes. Beware /boot/grub/splash.xpm.gz sometimes vanishing
due to a Portage bug. Make SURE you follow the upgrade instructions or you
might end up with a non-booting box.
25 Feb 2008; Chris Gianelloni <wolf31o2@gentoo.org>
grub-static-0.97.ebuild:
Sync with sys-boot/grub.
20 Dec 2006; Daniel Drake <dsd@gentoo.org> grub-static-0.97.ebuild:
Stable on amd64, bug #156459
12 Nov 2006; Olivier Crête <tester@gentoo.org> grub-static-0.97.ebuild:
Inherit mount-boot to auto-mount boot partition r/w
03 Nov 2006; Olivier Crête <tester@gentoo.org> grub-static-0.97.ebuild:
Added code to install into /boot in pkg_postinst from grub ebuild, see bug
#153956
*grub-static-0.97 (23 Oct 2006)
23 Oct 2006; Daniel Drake <dsd@gentoo.org> +grub-static-0.97.ebuild:
New version, generated from sys-boot/grub-0.97-r3
16 Sep 2006; <blubb@gentoo.org> -grub-static-0.93.20030118.ebuild:
version cleanups
07 Sep 2006; <blubb@gentoo.org> grub-static-0.96-r1.ebuild:
stable on amd64
*grub-static-0.96-r1 (13 Jun 2006)
13 Jun 2006; Simon Stelling <blubb@gentoo.org> -grub-static-0.96.ebuild,
+grub-static-0.96-r1.ebuild:
fix bug 136594
12 Jun 2006; Olivier Crête <tester@gentoo.org>
files/digest-grub-static-0.96, Manifest:
Fixed digest
*grub-static-0.96 (11 Jun 2006)
11 Jun 2006; Simon Stelling <blubb@gentoo.org>
grub-static-0.93.20030118.ebuild, +grub-static-0.96.ebuild:
clean up KEYWORDS and bump to amore recent version
15 Feb 2006; Olivier Crête <tester@gentoo.org>
grub-static-0.93.20030118.ebuild:
Fix blocker for sys-apps -> sys-boot move
*grub-static-0.93.20030118 (08 Dec 2003)
08 Dec 2003; Seemant Kulleen <seemant@gentoo.org>
grub-static-0.93.20030118.ebuild, metadata.xml:
moved from sys-apps to sys-boot
*grub-static-0.93.20030118 (26 Jul 2003)
26 Jul 2003; Olivier Crete <tester@gentoo.org>
grub-static-0.93.20030118.ebuild:
Initial version of grub static for amd64 since there is no 64-bit bootloader

View File

@ -1,28 +0,0 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
DIST grub-static-0.96.tar.bz2 859179 SHA256 3ece8910e7954ca2c2cbebc4d05cfb22e73455f826508661a5b1a60481dcbd76
DIST grub-static-0.97-r10.tar.bz2 888963 SHA256 812c8113efa13b6bfe254e866204b4763bf889c796835ed0b53cb64920428d82 SHA512 2a18405c9f7b0712dac2246213f723c1a2be6734bff133b7906e7c18e4370faf924f35d3b834d74761cf50b3ab59e969fbff010e13292618187c65a72aa45a87 WHIRLPOOL 418246dacc50d1232b657ed4a81f8ec34149008e4312109ced834cbc8b380bef7ba2cd4339b22dac521d823723e360d6a70f87e8601979e80673510ea597e0b0
DIST grub-static-0.97-r12.tar.bz2 1171586 SHA256 865eb5b3131d30be7ddbbc6969e924f2d199353c076504a2668a8df5be17c51f SHA512 0a4c0b3b556db366df70c7c51a1a26f614f949be4002d7f9a053b7261b80c2c49410e8fd04c7e3717ea560e7cbc6a692d859d07bdfe2099a78a33bce78ac5395 WHIRLPOOL c6e05b297d8cf8c6d84495a122502740d2102c32f14bd2df8b80c9e43a91c7f58f50297dbd4e2ba70fe7aee44a0f06bfff94e597fbddc65fa5b93efd4c2e9fea
DIST grub-static-0.97-r6.tar.bz2 1005650 SHA256 1a17a8df6839401f7d1829aebea45c1654c3fcdd6a6f068100126d2fcbe75698
DIST grub-static-0.97-r9.tar.bz2 937621 SHA256 0d6af53c5380bd37ea67f314236364baebfff52762ea5e52bf2f66941dabe2d1 SHA512 a8b1f7cd416f2c41c88ba5c34889e7afe9615bf985e69b2d1d3ec2a20b7ceb13e53e8b3df91a5077bfa1a217f3274362033d72f9bafe3ad22be378f26728035c WHIRLPOOL 48c3556902369232a3ee5b1a9a0a61ebb951fd8c25590262d1c944170918e9d4e98fcf3ba3ccd47707e52aabca426c328cc7ad38f97baa9052d61d26a90522ab
DIST grub-static-0.97.tar.bz2 954051 SHA256 468ac48823880bd7cb2dd6bf60673adef1313c44a5e3131a0a4a37d2cc1145bc
EBUILD grub-static-0.96-r1.ebuild 524 SHA256 c76bc5b61da0e916e9ed8241cd8261ab2450f0ba114a6f5f47c070a4488257ce SHA512 c3cff2018b4bf5a6b86aa8ce2248cc3464301aa093f6d272057ce8ad1b023c25e2d7be12dbbf934c8e35d723fad30ef9aa9fdf66035a2e2bd503e0f6e76ded55 WHIRLPOOL cf814bf5e7ba99b7dc1238969179f5c761649a2230ee90b46d9fbe5067a7ace0794c0f7649b813e25f09f38b3731c9cfdbdee30176abf551e6ce5407f90b9a11
EBUILD grub-static-0.97-r10.ebuild 5515 SHA256 4b33ef5aade9667391a8d677afe41358249adef6fdf29e1084e327471ee20dc0 SHA512 8a890fb67dacfdebecb0a67fc9a4f16e63bfb71e8a9f526e34ee9b4ec440c0c9b36edfd40fa26c851c348f39a5a5f4d31b02a8aa28dfdd30288cc7c4658367f6 WHIRLPOOL f9b6396984ef10c268cf51850c390937ea4168612ec23bfa989c1da3a885cd6ded3a6c5702a06ac1a8664108e966fbd081be647fbdbdacc6eca8d953832fe297
EBUILD grub-static-0.97-r12.ebuild 5512 SHA256 c980b30540d0e782a72654831d0114f58eb32be0578eec8cf398077e02f65d5c SHA512 fe560b36096406b5dc1cb16c7ead61c72a7fd6352d2e47e03f5dafdba24efbb9a902506873969a35841dd8799c67deae92902a9887db6183a20fc5e4e23bd763 WHIRLPOOL 6240b0dcf9b34f40dc4154668953b0211140d77e51187e9224fa52e4d93a81527c2c8afa86c05f07b2dc2bfd6120d8da6eff642c18d95b4ad73ec1eb6b5c86ee
EBUILD grub-static-0.97-r6.ebuild 4444 SHA256 bcf845e0eaa788351719569b11eaaddf9c058e41abed2745f756f6fbb653be42 SHA512 ce44b4175ca7f1d5f23a8a2e5d67b549a9f2829cbba569c97ccd740d2401d5a1835ae590d84245e0b6319b5a66f0cfe4d71b82b77953e4bdb7878f077db7a5b1 WHIRLPOOL 3e5a4ac3aefb5ec8527538115b59aa2af2c745fcb94fb451622e22949d146c0d9eee8ea33a5feea3feb83458c06348290a061d6321aeba5ecc469b5a91dcd5b4
EBUILD grub-static-0.97-r9.ebuild 5410 SHA256 81967d1bfd6571ffbc3081b70fd83da1a36a8a86152b2eca88a746ce09c21919 SHA512 b0f5b784d85f2e45d19bf2a734f9873d8e9378b0d644544b2bf4c6dc8a019c90b76f0484758418b4763229065a290aa988a5ce164e2b5ab6e9f28807bdb8bbb9 WHIRLPOOL 34fb3114fabdb61d36d24f946f93fa27db0afdbec0f3cbabc922f22dc19cebc08a67d1eadc685d213c5081616324e4c3cde7ccd3495abba82ad350c84d6cf83b
EBUILD grub-static-0.97.ebuild 2035 SHA256 d62c1a79d01ac284eec13d604b827d663966945c5d3209b0cf0358beb9e96e9e SHA512 9b4a940f84b6bf09f8b6404cb1c63bc84830f45610b25fdc58927038bc711b1a1e1602561eeb9bee4a36ca47f5b9f1cf92b1de0c276e242aebef5056641c7c02 WHIRLPOOL 8c7750e5c5cfdc939034651095d545214f28b205c08800ee4c15f37d3c2d30315ea2917b51c9d9bb38920755f94bc45fd35fb2c6bfe7c0d156b585d19c143f87
MISC ChangeLog 5551 SHA256 fd373c083a05ef17a5074741d41801878c868780888a079f7fc200085e2cd90f SHA512 524d7b8cf0fe52981a189151d8be58aa545b36b8938378944aa6d29aaa717b07f449155e44a5a54025292162f72cd7562408808966b88970929826166e54af52 WHIRLPOOL d35df4dfea54ce55500d840f48e21b0a6fadb0f0521108e45849a8354b0bad5528afc635f0e149c2f27dd4dea308f4318b9c1bc322a6d2c88d5bb811b486c07e
MISC metadata.xml 158 SHA256 0df9eb61f6a4e4a3f8fc16386b0204e22e85940533d769d4a0418a4ecec50d90 SHA512 e59c9f002f414c281cb69001ab64a9f772689b4accb0cc9173d94d2164be3c38c72ce6e36c2b522442a3de954cf88d6f2b6fb74bdfe9e2e2735e78c9c583283e WHIRLPOOL aaab4e99a3175a7ccbd5ee673a7646f1a32ff56b1670bde20322f827caaf63e4993ea9ab9c7fd1ca2fd89b06dd4b68b0956ab40515d6fcb5ec6f484621085a44
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
iQEcBAEBCgAGBQJQIn9wAAoJEOTDgjZ80txdO2wH/3SjLqKw7prhH0pHW2AYOMNy
Sa/qtPWAi4rplk2fmuVMilRzQr4nLswLYAtOZ8fasW7imEUUuMguNhWoztJEjPXm
2TXZxdnIq28cjZDmsaDRFCl+JNaSS8yncd9ggySIoKLSZJ3yk4g1RWTVnhp5Nb84
AgGAkp/HXQDHD0lCiBTHxEo4XJzz5d2L5QpqIbQeBV/bCzyXfLm6BTq28chUck1V
BkSxfSvBQ3r0q1gLTAWDE9jshBQ0xTwDsiZW1E4tV4t7idY5Tg7zxJKafZ/1WTSa
5tBasrQ6vNV98yBY5TsomozUY3Fj4PquCaX/l5HERJraEVMR4ivxNHommJAiL/s=
=HPyp
-----END PGP SIGNATURE-----

View File

@ -1,18 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.96-r1.ebuild,v 1.5 2012/07/23 03:49:58 vapier Exp $
DESCRIPTION="Static GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/grub-static-${PV}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
src_install() {
cp -a "${WORKDIR}"/* "${D}"/
}

View File

@ -1,176 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.97-r10.ebuild,v 1.8 2012/07/23 03:49:58 vapier Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
inherit eutils mount-boot toolchain-funcs linux-info
PATCHVER="1.9" # Not used, just for tracking with main grub
DESCRIPTION="GNU GRUB Legacy boot loader (static build)"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${PF}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
# These are already stripped since we use a binpkg.
QA_PRESTRIPPED="/sbin/grub /bin/mbchk"
pkg_setup() {
local arch="$(tc-arch)"
case ${arch} in
amd64)
CONFIG_CHECK='~IA32_EMULATION'
WARNING_IA32_EMULATION="You will NOT be able to run grub unless you have IA32_EMULATION set!"
check_extra_config
;;
esac
}
src_install() {
cp -a "${WORKDIR}"/* "${D}"/
if [[ -z "${I_KNOW_WHAT_I_AM_DOING}" ]]; then
run_test_grub "${D}"/sbin/grub && einfo "New grub can run on your system, good!"
fi
}
run_test_grub() {
local grub="$1"
local version="$(${grub} \
--read-only --no-pager --no-floppy --no-curses \
--no-config-file --batch --version)"
local error="grub test-run failed"
use amd64 && error="${error} Is IA32_EMULATION set?"
[ "${version/${PV}}" != "${version}" ] || die "${error}"
return 0
}
#
# Below this point, everything is also used in grub-static!
# Please keep in sync!
#
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
if [[ -z "${I_KNOW_WHAT_I_AM_DOING}" ]]; then
run_test_grub /sbin/grub
fi
mkdir -p "${dir}"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die "${dir} does not exist!"
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually! For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
ebeep
fi
einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
local tmp="${TMPDIR}/${P}-setup_boot_dir-$$"
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" >"${tmp}"
# Do NOT fail here, only warn.
/sbin/grub --batch \
--device-map="${dir}"/device.map \
>/dev/null <"${tmp}"
rc=$?
[[ $rc -ne 0 ]] && ewarn "Grub failed to run!"
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
# This may fail, don't worry about it.
grub-set-default --root-directory="${boot_dir}" default
:
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
mount-boot_pkg_postinst
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,180 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.97-r12.ebuild,v 1.3 2012/08/08 15:01:59 ago Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
inherit eutils mount-boot toolchain-funcs linux-info
PATCHVER="1.14" # Not used, just for tracking with main grub
DESCRIPTION="GNU GRUB Legacy boot loader (static build)"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${PF}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
S=${WORKDIR}
pkg_setup() {
case $(tc-arch) in
amd64)
CONFIG_CHECK='~IA32_EMULATION'
WARNING_IA32_EMULATION="You will NOT be able to run grub unless you have IA32_EMULATION set!"
check_extra_config
;;
esac
}
src_install() {
cp -a * "${D}"/
# Make sure the docs get compressed
dodoc usr/share/doc/${PF}/*
if [[ -z "${I_KNOW_WHAT_I_AM_DOING}" ]]; then
run_test_grub "${D}"/sbin/grub && einfo "New grub can run on your system, good!"
fi
}
run_test_grub() {
local grub="$1"
local version="$(${grub} \
--read-only --no-pager --no-floppy --no-curses \
--no-config-file --batch --version)"
local error="grub test-run failed"
use amd64 && error="${error} Is IA32_EMULATION set?"
[ "${version/${PV}}" != "${version}" ] || die "${error}"
return 0
}
#
# Below this point, everything is also used in grub-static!
# Please keep in sync!
#
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
if [[ -z "${I_KNOW_WHAT_I_AM_DOING}" ]]; then
run_test_grub /sbin/grub
fi
mkdir -p "${dir}"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually! For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
ebeep
fi
einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
local tmp="${TMPDIR}/${P}-setup_boot_dir-$$"
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" >"${tmp}"
# Do NOT fail here, only warn.
/sbin/grub --batch \
--device-map="${dir}"/device.map \
>/dev/null <"${tmp}"
rc=$?
[[ $rc -ne 0 ]] && ewarn "Grub failed to run!"
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
# This may fail, don't worry about it.
grub-set-default --root-directory="${boot_dir}" default
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
# needs to be after we call setup_boot_dir
mount-boot_pkg_postinst
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,136 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.97-r6.ebuild,v 1.7 2012/07/23 03:49:58 vapier Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
inherit eutils mount-boot
PATCHVER="1.7" # Not used, just for tracking with main grub
DESCRIPTION="GNU GRUB Legacy boot loader (static build)"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${PF}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
src_install() {
cp -a "${WORKDIR}"/* "${D}"/
}
#
# Below this point, everything is also used in grub-static!
# Please keep in sync!
#
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
[[ ! -e ${dir} ]] && die "${dir} does not exist!"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die "${dir} does not exist!"
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually! For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
ebeep
fi
einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" | \
/sbin/grub --batch \
--device-map="${dir}"/device.map \
> /dev/null
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
grub-set-default --root-directory="${boot_dir}" default
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,172 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.97-r9.ebuild,v 1.12 2012/07/23 03:49:58 vapier Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
inherit eutils mount-boot toolchain-funcs linux-info
PATCHVER="1.9" # Not used, just for tracking with main grub
DESCRIPTION="GNU GRUB Legacy boot loader (static build)"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${PF}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
# These are already stripped since we use a binpkg.
QA_PRESTRIPPED="/sbin/grub /bin/mbchk"
pkg_setup() {
local arch="$(tc-arch)"
case ${arch} in
amd64)
CONFIG_CHECK='~IA32_EMULATION'
WARNING_IA32_EMULATION="You will NOT be able to run grub unless you have IA32_EMULATION set!"
check_extra_config
;;
esac
}
src_install() {
cp -a "${WORKDIR}"/* "${D}"/
run_test_grub "${D}"/sbin/grub && einfo "New grub can run on your system, good!"
}
run_test_grub() {
local grub="$1"
local version="$(${grub} \
--read-only --no-pager --no-floppy --no-curses \
--no-config-file --batch --version)"
local error="grub test-run failed"
use amd64 && error="${error} Is IA32_EMULATION set?"
[ "${version/${PV}}" != "${version}" ] || die "${error}"
return 0
}
#
# Below this point, everything is also used in grub-static!
# Please keep in sync!
#
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
run_test_grub /sbin/grub
mkdir -p "${dir}"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die "${dir} does not exist!"
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually! For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
ebeep
fi
einfo "Copying files from /lib/grub, /usr/lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
local tmp="${TMPDIR}/${P}-setup_boot_dir-$$"
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" >"${tmp}"
# Do NOT fail here, only warn.
/sbin/grub --batch \
--device-map="${dir}"/device.map \
>/dev/null <"${tmp}"
rc=$?
[[ $rc -ne 0 ]] && ewarn "Grub failed to run!"
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
# This may fail, don't worry about it.
grub-set-default --root-directory="${boot_dir}" default
:
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
mount-boot_pkg_postinst
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,76 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub-static/grub-static-0.97.ebuild,v 1.8 2012/07/23 03:49:58 vapier Exp $
inherit mount-boot
DESCRIPTION="Static GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/grub-static-${PV}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-* amd64 ~x86"
IUSE=""
DEPEND="!<sys-boot/grub-2"
RDEPEND="${DEPEND}"
src_install() {
cp -a "${WORKDIR}"/* "${D}"/
}
#
# Everything below is directly copied from the grub ebuild
# please try to keep it in sync
#
setup_boot_dir() {
local dir="${1}"
[[ ! -e "${dir}" ]] && die "${dir} does not exist!"
[[ ! -e "${dir}"/grub ]] && mkdir "${dir}/grub"
# change menu.lst to grub.conf
if [[ ! -e "${dir}"/grub/grub.conf ]] && [[ -e "${dir}"/grub/menu.lst ]] ; then
mv -f "${dir}"/grub/menu.lst "${dir}"/grub/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e "${dir}"/grub/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/grub/menu.lst
fi
[[ -e "${dir}"/grub/stage2 ]] && mv "${dir}"/grub/stage2{,.old}
einfo "Copying files from /lib/grub and /usr/lib/grub to ${dir}"
for x in /lib*/grub/*/* /usr/lib*/grub/*/* ; do
[[ -f "${x}" ]] && cp -p "${x}" "${dir}"/grub/
done
if [[ -e "${dir}"/grub/grub.conf ]] ; then
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${dir}"/grub/grub.conf | \
/sbin/grub --batch \
--device-map="${dir}"/grub/device.map \
> /dev/null
fi
}
pkg_postinst() {
[[ "${ROOT}" != "/" ]] && return 0
[[ -n ${DONT_MOUNT_BOOT} ]] && return 0
setup_boot_dir /boot
einfo "To install grub files to another device (like a usb stick), just run:"
einfo " emerge --config =${PF}"
}
pkg_config() {
local dir
einfo "Enter the directory where you want to setup grub:"
read dir
setup_boot_dir "${dir}"
}

View File

@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>amd64</herd>
</pkgmetadata>

File diff suppressed because it is too large Load Diff

View File

@ -1,29 +0,0 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX grub-2.00-freetype-2.5.1.patch 752 SHA256 95ddb348097df2bdf51a36529935118ad4bb51cb780038d149ed0ae3bf0693c9 SHA512 e9d05de956364b923e01d8f71d77f05d6c0815b7ae21ec5d34875de09770ce42b52f7d410314f7e4a273256350d7cbf311cf95a5d83e469c7a83b9b69879caff WHIRLPOOL 67751eaad605cf064106f2a304657bf1fe1ea1f4bb3f6efe436f2d7e6b84e80b56327e51cff4db63a7f34e7f21a456d3c7517d6ee6da5f8f2cbd7816f34d4016
AUX grub.conf.gentoo 627 SHA256 914b15af252210a32776196437cd8013e10e57d5780e66877ef3fe9a2b4b9776 SHA512 5ee586c151b025a153867d2854b73e2e18a6af38e9d65069b7114a55af776803ba947b4901b0806e79fa8f36aeac90daad608b9ec2a4a8526301d1beb36e4ef3 WHIRLPOOL fcaef85cd7c2c446c882874cf4ec8a2241d1fc97720973a0a0cd1add259da599d4dae4d0b429ba2dff0307ed2d4598d5939cbc1b11127a0dedb3a54249ec9f81
AUX grub.default-2 1602 SHA256 d1c11fb4decbae9a9827866ec2126b2c11a3d8f6b41278acad139b4dd34338c5 SHA512 15085cdfe706379d931c6841c34403ffcb46765be75425a29b563d69169124447606d8f8444945ed1148ac734da4f12f14a9b18abd6b0501974c1c770ad13c39 WHIRLPOOL 2f72b2a3d4048261cf3d5477b9a33264b3214a803eebcf4b782c33cf71d045e9be878407c64c720c2a7b260a65f8e32a61974c55ebd8d464e0b947133cdf49fd
AUX grub.default-3 1872 SHA256 84a7c82094f741fa33b2d883e42baf3157f44d26aba727812fb2f3b1a5f47d44 SHA512 bb49012b985b8f31f19d0598d321b0414f68c12224f78a0565dc190f082f754a78c95cc924bbf65e338e99311dd7f8a53ccca6c9d52583a3ad4b6d6f4fddfd60 WHIRLPOOL d85f7071190a7dcafad6597c68ef93f61b79887fd2d3fb144f16f42fcef85d741b1927f1b201394bfc800ffa1916650cf4caf68f310573ecab69b28e6a56aaf6
DIST dejavu-sans-ttf-2.34.zip 406977 SHA256 242e8c1cb2bdc7458bece02cca898f962c2bc919dcf67d97428149228290184d SHA512 dcd802b9c83cfa749b7542d0855eb1facb665a035af8c05f58830fce3ce37ba8d4a6f0353c07ae924c7fc25460d330b7312cbaffd34a2cb314a8e222de385c1b WHIRLPOOL d8b3289997cc39aca1c909ac1cae79727a19932f07b116a4a0bcc83e4a2f136d05d18c8ef2b05504a2f1f65eba85f93d61d52b0c913be7bb3e23f6a403eb6a82
DIST grub-0.97-patches-1.14.tar.bz2 52916 SHA256 5c7ca31fd9b2123471daf2e46a1936c4044ad0c12e353d9d3d8c3f83a1c7a0e5 SHA512 d9a8d420fd5a36f181ca608f9b70be90f9d82cee66c8484636fda5085290586071b5d9379d917e8141b993ffc4777859cd02971c916d6167dca6f50d83282c26 WHIRLPOOL 60abd5087e85d9969784b9f5a100934606a76da03b665533d9d4d1d13f4e2d15de233a71e67a32d18a5fbfe128c2c8bf04c0d4451de24e6ca4fbd8dd862e23ea
DIST grub-0.97.tar.gz 971783 SHA256 4e1d15d12dbd3e9208111d6b806ad5a9857ca8850c47877d36575b904559260b SHA512 c2bc9ffc8583aeae71cee9ddcc4418969768d4e3764d47307da54f93981c0109fb07d84b061b3a3628bd00ba4d14a54742bc04848110eb3ae8ca25dbfbaabadb WHIRLPOOL 0ad7f5dc035e2a3ad5fd29b6388f06fd12a8cc694117b4cbd42b5302433aa522db23566222d35219fe17fb95edb5090553156198507f70208eda5d858fd52dd5
DIST grub-2.00_p5107.tar.xz 5836972 SHA256 92fd8f93621e7083f32ba6ef407f2984e5d3caaafdc35fb3d89ed054ca7c4dac SHA512 a70017dfc837e8fa869af7f71ca6191973f3f44f5a93378100cff5da425aa132b3903a3602ab907ef070872bb7a17f0586c8415845645c596d0621a4929ca83d WHIRLPOOL 5d88806fc849d2ff78ca590312110be4505e2801fee7c68faba39a54a44eedc16eb25dad88f1ff0058dea2e98382944c7e7632ccfa6f4a171ff0ef00cf67fd2d
DIST grub-2.02~beta2.tar.xz 5798740 SHA256 f6c702b2a8ea58f27a2b02928bb77973cb5a827af08f63db38c471c0a01b418d SHA512 359903928febce1df53b3bd38aab701b4ea010dfad0dee434e853c865af4bbc60d115e61eac100c79f18d89aa78b2216ef20123f4ef04cc948ecbe226ea1a58c WHIRLPOOL f92e94f43888648484a972a0c82b0a2ac4dc7fbdd6e35ca8b11a6ee92168ac8cf7ee68987b84697ec46ad18189e5c5c9aee8105b91bb131cd7f6f499f45cd58f
DIST splash.xpm.gz 33856 SHA256 b95600f777331b0dd31d51c68f60f0e846e4c8b628857a41165f4e6b30e6acaf SHA512 5ae1f786f7d46a95a7061068d5b2b3ad64607c7b190d6f28379508c5dce67e26308325bfd637542a84855dfcf1ea3d143947326fdb189a6a8972208d3ead23da WHIRLPOOL d95b7b588ea8ac7c2c8c53eb8057aef21c825da6411afe3b7e864c606aeffaaebce8ae41ce3e979f277bd6b48a9e82a1f2ea8afc836213b56523d8a854227d7b
DIST unifont-5.1.20080820.pcf.gz 1379965 SHA256 122b9c470f29b70223b0e07404a6dfa7f339fcfa6ae74c024f478945af7a9a63 SHA512 8939e2bc82ca97b60e6678f3ff079a2be7ba9b702f2e8ee289e853af5823695f7baafbf14b674fc5e41071f2a6de4f2dadd56bf8b4653849dd756d59622f1649 WHIRLPOOL 0f083d66781cc4c3e554ebeda4e21843fa275ecf3e1908b4873fadfe37b7c88e8346a124656704bb1b29f89afee23d6301b4df0f19e788f454c60d47156fe78d
DIST unifont-7.0.01.pcf.gz 1358916 SHA256 7618a96ad50703213848af8ecae816828f528bb8ed179a749f7ca2b86eb15805 SHA512 f985e11729d18cb16d3e46fd1004242aa731a9b03ba16035f5954076686e8cdc39df9087daded5e044ead995b03650d8cf1bba9d060d65b5c3af630dbc9e3260 WHIRLPOOL da682398a22abd4282674d9a79b8fdd53e03054863cc166e43e2640dfb7f11c0b71cd3e42431f2086692f3a4202c2ecae9d6d7126249db0127e2da276aae7c9f
EBUILD grub-0.97-r12.ebuild 9233 SHA256 d5486666e1f8339a8308489607c9108cd34e8ebc696a956e2ff8dafad1c71815 SHA512 332a89395331ef04654345f960f2939340ce9b47ae6ac755e54f4ecc85f6243060890e7553b515468aaffd8346bbb5a0b7fbd26d23911b847f12c557854e96f1 WHIRLPOOL 1a20c9df999954ce431ca50eaaa5651721c939229b3a55d820445620218ffa64d43ba6251e88b1df6f54163f6914265596698db513a47d3c415ccaa01b51e61d
EBUILD grub-0.97-r13.ebuild 9384 SHA256 c694ab37f477548da2b98c9beb2c5432ddd799e40fcbf82273cd2da3fdb072e1 SHA512 615e4d11ba91c7bc2fcb926bfc791d1aa3151a06dd336f9597ccc5b22a4b6a1bbffde5f7622ec6cc4c04216c63d99becfc9cf38bcf8fed476773bd3b7930fad2 WHIRLPOOL 91d94e1f90393bb5137b791bfa2d73b418938091d81ec44b783d749ea08ee3a615a5ca4d07a841c66429f6ff7d480ae2ad4f0626576ddaab459f111106160761
EBUILD grub-2.00_p5107-r2.ebuild 8180 SHA256 1db3f6266e63332ef89d9c32895189fee3307a5ca2f687620df43c5a9d52547a SHA512 f95264d8eff99a1dd8420d64539aef4b7eb464edc8119076af7c175fac418d0e554ee7bb0ae4edb57c3a1a5b82f32da51db6b7ffc4a9a62dc7541d3694b65faa WHIRLPOOL d1dd247120f6de17aaea2899760fd7daf3eb242a3945f6ae2c03eae71c33e3c6bb780639a030d9ba46f4b9b8f23d383fc6559306e40a82be293466ce6d6270a5
EBUILD grub-2.02_beta2.ebuild 8187 SHA256 d87dd39f9f59e721a70f3263caf6367a460418c01622a5d38f6e4ab2bcf33d5e SHA512 a36467f0f75280514d7074e7e8fce3193bf8ff59bfef1fa33a5153a029c86f3ce29edfd0e09ff02f6badf363c422530d23b95a5d5ef43ba5fcae8b27916755db WHIRLPOOL d76fee7b4019ac6cd56905185193333e6c382a9cda293a42ec8e356646042a23485c6c5a0332a43cdd69d9760a50e5a868419593dce5dbe4edc037da16b00377
EBUILD grub-9999-r1.ebuild 8185 SHA256 708107511c09a6ba441a4c9c2809f3ab3e838e617142d696f8e7c931febfbff7 SHA512 c7e0c34c908e3740cbe74a0f52220eef261fad2724524d0435b1eecf81ca4c606db2a0712a6174d38cd848583578f759ebbeadb33c200e3503a9d0c699d72099 WHIRLPOOL e72e1b245a493b44dfd22210e44af3e32cd0ed1797f3887130d711348381c1244568d7bca4895196e493cf4dd0664d492001aa5c0e9bd8b5e9b44e89b5e7adb1
MISC ChangeLog 59191 SHA256 89096f446b5d12072f916fae749b6a29306cc1bf648d8f32dc96c4461877f852 SHA512 97fa02242b7b17c77f00e20aeae045b205f56940a73aa19146753b86e21b55b2c24df80c20a30e27641988ab5fb5451ef6ff401fc5beac764317533b3cf77f1d WHIRLPOOL 88c9d1a8457eb83c8a21c6fa4e56433a5c3473db7e19cef63621beafb2f1e86b4a9c8d0d9770d8d401ef3825c9aa8697eaa1dbb7b04b5f1d493810964918782a
MISC metadata.xml 838 SHA256 01beea9f20f03e00fdc21576a1311d3c21874980cdd57a9f2ed08a9d7cda1c46 SHA512 f6266f2f77db089d2f9289be079ef5a3637726b0906c5e96a7d8b7e29a8105cb7c48b9739f5607c0fdac2545db0e87f35132769f82b12db11a6f0018cc3c92f2 WHIRLPOOL 528d4f57ca38b0f0d4c34cd6bd60c7aeefc0fabd1e1e7be8efe0fcba04824d047a6e04288f1fbbd8e865c7435b53e84caffe7d4196809b157ee76e0d2be6f8df
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iF4EAREIAAYFAlOnGiIACgkQC77qH+pIQ6TFwQEAmbuMcXkJAwY8Wz2HGHy/DpDs
BRL78cuU871SPpQL9FQBAJinVEHFfS02306Yj6gFj9BCsq+ZUdJJ2lOSsw33s3AY
=LiX1
-----END PGP SIGNATURE-----

View File

@ -1,24 +0,0 @@
commit fd0df6d098b1e6a4f60275c48a3ec88d15ba1fbb
Author: Colin Watson <cjwatson@ubuntu.com>
Date: Fri Nov 29 12:19:36 2013 +0000
Fix build with FreeType 2.5.1
* util/grub-gen-asciih.c: Include FT_SYNTHESIS_H rather than
<freetype/ftsynth.h>, fixing build with FreeType 2.5.1.
* util/grub-gen-widthspec.c: Likewise.
* util/grub-mkfont.c: Likewise.
diff --git a/util/grub-mkfont.c b/util/grub-mkfont.c
index 0d8eb78..242dd01 100644
--- a/util/grub-mkfont.c
+++ b/util/grub-mkfont.c
@@ -43,7 +43,7 @@
#include FT_FREETYPE_H
#include FT_TRUETYPE_TAGS_H
#include FT_TRUETYPE_TABLES_H
-#include <freetype/ftsynth.h>
+#include FT_SYNTHESIS_H
#undef __FTERRORS_H__
#define FT_ERROR_START_LIST const char *ft_errmsgs[] = {

View File

@ -1,16 +0,0 @@
# This is a sample grub.conf for use with Genkernel, per the Gentoo handbook
# http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=10#doc_chap2
# If you are not using Genkernel and you need help creating this file, you
# should consult the handbook. Alternatively, consult the grub.conf.sample that
# is included with the Grub documentation.
default 0
timeout 30
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz
#title Gentoo Linux 2.6.24-r5
#root (hd0,0)
#kernel /boot/kernel-genkernel-x86-2.6.24-gentoo-r5 root=/dev/ram0 real_root=/dev/sda3
#initrd /boot/initramfs-genkernel-x86-2.6.24-gentoo-r5
# vim:ft=conf:

View File

@ -1,46 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/files/grub.default-2,v 1.4 2013/09/21 18:10:55 floppym Exp $
#
# To populate all changes in this file you need to regenerate your
# grub configuration file afterwards:
# 'grub2-mkconfig -o /boot/grub/grub.cfg'
#
# See the grub info page for documentation on possible variables and
# their associated values.
GRUB_DISTRIBUTOR="Gentoo"
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
# Append parameters to the linux kernel command line
# GRUB_CMDLINE_LINUX=""
# Append parameters to the linux kernel command line for non-recovery entries
#GRUB_CMDLINE_LINUX_DEFAULT=""
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal.
# Note that you can use only modes which your graphic card supports via VBE.
# You can see them in real GRUB with the command `vbeinfo'.
#GRUB_GFXMODE=640x480
# Path to theme spec txt file.
# The starfield is by default provided with use truetype.
# NOTE: when enabling custom theme, ensure you have required font/etc.
#GRUB_THEME="/boot/grub/themes/starfield/theme.txt"
# Background image used on graphical terminal.
# Can be in various bitmap formats.
#GRUB_BACKGROUND="/boot/grub/mybackground.png"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to kernel
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY=true

View File

@ -1,56 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/files/grub.default-3,v 1.2 2014/02/28 18:07:13 floppym Exp $
#
# To populate all changes in this file you need to regenerate your
# grub configuration file afterwards:
# 'grub2-mkconfig -o /boot/grub/grub.cfg'
#
# See the grub info page for documentation on possible variables and
# their associated values.
GRUB_DISTRIBUTOR="Gentoo"
# Default menu entry
#GRUB_DEFAULT=0
# Boot the default entry this many seconds after the menu is displayed
#GRUB_TIMEOUT=5
#GRUB_TIMEOUT_STYLE=menu
# Append parameters to the linux kernel command line
#GRUB_CMDLINE_LINUX=""
#
# Examples:
#
# Boot with network interface renaming disabled
# GRUB_CMDLINE_LINUX="net.ifnames=0"
#
# Boot with systemd instead of sysvinit (openrc)
# GRUB_CMDLINE_LINUX="init=/usr/lib/systemd/systemd"
# Append parameters to the linux kernel command line for non-recovery entries
#GRUB_CMDLINE_LINUX_DEFAULT=""
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal.
# Note that you can use only modes which your graphic card supports via VBE.
# You can see them in real GRUB with the command `vbeinfo'.
#GRUB_GFXMODE=640x480
# Path to theme spec txt file.
# The starfield is by default provided with use truetype.
# NOTE: when enabling custom theme, ensure you have required font/etc.
#GRUB_THEME="/boot/grub/themes/starfield/theme.txt"
# Background image used on graphical terminal.
# Can be in various bitmap formats.
#GRUB_BACKGROUND="/boot/grub/mybackground.png"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to kernel
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY=true

View File

@ -1,286 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r12.ebuild,v 1.5 2012/08/07 21:00:21 hwoarang Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
# If you need to roll a new grub-static distfile, here is how.
# - Robin H. Johnson <robbat2@gentoo.org> - 29 Nov 2010
# FEATURES='-noauto -noinfo -nodoc -noman -splitdebug nostrip' \
# USE='static -ncurses -netboot -custom-cflags' \
# PORTAGE_COMPRESS=true GRUB_STATIC_PACKAGE_BUILDING=1 ebuild \
# grub-${PVR}.ebuild clean package && \
# qtbz2 -s -j ${PKGDIR}/${CAT}/${PF}.tbz2 && \
# mv ${PF}.tar.bz2 ${DISTDIR}/grub-static-${PVR}.tar.bz2
inherit mount-boot eutils flag-o-matic toolchain-funcs autotools linux-info pax-utils
PATCHVER="1.14" # Should match the revision ideally
DESCRIPTION="GNU GRUB Legacy boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${P}.tar.gz
mirror://gnu-alpha/${PN}/${P}.tar.gz
mirror://gentoo/splash.xpm.gz
mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86 ~x86-fbsd"
IUSE="custom-cflags ncurses netboot static"
RDEPEND="ncurses? (
>=sys-libs/ncurses-5.2-r5
amd64? ( app-emulation/emul-linux-x86-baselibs )
)"
DEPEND="${RDEPEND}"
pkg_setup() {
case $(tc-arch) in
amd64) CONFIG_CHECK='~IA32_EMULATION' check_extra_config ;;
esac
}
src_unpack() {
unpack ${A}
cd "${S}"
# Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
# discovered in bug 160801. We can change this, however, using larger values
# for this variable means that Grub needs more memory to run and boot. For a
# kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
# value in make.conf, it is possible to make kernels ~16Mb in size, but it
# needs the kitchen sink built-in.
local t="custom"
if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
case $(tc-arch) in
amd64) GRUB_MAX_KERNEL_SIZE=9 ;;
x86) GRUB_MAX_KERNEL_SIZE=5 ;;
esac
t="default"
fi
einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
sed -i \
-e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
"${S}"/grub/asmstub.c \
|| die
if [[ -n ${PATCHVER} ]] ; then
EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
eautoreconf
fi
}
src_compile() {
filter-flags -fPIE #168834
use amd64 && multilib_toolchain_setup x86
unset BLOCK_SIZE #73499
### i686-specific code in the boot loader is a bad idea; disabling to ensure
### at least some compatibility if the hard drive is moved to an older or
### incompatible system.
# grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
# but the objcopy's (faulty) test fails if -fstack-protector is default.
# create a cache telling configure that objcopy is ok, and add -C to econf
# to make use of the cache.
#
# CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
# STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
# -fno-stack-protector detected by configure, removed from netboot's emake.
use custom-cflags || unset CFLAGS
export grub_cv_prog_objcopy_absolute=yes #79734
use static && append-ldflags -static
# Per bug 216625, the emul packages do not provide .a libs for performing
# suitable static linking
if use amd64 && use static ; then
if [ -z "${GRUB_STATIC_PACKAGE_BUILDING}" ]; then
die "You must use the grub-static package if you want a static Grub on amd64!"
else
eerror "You have set GRUB_STATIC_PACKAGE_BUILDING. This"
eerror "is specifically intended for building the tarballs for the"
eerror "grub-static package via USE='static -ncurses'."
eerror "All bets are now off."
ebeep 10
fi
fi
# build the net-bootable grub first, but only if "netboot" is set
if use netboot ; then
econf \
--libdir=/lib \
--datadir=/usr/lib/grub \
--exec-prefix=/ \
--disable-auto-linux-mem-opt \
--enable-diskless \
--enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
--enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
--enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
--enable-{tulip,via-rhine,w89c840}
emake w89c840_o_CFLAGS="-O" || die
mv -f stage2/{nbgrub,pxegrub} "${S}"/
mv -f stage2/stage2 stage2/stage2.netboot
emake -j1 clean || die
fi
# Now build the regular grub
# Note that FFS and UFS2 support are broken for now - stage1_5 files too big
econf \
--libdir=/lib \
--datadir=/usr/lib/grub \
--exec-prefix=/ \
--disable-auto-linux-mem-opt \
$(use_with ncurses curses)
# sanity check due to common failure
use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
emake || die "making regular stuff"
}
src_test() {
# non-default block size also give false pass/fails.
unset BLOCK_SIZE
emake -j1 check || die
}
src_install() {
emake DESTDIR="${D}" install || die
if use netboot ; then
exeinto /usr/lib/grub/${CHOST}
doexe nbgrub pxegrub stage2/stage2.netboot || die
fi
# bug 330745
pax-mark -m "${D}"/sbin/grub
dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO
newdoc docs/menu.lst grub.conf.sample
dodoc "${FILESDIR}"/grub.conf.gentoo
prepalldocs
[ -n "${GRUB_STATIC_PACKAGE_BUILDING}" ] && \
mv \
"${D}"/usr/share/doc/${PF} \
"${D}"/usr/share/doc/grub-static-${PF/grub-}
insinto /usr/share/grub
doins "${DISTDIR}"/splash.xpm.gz
}
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
mkdir -p "${dir}"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
ewarn
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually! For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
ebeep
fi
einfo "Copying files from /lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" | \
/sbin/grub --batch \
--device-map="${dir}"/device.map \
> /dev/null
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
grub-set-default --root-directory="${boot_dir}" default
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
# needs to be after we call setup_boot_dir
mount-boot_pkg_postinst
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,292 +0,0 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-0.97-r13.ebuild,v 1.3 2012/07/24 15:49:35 vapier Exp $
# XXX: we need to review menu.lst vs grub.conf handling. We've been converting
# all systems to grub.conf (and symlinking menu.lst to grub.conf), but
# we never updated any of the source code (it still all wants menu.lst),
# and there is no indication that upstream is making the transition.
# If you need to roll a new grub-static distfile, here is how.
# - Robin H. Johnson <robbat2@gentoo.org> - 29 Nov 2010
# FEATURES='-noauto -noinfo -nodoc -noman -splitdebug nostrip' \
# USE='static -ncurses -netboot -custom-cflags' \
# PORTAGE_COMPRESS=true GRUB_STATIC_PACKAGE_BUILDING=1 ebuild \
# grub-${PVR}.ebuild clean package && \
# qtbz2 -s -j ${PKGDIR}/${CAT}/${PF}.tbz2 && \
# mv ${PF}.tar.bz2 ${DISTDIR}/grub-static-${PVR}.tar.bz2
EAPI="4"
inherit eutils mount-boot toolchain-funcs linux-info flag-o-matic autotools pax-utils multiprocessing
PATCHVER="1.14" # Should match the revision ideally
DESCRIPTION="GNU GRUB Legacy boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
SRC_URI="mirror://gentoo/${P}.tar.gz
mirror://gnu-alpha/${PN}/${P}.tar.gz
mirror://gentoo/splash.xpm.gz
mirror://gentoo/${P}-patches-${PATCHVER}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~x86-fbsd"
IUSE="custom-cflags ncurses netboot static"
LIB_DEPEND="ncurses? (
>=sys-libs/ncurses-5.2-r5[static-libs(+)]
amd64? ( app-emulation/emul-linux-x86-baselibs )
)"
RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
DEPEND="${RDEPEND}
static? ( ${LIB_DEPEND} )"
pkg_setup() {
case $(tc-arch) in
amd64) CONFIG_CHECK='~IA32_EMULATION' check_extra_config ;;
esac
}
src_prepare() {
# Grub will not handle a kernel larger than EXTENDED_MEMSIZE Mb as
# discovered in bug 160801. We can change this, however, using larger values
# for this variable means that Grub needs more memory to run and boot. For a
# kernel of size N, Grub needs (N+1)*2. Advanced users should set a custom
# value in make.conf, it is possible to make kernels ~16Mb in size, but it
# needs the kitchen sink built-in.
local t="custom"
if [[ -z ${GRUB_MAX_KERNEL_SIZE} ]] ; then
case $(tc-arch) in
amd64) GRUB_MAX_KERNEL_SIZE=9 ;;
x86) GRUB_MAX_KERNEL_SIZE=5 ;;
esac
t="default"
fi
einfo "Grub will support the ${t} maximum kernel size of ${GRUB_MAX_KERNEL_SIZE} Mb (GRUB_MAX_KERNEL_SIZE)"
sed -i \
-e "/^#define.*EXTENDED_MEMSIZE/s,3,${GRUB_MAX_KERNEL_SIZE},g" \
"${S}"/grub/asmstub.c \
|| die
if [[ -n ${PATCHVER} ]] ; then
EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
eautoreconf
fi
}
src_configure() {
filter-flags -fPIE #168834
use amd64 && multilib_toolchain_setup x86
unset BLOCK_SIZE #73499
### i686-specific code in the boot loader is a bad idea; disabling to ensure
### at least some compatibility if the hard drive is moved to an older or
### incompatible system.
# grub-0.95 added -fno-stack-protector detection, to disable ssp for stage2,
# but the objcopy's (faulty) test fails if -fstack-protector is default.
# create a cache telling configure that objcopy is ok, and add -C to econf
# to make use of the cache.
#
# CFLAGS has to be undefined running econf, else -fno-stack-protector detection fails.
# STAGE2_CFLAGS is not allowed to be used on emake command-line, it overwrites
# -fno-stack-protector detected by configure, removed from netboot's emake.
use custom-cflags || unset CFLAGS
export grub_cv_prog_objcopy_absolute=yes #79734
use static && append-ldflags -static
# Per bug 216625, the emul packages do not provide .a libs for performing
# suitable static linking
if use amd64 && use static ; then
if [[ -z ${GRUB_STATIC_PACKAGE_BUILDING} ]] ; then
die "You must use the grub-static package if you want a static Grub on amd64!"
else
eerror "You have set GRUB_STATIC_PACKAGE_BUILDING. This"
eerror "is specifically intended for building the tarballs for the"
eerror "grub-static package via USE='static -ncurses'."
eerror "All bets are now off."
fi
fi
multijob_init
# build the net-bootable grub first, but only if "netboot" is set
if use netboot ; then
(
multijob_child_init
mkdir -p "${WORKDIR}"/netboot
pushd "${WORKDIR}"/netboot >/dev/null
ECONF_SOURCE=${S} \
econf \
--libdir=/lib \
--datadir=/usr/lib/grub \
--exec-prefix=/ \
--disable-auto-linux-mem-opt \
--enable-diskless \
--enable-{3c{5{03,07,09,29,95},90x},cs89x0,davicom,depca,eepro{,100}} \
--enable-{epic100,exos205,ni5210,lance,ne2100,ni{50,65}10,natsemi} \
--enable-{ne,ns8390,wd,otulip,rtl8139,sis900,sk-g16,smc9000,tiara} \
--enable-{tulip,via-rhine,w89c840}
popd >/dev/null
) &
multijob_post_fork
fi
# Now build the regular grub
# Note that FFS and UFS2 support are broken for now - stage1_5 files too big
econf \
--libdir=/lib \
--datadir=/usr/lib/grub \
--exec-prefix=/ \
--disable-auto-linux-mem-opt \
$(use_with ncurses curses)
# sanity check due to common failure
use ncurses && ! grep -qs "HAVE_LIBCURSES.*1" config.h && die "USE=ncurses but curses not found"
multijob_finish
}
src_compile() {
use netboot && emake -C "${WORKDIR}"/netboot w89c840_o_CFLAGS="-O"
emake
}
src_test() {
# non-default block size also give false pass/fails.
unset BLOCK_SIZE
emake -j1 check
}
src_install() {
default
if use netboot ; then
exeinto /usr/lib/grub/${CHOST}
doexe "${WORKDIR}"/netboot/stage2/{nbgrub,pxegrub}
newexe "${WORKDIR}"/netboot/stage2/stage2 stage2.netboot
fi
pax-mark -m "${D}"/sbin/grub #330745
newdoc docs/menu.lst grub.conf.sample
dodoc "${FILESDIR}"/grub.conf.gentoo
[[ -n ${GRUB_STATIC_PACKAGE_BUILDING} ]] && \
mv "${D}"/usr/share/doc/{${PF},grub-static-${PF/grub-}}
insinto /usr/share/grub
doins "${DISTDIR}"/splash.xpm.gz
}
setup_boot_dir() {
local boot_dir=$1
local dir=${boot_dir}
mkdir -p "${dir}"
[[ ! -L ${dir}/boot ]] && ln -s . "${dir}/boot"
dir="${dir}/grub"
if [[ ! -e ${dir} ]] ; then
mkdir "${dir}" || die
fi
# change menu.lst to grub.conf
if [[ ! -e ${dir}/grub.conf ]] && [[ -e ${dir}/menu.lst ]] ; then
mv -f "${dir}"/menu.lst "${dir}"/grub.conf
ewarn "*** IMPORTANT NOTE: menu.lst has been renamed to grub.conf"
echo
fi
if [[ ! -e ${dir}/menu.lst ]]; then
einfo "Linking from new grub.conf name to menu.lst"
ln -snf grub.conf "${dir}"/menu.lst
fi
if [[ -e ${dir}/stage2 ]] ; then
mv "${dir}"/stage2{,.old}
ewarn "*** IMPORTANT NOTE: you must run grub and install"
ewarn "the new version's stage1 to your MBR. Until you do,"
ewarn "stage1 and stage2 will still be the old version, but"
ewarn "later stages will be the new version, which could"
ewarn "cause problems such as an unbootable system."
ewarn
ewarn "This means you must use either grub-install or perform"
ewarn "root/setup manually."
ewarn
ewarn "For more help, see the handbook:"
ewarn "http://www.gentoo.org/doc/en/handbook/handbook-${ARCH}.xml?part=1&chap=10#grub-install-auto"
echo
fi
einfo "Copying files from /lib/grub and /usr/share/grub to ${dir}"
for x in \
"${ROOT}"/lib*/grub/*/* \
"${ROOT}"/usr/share/grub/* ; do
[[ -f ${x} ]] && cp -p "${x}" "${dir}"/
done
if [[ ! -e ${dir}/grub.conf ]] ; then
s="${ROOT}/usr/share/doc/${PF}/grub.conf.gentoo"
[[ -e "${s}" ]] && cat "${s}" >${dir}/grub.conf
[[ -e "${s}.gz" ]] && zcat "${s}.gz" >${dir}/grub.conf
[[ -e "${s}.bz2" ]] && bzcat "${s}.bz2" >${dir}/grub.conf
fi
# Per bug 218599, we support grub.conf.install for users that want to run a
# specific set of Grub setup commands rather than the default ones.
grub_config=${dir}/grub.conf.install
[[ -e ${grub_config} ]] || grub_config=${dir}/grub.conf
if [[ -e ${grub_config} ]] ; then
egrep \
-v '^[[:space:]]*(#|$|default|fallback|initrd|password|splashimage|timeout|title)' \
"${grub_config}" | \
/sbin/grub --batch \
--device-map="${dir}"/device.map \
> /dev/null
fi
# the grub default commands silently piss themselves if
# the default file does not exist ahead of time
if [[ ! -e ${dir}/default ]] ; then
grub-set-default --root-directory="${boot_dir}" default
fi
einfo "Grub has been installed to ${boot_dir} successfully."
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -n ${DONT_MOUNT_BOOT} ]]; then
elog "WARNING: you have DONT_MOUNT_BOOT in effect, so you must apply"
elog "the following instructions for your /boot!"
elog "Neglecting to do so may cause your system to fail to boot!"
elog
else
setup_boot_dir "${ROOT}"/boot
# Trailing output because if this is run from pkg_postinst, it gets mixed into
# the other output.
einfo ""
fi
elog "To interactively install grub files to another device such as a USB"
elog "stick, just run the following and specify the directory as prompted:"
elog " emerge --config =${PF}"
elog "Alternately, you can export GRUB_ALT_INSTALLDIR=/path/to/use to tell"
elog "grub where to install in a non-interactive way."
# needs to be after we call setup_boot_dir
mount-boot_pkg_postinst
}
pkg_config() {
local dir
if [ ! -d "${GRUB_ALT_INSTALLDIR}" ]; then
einfo "Enter the directory where you want to setup grub:"
read dir
else
dir="${GRUB_ALT_INSTALLDIR}"
fi
setup_boot_dir "${dir}"
}

View File

@ -1,318 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-2.00_p5107-r2.ebuild,v 1.8 2014/03/15 03:31:16 floppym Exp $
EAPI=5
if [[ ${PV} == 9999 ]]; then
AUTOTOOLS_AUTORECONF=1
GRUB_AUTOGEN=1
fi
inherit autotools-utils bash-completion-r1 eutils flag-o-matic mount-boot multibuild pax-utils toolchain-funcs versionator
if [[ ${PV} != 9999 ]]; then
if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then
# The quote style is to work with <=bash-4.2 and >=bash-4.3 #503860
MY_P=${P/_/'~'}
SRC_URI="mirror://gnu-alpha/${PN}/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
mirror://gentoo/${P}.tar.xz
http://dev.gentoo.org/~floppym/dist/${P}.tar.xz"
S=${WORKDIR}/${P%_*}
fi
KEYWORDS="amd64 x86"
PATCHES=(
"${FILESDIR}/grub-2.00-freetype-2.5.1.patch"
)
else
inherit git-r3
EGIT_REPO_URI="git://git.sv.gnu.org/grub.git
http://git.savannah.gnu.org/r/grub.git"
fi
DEJAVU=dejavu-sans-ttf-2.34
UNIFONT=unifont-5.1.20080820.pcf
SRC_URI+=" truetype? (
mirror://sourceforge/dejavu/${DEJAVU}.zip
http://unifoundry.com/${UNIFONT}.gz
)"
DESCRIPTION="GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
# Includes licenses for dejavu and unifont
LICENSE="GPL-3 truetype? ( BitstreamVera GPL-2-with-font-exception )"
SLOT="2"
IUSE="custom-cflags debug device-mapper doc efiemu mount +multislot nls static sdl test truetype libzfs"
GRUB_ALL_PLATFORMS=(
# everywhere:
emu
# mips only:
qemu-mips yeeloong
# amd64, x86, ppc, ppc64:
ieee1275
# amd64, x86:
coreboot multiboot efi-32 pc qemu
# amd64, ia64:
efi-64
)
IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}"
REQUIRED_USE="grub_platforms_qemu? ( truetype )
grub_platforms_yeeloong? ( truetype )"
# os-prober: Used on runtime to detect other OSes
# xorriso (dev-libs/libisoburn): Used on runtime for mkrescue
RDEPEND="
app-arch/xz-utils
>=sys-libs/ncurses-5.2-r5
debug? (
sdl? ( media-libs/libsdl )
)
device-mapper? ( >=sys-fs/lvm2-2.02.45 )
libzfs? ( sys-fs/zfs )
mount? ( sys-fs/fuse )
truetype? ( media-libs/freetype )
ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
"
DEPEND="${RDEPEND}
app-misc/pax-utils
>=dev-lang/python-2.5.2
sys-devel/flex
sys-devel/bison
sys-apps/help2man
sys-apps/texinfo
static? (
app-arch/xz-utils[static-libs(+)]
truetype? (
app-arch/bzip2[static-libs(+)]
media-libs/freetype[static-libs(+)]
sys-libs/zlib[static-libs(+)]
)
)
test? (
dev-libs/libisoburn
app-emulation/qemu
)
truetype? ( app-arch/unzip )
"
RDEPEND+="
kernel_linux? (
grub_platforms_efi-32? ( sys-boot/efibootmgr )
grub_platforms_efi-64? ( sys-boot/efibootmgr )
)
!multislot? ( !sys-boot/grub:0 )
nls? ( sys-devel/gettext )
"
if [[ -n ${GRUB_AUTOGEN} ]]; then
DEPEND+=" >=sys-devel/autogen-5.10"
fi
STRIP_MASK="*/grub/*/*.{mod,img}"
RESTRICT="test"
QA_EXECSTACK="
usr/bin/grub*
usr/sbin/grub*
usr/lib*/grub/*/*.mod
usr/lib*/grub/*/*.module
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
"
QA_WX_LOAD="
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
usr/lib*/grub/*/*.image
"
QA_PRESTRIPPED="
usr/lib.*/grub/.*/kernel.img
"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]]; then
# Bug 439082
if ! version_is_at_least 4.8 "$(gcc-version)" &&
$(tc-getLD) --version | grep -q "GNU gold"; then
eerror "GRUB does not function correctly when built with the gold linker."
eerror "Please select the bfd linker with binutils-config."
die "GNU gold detected"
fi
fi
}
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
fi
default_src_unpack
}
src_prepare() {
[[ ${PATCHES} ]] && epatch "${PATCHES[@]}"
sed -i -e /autoreconf/d autogen.sh || die
if use multislot; then
# fix texinfo file name, bug 416035
sed -i -e 's/^\* GRUB:/* GRUB2:/' -e 's/(grub)/(grub2)/' docs/grub.texi || die
fi
epatch_user
if [[ -n ${GRUB_AUTOGEN} ]]; then
bash autogen.sh || die
fi
if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
autopoint() { return 0; }
eautoreconf
fi
}
setup_fonts() {
ln -s "${WORKDIR}/${DEJAVU}/ttf/DejaVuSans.ttf" DejaVuSans.ttf || die
ln -s "${WORKDIR}/${UNIFONT}" unifont.pcf || die
}
grub_configure() {
local platform
case ${MULTIBUILD_VARIANT} in
efi-32)
platform=efi
if [[ ${CTARGET:-${CHOST}} == x86_64* ]]; then
local CTARGET=${CTARGET:-i386}
fi ;;
efi-64)
platform=efi
if [[ ${CTARGET:-${CHOST}} == i?86* ]]; then
local CTARGET=${CTARGET:-x86_64}
local TARGET_CFLAGS="-Os -march=x86-64 ${TARGET_CFLAGS}"
local TARGET_CPPFLAGS="-march=x86-64 ${TARGET_CPPFLAGS}"
export TARGET_CFLAGS TARGET_CPPFLAGS
fi ;;
guessed) ;;
*) platform=${MULTIBUILD_VARIANT} ;;
esac
local myeconfargs=(
--disable-werror
--program-prefix=
--libdir="${EPREFIX}"/usr/lib
--htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
$(use_enable debug mm-debug)
$(use_enable debug grub-emu-usb)
$(use_enable device-mapper)
$(use_enable mount grub-mount)
$(use_enable nls)
$(use_enable truetype grub-mkfont)
$(use_enable libzfs)
$(use sdl && use_enable debug grub-emu-sdl)
${platform:+--with-platform=}${platform}
# Let configure detect this where supported
$(usex efiemu '' '--disable-efiemu')
)
if use multislot; then
myeconfargs+=( --program-transform-name="s,grub,grub2," )
fi
if use truetype; then
mkdir -p "${BUILD_DIR}" || die
run_in_build_dir setup_fonts
fi
autotools-utils_src_configure
}
src_configure() {
use custom-cflags || unset CCASFLAGS CFLAGS CPPFLAGS LDFLAGS
use static && export HOST_LDFLAGS="${HOST_LDFLAGS} -static"
if version_is_at_least 4.8 "$(gcc-version)"; then
export TARGET_LDFLAGS+=" -fuse-ld=bfd"
fi
tc-export CC NM OBJCOPY STRIP
export TARGET_CC=${TARGET_CC:-${CC}}
tc-export BUILD_CC # Bug 485592
# Portage will take care of cleaning up GRUB_PLATFORMS
MULTIBUILD_VARIANTS=( ${GRUB_PLATFORMS:-guessed} )
multibuild_parallel_foreach_variant grub_configure
}
src_compile() {
# Sandbox bug 404013.
use libzfs && addpredict /etc/dfs:/dev/zfs
multibuild_foreach_variant autotools-utils_src_compile
use doc && multibuild_for_best_variant \
autotools-utils_src_compile -C docs html
}
src_test() {
# The qemu dependency is a bit complex.
# You will need to adjust QEMU_SOFTMMU_TARGETS to match the cpu/platform.
multibuild_foreach_variant autotools-utils_src_test
}
src_install() {
multibuild_foreach_variant autotools-utils_src_install \
bashcompletiondir="$(get_bashcompdir)"
use doc && multibuild_for_best_variant run_in_build_dir \
emake -C docs DESTDIR="${D}" install-html
if use multislot; then
mv "${ED%/}"/usr/share/info/grub{,2}.info || die
fi
insinto /etc/default
newins "${FILESDIR}"/grub.default-2 grub
cd "${ED}" || die
pax-mark mpes $(scanelf -BF %F usr/{bin,sbin})
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -e "${ROOT%/}/boot/grub2/grub.cfg" && ! -e "${ROOT%/}/boot/grub/grub.cfg" ]]; then
mkdir -p "${ROOT%/}/boot/grub"
ln -s ../grub2/grub.cfg "${ROOT%/}/boot/grub/grub.cfg"
fi
mount-boot_pkg_postinst
elog "For information on how to configure GRUB2 please refer to the guide:"
elog " http://wiki.gentoo.org/wiki/GRUB2_Quick_Start"
if has_version 'sys-boot/grub:0'; then
elog "A migration guide for GRUB Legacy users is available:"
elog " http://www.gentoo.org/doc/en/grub2-migration.xml"
fi
if [[ -z ${REPLACING_VERSIONS} ]]; then
if ! has_version sys-boot/os-prober; then
elog "Install sys-boot/os-prober to enable detection of other operating systems using grub2-mkconfig."
fi
if ! has_version dev-libs/libisoburn; then
elog "Install dev-libs/libisoburn to enable creation of rescue media using grub2-mkrescue."
fi
else
local v
for v in ${REPLACING_VERSIONS}; do
if use multislot && ! version_is_at_least 2.00_p5107-r1 ${v}; then
ewarn "The grub directory has changed from /boot/grub2 to /boot/grub."
ewarn "Please run grub2-install and grub2-mkconfig -o /boot/grub/grub.cfg."
break
fi
done
fi
}

View File

@ -1,320 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-2.02_beta2.ebuild,v 1.8 2014/06/22 18:02:08 floppym Exp $
EAPI=5
if [[ ${PV} == 9999 ]]; then
AUTOTOOLS_AUTORECONF=1
GRUB_AUTOGEN=1
fi
if [[ -n ${GRUB_AUTOGEN} ]]; then
PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3,3_4} )
inherit python-any-r1
fi
inherit autotools-utils bash-completion-r1 eutils flag-o-matic mount-boot multibuild pax-utils toolchain-funcs versionator
if [[ ${PV} != 9999 ]]; then
if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then
# The quote style is to work with <=bash-4.2 and >=bash-4.3 #503860
MY_P=${P/_/'~'}
SRC_URI="mirror://gnu-alpha/${PN}/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
mirror://gentoo/${P}.tar.xz
http://dev.gentoo.org/~floppym/dist/${P}.tar.xz"
S=${WORKDIR}/${P%_*}
fi
KEYWORDS="~amd64 ~x86"
PATCHES=()
else
inherit git-r3
EGIT_REPO_URI="git://git.sv.gnu.org/grub.git
http://git.savannah.gnu.org/r/grub.git"
fi
DEJAVU=dejavu-sans-ttf-2.34
UNIFONT=unifont-7.0.01
SRC_URI+=" truetype? (
mirror://sourceforge/dejavu/${DEJAVU}.zip
mirror://gnu/unifont/${UNIFONT}/${UNIFONT}.pcf.gz
)"
DESCRIPTION="GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
# Includes licenses for dejavu and unifont
LICENSE="GPL-3 truetype? ( BitstreamVera GPL-2-with-font-exception )"
SLOT="2"
IUSE="debug device-mapper doc efiemu mount +multislot nls static sdl test truetype libzfs"
GRUB_ALL_PLATFORMS=(
# everywhere:
emu
# mips only:
qemu-mips yeeloong
# amd64, x86, ppc, ppc64:
ieee1275
# amd64, x86:
coreboot multiboot efi-32 pc qemu xen
# amd64, ia64:
efi-64
)
IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}"
REQUIRED_USE="grub_platforms_qemu? ( truetype )
grub_platforms_yeeloong? ( truetype )"
# os-prober: Used on runtime to detect other OSes
# xorriso (dev-libs/libisoburn): Used on runtime for mkrescue
RDEPEND="
app-arch/xz-utils
>=sys-libs/ncurses-5.2-r5
debug? (
sdl? ( media-libs/libsdl )
)
device-mapper? ( >=sys-fs/lvm2-2.02.45 )
libzfs? ( sys-fs/zfs )
mount? ( sys-fs/fuse )
truetype? ( media-libs/freetype )
ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
app-misc/pax-utils
sys-devel/flex
sys-devel/bison
sys-apps/help2man
sys-apps/texinfo
grub_platforms_xen? ( app-emulation/xen-tools )
static? (
app-arch/xz-utils[static-libs(+)]
truetype? (
app-arch/bzip2[static-libs(+)]
media-libs/freetype[static-libs(+)]
sys-libs/zlib[static-libs(+)]
)
)
test? (
dev-libs/libisoburn
app-emulation/qemu
)
truetype? ( app-arch/unzip )
"
RDEPEND+="
kernel_linux? (
grub_platforms_efi-32? ( sys-boot/efibootmgr )
grub_platforms_efi-64? ( sys-boot/efibootmgr )
)
!multislot? ( !sys-boot/grub:0 )
nls? ( sys-devel/gettext )
"
STRIP_MASK="*/grub/*/*.{mod,img}"
RESTRICT="test"
QA_EXECSTACK="
usr/bin/grub*-emu*
usr/lib*/grub/*/*.mod
usr/lib*/grub/*/*.module
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
"
QA_WX_LOAD="
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
usr/lib*/grub/*/*.image
"
QA_PRESTRIPPED="
usr/lib.*/grub/.*/kernel.img
"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]]; then
# Bug 439082
if ! version_is_at_least 4.8 "$(gcc-version)" &&
$(tc-getLD) --version | grep -q "GNU gold"; then
eerror "GRUB does not function correctly when built with the gold linker."
eerror "Please select the bfd linker with binutils-config."
die "GNU gold detected"
fi
fi
}
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
fi
default_src_unpack
}
src_prepare() {
[[ ${PATCHES} ]] && epatch "${PATCHES[@]}"
sed -i -e /autoreconf/d autogen.sh || die
if use multislot; then
# fix texinfo file name, bug 416035
sed -i -e 's/^\* GRUB:/* GRUB2:/' -e 's/(grub)/(grub2)/' docs/grub.texi || die
fi
epatch_user
if [[ -n ${GRUB_AUTOGEN} ]]; then
python_setup
bash autogen.sh || die
fi
if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
autopoint() { return 0; }
eautoreconf
fi
}
setup_fonts() {
ln -s "${WORKDIR}/${DEJAVU}/ttf/DejaVuSans.ttf" DejaVuSans.ttf || die
ln -s "${WORKDIR}/${UNIFONT}.pcf" unifont.pcf || die
}
grub_configure() {
local platform
case ${MULTIBUILD_VARIANT} in
efi-32)
platform=efi
if [[ ${CTARGET:-${CHOST}} == x86_64* ]]; then
local CTARGET=${CTARGET:-i386}
fi ;;
efi-64)
platform=efi
if [[ ${CTARGET:-${CHOST}} == i?86* ]]; then
local CTARGET=${CTARGET:-x86_64}
local TARGET_CFLAGS="-Os -march=x86-64 ${TARGET_CFLAGS}"
local TARGET_CPPFLAGS="-march=x86-64 ${TARGET_CPPFLAGS}"
export TARGET_CFLAGS TARGET_CPPFLAGS
fi ;;
guessed) ;;
*) platform=${MULTIBUILD_VARIANT} ;;
esac
local myeconfargs=(
--disable-werror
--program-prefix=
--libdir="${EPREFIX}"/usr/lib
--htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
$(use_enable debug mm-debug)
$(use_enable debug grub-emu-usb)
$(use_enable device-mapper)
$(use_enable mount grub-mount)
$(use_enable nls)
$(use_enable truetype grub-mkfont)
$(use_enable libzfs)
$(use sdl && use_enable debug grub-emu-sdl)
${platform:+--with-platform=}${platform}
# Let configure detect this where supported
$(usex efiemu '' '--disable-efiemu')
)
if use multislot; then
myeconfargs+=( --program-transform-name="s,grub,grub2," )
fi
if use truetype; then
mkdir -p "${BUILD_DIR}" || die
run_in_build_dir setup_fonts
fi
autotools-utils_src_configure
}
src_configure() {
# Bug 508758.
replace-flags -O3 -O2
# We don't want to leak flags onto boot code.
export HOST_CCASFLAGS=${CCASFLAGS}
export HOST_CFLAGS=${CFLAGS}
export HOST_CPPFLAGS=${CPPFLAGS}
export HOST_LDFLAGS=${LDFLAGS}
unset CCASFLAGS CFLAGS CPPFLAGS LDFLAGS
use static && HOST_LDFLAGS+=" -static"
if version_is_at_least 4.8 "$(gcc-version)"; then
export TARGET_LDFLAGS+=" -fuse-ld=bfd"
fi
tc-export CC NM OBJCOPY STRIP
export TARGET_CC=${TARGET_CC:-${CC}}
tc-export BUILD_CC # Bug 485592
# Portage will take care of cleaning up GRUB_PLATFORMS
MULTIBUILD_VARIANTS=( ${GRUB_PLATFORMS:-guessed} )
multibuild_parallel_foreach_variant grub_configure
}
src_compile() {
# Sandbox bug 404013.
use libzfs && addpredict /etc/dfs:/dev/zfs
multibuild_foreach_variant autotools-utils_src_compile
use doc && multibuild_for_best_variant \
autotools-utils_src_compile -C docs html
}
src_test() {
# The qemu dependency is a bit complex.
# You will need to adjust QEMU_SOFTMMU_TARGETS to match the cpu/platform.
multibuild_foreach_variant autotools-utils_src_test
}
src_install() {
multibuild_foreach_variant autotools-utils_src_install \
bashcompletiondir="$(get_bashcompdir)"
use doc && multibuild_for_best_variant run_in_build_dir \
emake -C docs DESTDIR="${D}" install-html
if use multislot; then
mv "${ED%/}"/usr/share/info/grub{,2}.info || die
fi
insinto /etc/default
newins "${FILESDIR}"/grub.default-3 grub
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -e "${ROOT%/}/boot/grub2/grub.cfg" ]]; then
ewarn "The grub directory has changed from /boot/grub2 to /boot/grub."
ewarn "Please run grub2-install and grub2-mkconfig -o /boot/grub/grub.cfg."
if [[ ! -e "${ROOT%/}/boot/grub/grub.cfg" ]]; then
mkdir -p "${ROOT%/}/boot/grub"
ln -s ../grub2/grub.cfg "${ROOT%/}/boot/grub/grub.cfg"
fi
fi
mount-boot_pkg_postinst
elog "For information on how to configure GRUB2 please refer to the guide:"
elog " http://wiki.gentoo.org/wiki/GRUB2_Quick_Start"
if has_version 'sys-boot/grub:0'; then
elog "A migration guide for GRUB Legacy users is available:"
elog " http://www.gentoo.org/doc/en/grub2-migration.xml"
fi
if [[ -z ${REPLACING_VERSIONS} ]]; then
if ! has_version sys-boot/os-prober; then
elog "Install sys-boot/os-prober to enable detection of other operating systems using grub2-mkconfig."
fi
if ! has_version dev-libs/libisoburn; then
elog "Install dev-libs/libisoburn to enable creation of rescue media using grub2-mkrescue."
fi
fi
}

View File

@ -1,320 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/grub-9999-r1.ebuild,v 1.17 2014/06/22 18:02:08 floppym Exp $
EAPI=5
if [[ ${PV} == 9999 ]]; then
AUTOTOOLS_AUTORECONF=1
GRUB_AUTOGEN=1
fi
if [[ -n ${GRUB_AUTOGEN} ]]; then
PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3,3_4} )
inherit python-any-r1
fi
inherit autotools-utils bash-completion-r1 eutils flag-o-matic mount-boot multibuild pax-utils toolchain-funcs versionator
if [[ ${PV} != 9999 ]]; then
if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then
# The quote style is to work with <=bash-4.2 and >=bash-4.3 #503860
MY_P=${P/_/'~'}
SRC_URI="mirror://gnu-alpha/${PN}/${MY_P}.tar.xz"
S=${WORKDIR}/${MY_P}
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz
mirror://gentoo/${P}.tar.xz
http://dev.gentoo.org/~floppym/dist/${P}.tar.xz"
S=${WORKDIR}/${P%_*}
fi
KEYWORDS="~amd64 ~x86"
PATCHES=()
else
inherit git-r3
EGIT_REPO_URI="git://git.sv.gnu.org/grub.git
http://git.savannah.gnu.org/r/grub.git"
fi
DEJAVU=dejavu-sans-ttf-2.34
UNIFONT=unifont-7.0.01
SRC_URI+=" truetype? (
mirror://sourceforge/dejavu/${DEJAVU}.zip
mirror://gnu/unifont/${UNIFONT}/${UNIFONT}.pcf.gz
)"
DESCRIPTION="GNU GRUB boot loader"
HOMEPAGE="http://www.gnu.org/software/grub/"
# Includes licenses for dejavu and unifont
LICENSE="GPL-3 truetype? ( BitstreamVera GPL-2-with-font-exception )"
SLOT="2"
IUSE="debug device-mapper doc efiemu mount +multislot nls static sdl test truetype libzfs"
GRUB_ALL_PLATFORMS=(
# everywhere:
emu
# mips only:
qemu-mips yeeloong
# amd64, x86, ppc, ppc64:
ieee1275
# amd64, x86:
coreboot multiboot efi-32 pc qemu xen
# amd64, ia64:
efi-64
)
IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}"
REQUIRED_USE="grub_platforms_qemu? ( truetype )
grub_platforms_yeeloong? ( truetype )"
# os-prober: Used on runtime to detect other OSes
# xorriso (dev-libs/libisoburn): Used on runtime for mkrescue
RDEPEND="
app-arch/xz-utils
>=sys-libs/ncurses-5.2-r5
debug? (
sdl? ( media-libs/libsdl )
)
device-mapper? ( >=sys-fs/lvm2-2.02.45 )
libzfs? ( sys-fs/zfs )
mount? ( sys-fs/fuse )
truetype? ( media-libs/freetype )
ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils )
"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
app-misc/pax-utils
sys-devel/flex
sys-devel/bison
sys-apps/help2man
sys-apps/texinfo
grub_platforms_xen? ( app-emulation/xen-tools )
static? (
app-arch/xz-utils[static-libs(+)]
truetype? (
app-arch/bzip2[static-libs(+)]
media-libs/freetype[static-libs(+)]
sys-libs/zlib[static-libs(+)]
)
)
test? (
dev-libs/libisoburn
app-emulation/qemu
)
truetype? ( app-arch/unzip )
"
RDEPEND+="
kernel_linux? (
grub_platforms_efi-32? ( sys-boot/efibootmgr )
grub_platforms_efi-64? ( sys-boot/efibootmgr )
)
!multislot? ( !sys-boot/grub:0 )
nls? ( sys-devel/gettext )
"
STRIP_MASK="*/grub/*/*.{mod,img}"
RESTRICT="test"
QA_EXECSTACK="
usr/bin/grub*-emu*
usr/lib*/grub/*/*.mod
usr/lib*/grub/*/*.module
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
"
QA_WX_LOAD="
usr/lib*/grub/*/kernel.exec
usr/lib*/grub/*/kernel.img
usr/lib*/grub/*/*.image
"
QA_PRESTRIPPED="
usr/lib.*/grub/.*/kernel.img
"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]]; then
# Bug 439082
if ! version_is_at_least 4.8 "$(gcc-version)" &&
$(tc-getLD) --version | grep -q "GNU gold"; then
eerror "GRUB does not function correctly when built with the gold linker."
eerror "Please select the bfd linker with binutils-config."
die "GNU gold detected"
fi
fi
}
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
fi
default_src_unpack
}
src_prepare() {
[[ ${PATCHES} ]] && epatch "${PATCHES[@]}"
sed -i -e /autoreconf/d autogen.sh || die
if use multislot; then
# fix texinfo file name, bug 416035
sed -i -e 's/^\* GRUB:/* GRUB2:/' -e 's/(grub)/(grub2)/' docs/grub.texi || die
fi
epatch_user
if [[ -n ${GRUB_AUTOGEN} ]]; then
python_setup
bash autogen.sh || die
fi
if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
autopoint() { return 0; }
eautoreconf
fi
}
setup_fonts() {
ln -s "${WORKDIR}/${DEJAVU}/ttf/DejaVuSans.ttf" DejaVuSans.ttf || die
ln -s "${WORKDIR}/${UNIFONT}.pcf" unifont.pcf || die
}
grub_configure() {
local platform
case ${MULTIBUILD_VARIANT} in
efi-32)
platform=efi
if [[ ${CTARGET:-${CHOST}} == x86_64* ]]; then
local CTARGET=${CTARGET:-i386}
fi ;;
efi-64)
platform=efi
if [[ ${CTARGET:-${CHOST}} == i?86* ]]; then
local CTARGET=${CTARGET:-x86_64}
local TARGET_CFLAGS="-Os -march=x86-64 ${TARGET_CFLAGS}"
local TARGET_CPPFLAGS="-march=x86-64 ${TARGET_CPPFLAGS}"
export TARGET_CFLAGS TARGET_CPPFLAGS
fi ;;
guessed) ;;
*) platform=${MULTIBUILD_VARIANT} ;;
esac
local myeconfargs=(
--disable-werror
--program-prefix=
--libdir="${EPREFIX}"/usr/lib
--htmldir="${EPREFIX}"/usr/share/doc/${PF}/html
$(use_enable debug mm-debug)
$(use_enable debug grub-emu-usb)
$(use_enable device-mapper)
$(use_enable mount grub-mount)
$(use_enable nls)
$(use_enable truetype grub-mkfont)
$(use_enable libzfs)
$(use sdl && use_enable debug grub-emu-sdl)
${platform:+--with-platform=}${platform}
# Let configure detect this where supported
$(usex efiemu '' '--disable-efiemu')
)
if use multislot; then
myeconfargs+=( --program-transform-name="s,grub,grub2," )
fi
if use truetype; then
mkdir -p "${BUILD_DIR}" || die
run_in_build_dir setup_fonts
fi
autotools-utils_src_configure
}
src_configure() {
# Bug 508758.
replace-flags -O3 -O2
# We don't want to leak flags onto boot code.
export HOST_CCASFLAGS=${CCASFLAGS}
export HOST_CFLAGS=${CFLAGS}
export HOST_CPPFLAGS=${CPPFLAGS}
export HOST_LDFLAGS=${LDFLAGS}
unset CCASFLAGS CFLAGS CPPFLAGS LDFLAGS
use static && HOST_LDFLAGS+=" -static"
if version_is_at_least 4.8 "$(gcc-version)"; then
export TARGET_LDFLAGS+=" -fuse-ld=bfd"
fi
tc-export CC NM OBJCOPY STRIP
export TARGET_CC=${TARGET_CC:-${CC}}
tc-export BUILD_CC # Bug 485592
# Portage will take care of cleaning up GRUB_PLATFORMS
MULTIBUILD_VARIANTS=( ${GRUB_PLATFORMS:-guessed} )
multibuild_parallel_foreach_variant grub_configure
}
src_compile() {
# Sandbox bug 404013.
use libzfs && addpredict /etc/dfs:/dev/zfs
multibuild_foreach_variant autotools-utils_src_compile
use doc && multibuild_for_best_variant \
autotools-utils_src_compile -C docs html
}
src_test() {
# The qemu dependency is a bit complex.
# You will need to adjust QEMU_SOFTMMU_TARGETS to match the cpu/platform.
multibuild_foreach_variant autotools-utils_src_test
}
src_install() {
multibuild_foreach_variant autotools-utils_src_install \
bashcompletiondir="$(get_bashcompdir)"
use doc && multibuild_for_best_variant run_in_build_dir \
emake -C docs DESTDIR="${D}" install-html
if use multislot; then
mv "${ED%/}"/usr/share/info/grub{,2}.info || die
fi
insinto /etc/default
newins "${FILESDIR}"/grub.default-3 grub
}
pkg_postinst() {
mount-boot_mount_boot_partition
if [[ -e "${ROOT%/}/boot/grub2/grub.cfg" ]]; then
ewarn "The grub directory has changed from /boot/grub2 to /boot/grub."
ewarn "Please run grub2-install and grub2-mkconfig -o /boot/grub/grub.cfg."
if [[ ! -e "${ROOT%/}/boot/grub/grub.cfg" ]]; then
mkdir -p "${ROOT%/}/boot/grub"
ln -s ../grub2/grub.cfg "${ROOT%/}/boot/grub/grub.cfg"
fi
fi
mount-boot_pkg_postinst
elog "For information on how to configure GRUB2 please refer to the guide:"
elog " http://wiki.gentoo.org/wiki/GRUB2_Quick_Start"
if has_version 'sys-boot/grub:0'; then
elog "A migration guide for GRUB Legacy users is available:"
elog " http://www.gentoo.org/doc/en/grub2-migration.xml"
fi
if [[ -z ${REPLACING_VERSIONS} ]]; then
if ! has_version sys-boot/os-prober; then
elog "Install sys-boot/os-prober to enable detection of other operating systems using grub2-mkconfig."
fi
if ! has_version dev-libs/libisoburn; then
elog "Install dev-libs/libisoburn to enable creation of rescue media using grub2-mkrescue."
fi
fi
}

View File

@ -1,30 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>base-system</herd>
<maintainer>
<email>base-system@gentoo.org</email>
</maintainer>
<maintainer restrict="&gt;=sys-boot/grub-2">
<email>floppym@gentoo.org</email>
<name>Mike Gilbert</name>
</maintainer>
<use>
<flag name='device-mapper'>
Enable support for device-mapper from <pkg>sys-fs/lvm2</pkg>
</flag>
<flag name='efiemu'>
Build and install the efiemu runtimes
</flag>
<flag name='mount'>
Build and install the grub-mount utility
</flag>
<flag name='libzfs'>
Enable support for <pkg>sys-fs/zfs</pkg>
</flag>
<flag name='multislot'>
Allow concurrent installation of <pkg>sys-boot/grub:0</pkg> and
<pkg>sys-boot/grub:2</pkg> by renaming all programs.
</flag>
</use>
</pkgmetadata>