diff options
author | 2014-12-04 09:37:38 +0000 | |
---|---|---|
committer | 2014-12-04 09:37:38 +0000 | |
commit | 44d1eb8403e28167ad0aae41d9d3e1837b6e70d4 (patch) | |
tree | d532c3c27b2776a45c5d6f6c2681502729e7e804 /sys-boot | |
parent | sci-geosciences/qlandkartegt: Version Bump, #519950 (diff) | |
download | historical-44d1eb8403e28167ad0aae41d9d3e1837b6e70d4.tar.gz historical-44d1eb8403e28167ad0aae41d9d3e1837b6e70d4.tar.bz2 historical-44d1eb8403e28167ad0aae41d9d3e1837b6e70d4.zip |
sys-boot/grub: Fix QA issues with bash-completions, #526138
Package-Manager: portage-2.2.15/cvs/Linux x86_64
Manifest-Sign-Key: 0xB9D4F231BD1558AB!
Diffstat (limited to 'sys-boot')
-rw-r--r-- | sys-boot/grub/ChangeLog | 8 | ||||
-rw-r--r-- | sys-boot/grub/Manifest | 28 | ||||
-rw-r--r-- | sys-boot/grub/files/grub-2.02_beta2-bash-completions.patch | 129 | ||||
-rw-r--r-- | sys-boot/grub/grub-2.02_beta2-r4.ebuild | 340 | ||||
-rw-r--r-- | sys-boot/grub/metadata.xml | 30 |
5 files changed, 512 insertions, 23 deletions
diff --git a/sys-boot/grub/ChangeLog b/sys-boot/grub/ChangeLog index d67f77f18b87..1aa77a69b675 100644 --- a/sys-boot/grub/ChangeLog +++ b/sys-boot/grub/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-boot/grub # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.329 2014/12/03 17:11:07 floppym Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-boot/grub/ChangeLog,v 1.330 2014/12/04 09:37:37 jlec Exp $ + +*grub-2.02_beta2-r4 (04 Dec 2014) + + 04 Dec 2014; Justin Lecher <jlec@gentoo.org> +grub-2.02_beta2-r4.ebuild, + +files/grub-2.02_beta2-bash-completions.patch, metadata.xml: + Fix QA issues with bash-completions, #526138 03 Dec 2014; Mike Gilbert <floppym@gentoo.org> grub-2.02_beta2-r3.ebuild: Stable on x86, bug 522314. Thanks to Poly-C for testing. diff --git a/sys-boot/grub/Manifest b/sys-boot/grub/Manifest index 9b27b3e8679f..85381dd834ec 100644 --- a/sys-boot/grub/Manifest +++ b/sys-boot/grub/Manifest @@ -1,5 +1,5 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA512 AUX 2.02_beta2/0001-Makefile.util.def-Link-grub-ofpathname-with-zfs-libs.patch 760 SHA256 49cdb65403cec54be3bcffbb4a551979bbfa8f0737eb21febfa16c7c29f47d1c SHA512 e1d6ed5a268eab45d1d052d3b8eef3a4b351eea324bb81abd8afbc6e24b81326c05c7a326b6a07e98376b01a40041c31855e6ab4f567f069b08ea8edecd0f226 WHIRLPOOL cf0a3612dbd177db00345b2fb6203b60e1bcc460ad03cc5e6c34d8316ded636693132d4537adcbcb9549e2a01cb19cae346193c230324d7c7d7d049ff6a4ac85 AUX 2.02_beta2/0002-grub-install-support-for-partitioned-partx-loop-devi.patch 1099 SHA256 87c0aab18adbf6029b2384cd3694932c94059f77ec32e13c8af6865f919adbf6 SHA512 0828036d652fdaf6c4e3a65cad023509bb6958336c373fdb518d3599f9c3259309b71f3f2d0675945205fdcc0e31d478cf357c962954b7e298456bb1c511d1be WHIRLPOOL 8012177556f98e9e94567e88e189cb9cba39282114b7aa74185dcfed768b3b77a53a6d495bac6615791993495555fe7753e31c913481f18375621cda38a56034 @@ -11,6 +11,7 @@ AUX 2.02_beta2/0007-Improve-LVM-logical_volumes-string-matching.patch 920 SHA256 AUX 2.02_beta2/0008-Fix-an-infinite-loop-in-grub-mkconfig.patch 2863 SHA256 1f1f0b764ccb6ea462b18801ba99e87cbdc001a0fe744030189476b05ef3595a SHA512 1bd1cea5624fa74455ef99840daf60c2b97a858e7a1cecd6bd864ddbc53c9a4b71ce9753ed1997ab20c93a5a2d494cfa8a2a8ba1bff93daf0e2064c8642b9a20 WHIRLPOOL d0b72d01652badf8c618b7ac110c832ba7c7b4ce83249798334183055d8b916f475aff1fec868a930e4e7b384462709e9afc876d2f224510beab426789522de7 AUX 2.02_beta2/0009-Fix-incorrect-address-reference-in-btrfs.patch 1325 SHA256 99d180975be674eb36f079a7cf747e58a5753b10f008d4326d98af91a211d5ac SHA512 72d1ea98eab8739e23c2dc8eabb98ceb90f6f378ebd089c80ea6239dcfd7fbb7763b577b4ed4798f63464c439bcc88a9c597156860746f2db19a5f5f6bdbb122 WHIRLPOOL dab297c2fca123c07ea9b07affadd510864f0c261280bc164f46d4231a05526112767f5033a231138726746053c0aefe8efc8123fcf671dbe06181a296d459e9 AUX grub-2.00-freetype-2.5.1.patch 752 SHA256 95ddb348097df2bdf51a36529935118ad4bb51cb780038d149ed0ae3bf0693c9 SHA512 e9d05de956364b923e01d8f71d77f05d6c0815b7ae21ec5d34875de09770ce42b52f7d410314f7e4a273256350d7cbf311cf95a5d83e469c7a83b9b69879caff WHIRLPOOL 67751eaad605cf064106f2a304657bf1fe1ea1f4bb3f6efe436f2d7e6b84e80b56327e51cff4db63a7f34e7f21a456d3c7517d6ee6da5f8f2cbd7816f34d4016 +AUX grub-2.02_beta2-bash-completions.patch 4262 SHA256 a375f26661a7795f33bc98dadfe56bea4ee048792d98073c27f940344baaa240 SHA512 5e9a3406ef6abc4b7b2f2ec75c538029729efb6c6257ef9fd90986d5d37eabcaa4a52ce19530a6afc0f5002739553697e4f4ad523cff849aa6ebfcf2c896ad83 WHIRLPOOL d12db12ef47b507ac3ea3adbd223f7d9393cfdd088eddbf994c81c57420840dd69c235ea81e853215fc309b64ffbef78bb02860011d89356d99aed1f3454a55d AUX grub-2.02_beta2-libzfs.patch 612 SHA256 f2de3680168e7a88261ac3f0fab6131ad3e22ce732ce969c0dc0efbf583aaddb SHA512 17810d390c90e39df63121af4d8dd670a87703d3f589aa26edde7c7e9f8f6e88dfb93a156040062c6cfe03615126970b3b073d688b3ec52cfb6ae401ad31754c WHIRLPOOL 0f19a0684b04bd7494068686fb6596a5f7c4a2e1dc47edb21c4841342876414b5caf367c0cb777e1b42f82e8db1d8eccb20151f89c36da7050aeb9db1616ad4f AUX grub.conf.gentoo 591 SHA256 e656b5716d6a5904a035960b460494431d8c1327df51fcd9ffb39243425fe142 SHA512 23036b9e558b604082d9ae8c848f18ea552181416937e3ef62287e53c38086b8d7ffef0e67d04af04f05f5b23c6da7aaf1f1f23e0ee1cffd5dbd5320e8648cb1 WHIRLPOOL 184284cac00bc039d36c5b2f8d7be0f425e75ba904c4c04c2ec531a094cd191c42cb7382276e73a5d176e1661dcdd1bdc5e3806b9d7abe9b38563575ecb6ee76 AUX grub.default-2 1602 SHA256 d1c11fb4decbae9a9827866ec2126b2c11a3d8f6b41278acad139b4dd34338c5 SHA512 15085cdfe706379d931c6841c34403ffcb46765be75425a29b563d69169124447606d8f8444945ed1148ac734da4f12f14a9b18abd6b0501974c1c770ad13c39 WHIRLPOOL 2f72b2a3d4048261cf3d5477b9a33264b3214a803eebcf4b782c33cf71d045e9be878407c64c720c2a7b260a65f8e32a61974c55ebd8d464e0b947133cdf49fd @@ -31,14 +32,27 @@ EBUILD grub-0.97-r14.ebuild 10015 SHA256 ac4c43cee05874f5efb5b7c14f9709e8d60d230 EBUILD grub-2.00_p5107-r2.ebuild 8180 SHA256 1db3f6266e63332ef89d9c32895189fee3307a5ca2f687620df43c5a9d52547a SHA512 f95264d8eff99a1dd8420d64539aef4b7eb464edc8119076af7c175fac418d0e554ee7bb0ae4edb57c3a1a5b82f32da51db6b7ffc4a9a62dc7541d3694b65faa WHIRLPOOL d1dd247120f6de17aaea2899760fd7daf3eb242a3945f6ae2c03eae71c33e3c6bb780639a030d9ba46f4b9b8f23d383fc6559306e40a82be293466ce6d6270a5 EBUILD grub-2.02_beta2-r2.ebuild 8328 SHA256 6af98ef30ca56653fefca115f33ba9b2d518c004cddd2cd1dbba19777dee69af SHA512 09e6f91066a12f3890f61efc04c4df14a999bdf46caf6c5a23ec5b6f6db7dfd43a8477046f3ecc9741ca648076c1af78a15b25a61289b66dda32a922fb168307 WHIRLPOOL b392e7b379edb1634d36649039134f2245cf16e5fa19036e820e8f748df1d99e3e107ece8d2708f7e337a7a0c32f83426b45beed2cd8117c84d64401fef6fac9 EBUILD grub-2.02_beta2-r3.ebuild 8311 SHA256 faadf60c068832270094eb8d1c9a0eef02ba6373e3079afee0e997509f885bab SHA512 329cf6586b12cfacc2b853e48c2dd786694c73441d930f44e5712e9f999a9f96f6669708ef94760b4bd831f57766ebd079f5974e955e856ed8091ba7da5b4556 WHIRLPOOL 939484dceaa7a0c663ed3da420ec1233d04032817634fd046fb4c8732933c6031021e6f21b9c066e6a2531ebc721bb5a40ad8d3309a407d9d40b543a04b2c588 +EBUILD grub-2.02_beta2-r4.ebuild 8686 SHA256 5388ed9204611424f2a8679f907ff6d42810d5de43a176c74ffeafd7ee3b5d49 SHA512 974e8f06e69d779f4a378fa28353425117ebd5a4934b10413a6ead6b6bbbc598eed57e4423d8a611c22764222d26a32deeea13462b0c9b63d0857ed29b9d1a59 WHIRLPOOL 3139811fd856d2a48df450becd54749a170737aad61b879964448aff648db9ec15826f7c26c01b0905fbf46bb018c11ee49edcea549dc8e06d8bdab5dae4e994 EBUILD grub-2.02_beta2.ebuild 8304 SHA256 7c41c4abbb6daef697960d00f9f44f2779095b4918ac975c97799c0fd38b958f SHA512 07ee0e1605e12899d5544db3e3672d4c91f7dcc6b65556d27c32ab1edf9a39a183a6b7be6eeb4ad1f5c4be84dee3a0e18af90867241069c253e4be7185163f54 WHIRLPOOL dc310d7dbea7e310da6f7ee3b1f0563014cba9102f325603cf7d3f7ce6047a93fa4f50777e3b86097c04a372c659eb12ab06ded3293585b0c87c74872c31b5fc EBUILD grub-9999-r1.ebuild 8265 SHA256 4cbbf5b3b600b1c295c0b14b7157174d6817f9c2724db311868dc54572fcb286 SHA512 6ca182564c008970a68d340587773f62181497bb76c5ab5820e13fce6cd041045a320b29ae0a758f90820fd320cece8acb18b5c28507e54e11b6920fdc690085 WHIRLPOOL 889ffae3843a84c182bc48736084c5706c065e8144177292837d5291522002b8a75bcdf3a780204d7b34d7d2fa11a75730e324d4971a821d895c0842baf15554 -MISC ChangeLog 62759 SHA256 2365710b006d86f9266b62889b21b797a2e6e654cf71d01fe15d882402641be7 SHA512 5fc933698c3450c3bb371cf8700b54cdfc45839deecac596a2e098aa1a6dc8af2178fc456ff9b7a4479d94cf7d77af01205923b427051dac0f6e308fd25e9c00 WHIRLPOOL 70d3c16a3936747797ae91fe5dfa0d967dc363e9eef3961369d621cbfc89fe70325af68b342bd702f465456a141fc423c44f10bebbdb5606dd03744fd18edb67 -MISC metadata.xml 838 SHA256 01beea9f20f03e00fdc21576a1311d3c21874980cdd57a9f2ed08a9d7cda1c46 SHA512 f6266f2f77db089d2f9289be079ef5a3637726b0906c5e96a7d8b7e29a8105cb7c48b9739f5607c0fdac2545db0e87f35132769f82b12db11a6f0018cc3c92f2 WHIRLPOOL 528d4f57ca38b0f0d4c34cd6bd60c7aeefc0fabd1e1e7be8efe0fcba04824d047a6e04288f1fbbd8e865c7435b53e84caffe7d4196809b157ee76e0d2be6f8df +MISC ChangeLog 62977 SHA256 90df925acb9720a0196e6792e0373b87a63dda920941435a8775de4ecebb1574 SHA512 69a76e98a86f33b4afbffcfbec04061fc0ecc2e716405141a349918c4adb692140226f33d72769d23c541585c24343a62f3b0a841f7e02e79f33a8cf2c9cc2da WHIRLPOOL c2030535e0b3ad717bdcdda00c09b009f5a335980a1b44553c9b53d1fcf53229cbb7b0964a404c37ab25011dcf2d81f3edb619ff09ecba63d56729a9490e4228 +MISC metadata.xml 876 SHA256 dbd75c8e18ec8479718c0d802e6563535e9ffe5429727bea5b26133bb41abca2 SHA512 7a617c5f150445add695fda85610aae706070ca1368e250a4e3858c817e90322860174e436a60268d7ff66f33bc7672aa6d4cdb8b705e12851b25666eb51e13b WHIRLPOOL bf9ba7714a9f41789778c97c0387f5cb6be6e985f63953ab25f12bfad526ca48ef973f202cfd0d8a95dc8dd595d8b1a12483403ece3a5616e24f417e42b4c303 -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2 +Version: GnuPG v2.0 -iF4EAREIAAYFAlR/RCwACgkQC77qH+pIQ6QlEAD/Wb0CEBQCYaVBoyJVhjVi2YIP -SBhEYabKgjvS6kp9JaYA/3xL7ZufRv6DzlMso1+2wpTdNjvhPmumCXDPej/rxdbt -=8ifR +iQJ8BAEBCgBmBQJUgCtiXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w +ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQyQ0JDQjFGMzBDQ0UxMjFGNENDNDgxMDdC +OUQ0RjIzMUJEMTU1OEFCAAoJELnU8jG9FVir7IQP/RY9pN0QbPPWkTF6jIjhwiKC +EP3bufr8HgdGF3CNoAdg8I+/a5KNpiauOrWD8/XvWA2tVv4vlQK9ezyKX4peaGGx +pkkTuhg5tOHIwNPO+54BuHvv7Vo+F/OQFRmx37vhq1w07CTRQoaRAR8zw+xThUGb +mOa5w+Nuda6uE0pXsRyXki5dDP2pGEuiwMAdRtCc8GIWLb4Sc9xyHj/nLaDiEoyW +i/RSvSMN+ORRNKQdUWS2F/T9UcS3iZDLqIrU/2SLtrdwTVtip2d8GcDApV+Pnjgk +hEhhwBAjHmMyBkhytyjHlnVt1DLr39wb05nY3+IIQLdSeOjzQbbUfDibYZVgyxjg +UiMIGlH2k9JuHk165A87V+t7L7ZssIoTdNGN8F6ruw69cvE4Gg9dUmWmoVAf1Vzs +UNwBdLbyqKiXxm+ccG2CVwBVRWUZTLHKhwaHZAzfZ94MHniHRKOHgJDKYnWcNmfH +ZAQoxLZOwkbgHeQBsrJtXNivlbNglH7qx894OYps9+1b5LW5mO+1a8XvTv3gKqfR +sMk1JkMsLk2B3mRB+lvU5PCn73iiLTKwSuga168O+IDe1ascC2XLmCqjWaHOOHog +6vfXcnDU7u+HkMZkwGuGoDIsB3/2c+d7W3vgX954ug1zebVAZCJnfE0b2SkQTSD5 +NSQN9RJPqNxF6QmWVg33 +=g01y -----END PGP SIGNATURE----- diff --git a/sys-boot/grub/files/grub-2.02_beta2-bash-completions.patch b/sys-boot/grub/files/grub-2.02_beta2-bash-completions.patch new file mode 100644 index 000000000000..46f65a657799 --- /dev/null +++ b/sys-boot/grub/files/grub-2.02_beta2-bash-completions.patch @@ -0,0 +1,129 @@ + util/bash-completion.d/grub-completion.bash.in | 39 +++++++++----------------- + 1 file changed, 13 insertions(+), 26 deletions(-) + +diff --git a/util/bash-completion.d/grub-completion.bash.in b/util/bash-completion.d/grub-completion.bash.in +index 44bf135..d4235e7 100644 +--- a/util/bash-completion.d/grub-completion.bash.in ++++ b/util/bash-completion.d/grub-completion.bash.in +@@ -166,13 +166,11 @@ _grub_set_entry () { + } + + __grub_set_default_program="@grub_set_default@" +-have ${__grub_set_default_program} && \ +- complete -F _grub_set_entry -o filenames ${__grub_set_default_program} ++complete -F _grub_set_entry -o filenames ${__grub_set_default_program} + unset __grub_set_default_program + + __grub_reboot_program="@grub_reboot@" +-have ${__grub_reboot_program} && \ +- complete -F _grub_set_entry -o filenames ${__grub_reboot_program} ++complete -F _grub_set_entry -o filenames ${__grub_reboot_program} + unset __grub_reboot_program + + +@@ -198,8 +196,7 @@ _grub_editenv () { + } + + __grub_editenv_program="@grub_editenv@" +-have ${__grub_editenv_program} && \ +- complete -F _grub_editenv -o filenames ${__grub_editenv_program} ++complete -F _grub_editenv -o filenames ${__grub_editenv_program} + unset __grub_editenv_program + + +@@ -219,8 +216,7 @@ _grub_mkconfig () { + fi + } + __grub_mkconfig_program="@grub_mkconfig@" +-have ${__grub_mkconfig_program} && \ +- complete -F _grub_mkconfig -o filenames ${__grub_mkconfig_program} ++complete -F _grub_mkconfig -o filenames ${__grub_mkconfig_program} + unset __grub_mkconfig_program + + +@@ -254,13 +250,11 @@ _grub_setup () { + } + + __grub_bios_setup_program="@grub_bios_setup@" +-have ${__grub_bios_setup_program} && \ +- complete -F _grub_setup -o filenames ${__grub_bios_setup_program} ++complete -F _grub_setup -o filenames ${__grub_bios_setup_program} + unset __grub_bios_setup_program + + __grub_sparc64_setup_program="@grub_sparc64_setup@" +-have ${__grub_sparc64_setup_program} && \ +- complete -F _grub_setup -o filenames ${__grub_sparc64_setup_program} ++complete -F _grub_setup -o filenames ${__grub_sparc64_setup_program} + unset __grub_sparc64_setup_program + + +@@ -305,8 +299,7 @@ _grub_install () { + fi + } + __grub_install_program="@grub_install@" +-have ${__grub_install_program} && \ +- complete -F _grub_install -o filenames ${__grub_install_program} ++complete -F _grub_install -o filenames ${__grub_install_program} + unset __grub_install_program + + +@@ -327,8 +320,7 @@ _grub_mkfont () { + fi + } + __grub_mkfont_program="@grub_mkfont@" +-have ${__grub_mkfont_program} && \ +- complete -F _grub_mkfont -o filenames ${__grub_mkfont_program} ++complete -F _grub_mkfont -o filenames ${__grub_mkfont_program} + unset __grub_mkfont_program + + +@@ -358,8 +350,7 @@ _grub_mkrescue () { + fi + } + __grub_mkrescue_program="@grub_mkrescue@" +-have ${__grub_mkrescue_program} && \ +- complete -F _grub_mkrescue -o filenames ${__grub_mkrescue_program} ++complete -F _grub_mkrescue -o filenames ${__grub_mkrescue_program} + unset __grub_mkrescue_program + + +@@ -400,8 +391,7 @@ _grub_mkimage () { + fi + } + __grub_mkimage_program="@grub_mkimage@" +-have ${__grub_mkimage_program} && \ +- complete -F _grub_mkimage -o filenames ${__grub_mkimage_program} ++complete -F _grub_mkimage -o filenames ${__grub_mkimage_program} + unset __grub_mkimage_program + + +@@ -422,8 +412,7 @@ _grub_mkpasswd_pbkdf2 () { + fi + } + __grub_mkpasswd_pbkdf2_program="@grub_mkpasswd_pbkdf2@" +-have ${__grub_mkpasswd_pbkdf2_program} && \ +- complete -F _grub_mkpasswd_pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program} ++complete -F _grub_mkpasswd_pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program} + unset __grub_mkpasswd_pbkdf2_program + + +@@ -460,8 +449,7 @@ _grub_probe () { + fi + } + __grub_probe_program="@grub_probe@" +-have ${__grub_probe_program} && \ +- complete -F _grub_probe -o filenames ${__grub_probe_program} ++complete -F _grub_probe -o filenames ${__grub_probe_program} + unset __grub_probe_program + + +@@ -482,8 +470,7 @@ _grub_script_check () { + fi + } + __grub_script_check_program="@grub_script_check@" +-have ${__grub_script_check_program} && \ +- complete -F _grub_script_check -o filenames ${__grub_script_check_program} ++complete -F _grub_script_check -o filenames ${__grub_script_check_program} + + + # Local variables: diff --git a/sys-boot/grub/grub-2.02_beta2-r4.ebuild b/sys-boot/grub/grub-2.02_beta2-r4.ebuild new file mode 100644 index 000000000000..865c3e6c1ab3 --- /dev/null +++ b/sys-boot/grub/grub-2.02_beta2-r4.ebuild @@ -0,0 +1,340 @@ +# 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-r4.ebuild,v 1.1 2014/12/04 09:37:37 jlec Exp $ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=1 +GRUB_AUTOGEN=1 + +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 + http://dev.gentoo.org/~floppym/dist/${P}-gentoo.tar.xz" + S=${WORKDIR}/${MY_P} + else + SRC_URI="mirror://gnu/${PN}/${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+=" mirror://gnu/unifont/${UNIFONT}/${UNIFONT}.pcf.gz + truetype? ( mirror://sourceforge/dejavu/${DEJAVU}.zip )" + +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 loongson + # amd64, x86, ppc, ppc64: + ieee1275 + # amd64, x86: + coreboot multiboot efi-32 pc qemu xen + # amd64, ia64: + efi-64 +) +IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}" + +# 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:2= ) + 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_coreboot? ( media-libs/freetype:2 ) + grub_platforms_qemu? ( media-libs/freetype:2 ) + grub_platforms_ieee1275? ( media-libs/freetype:2 ) + grub_platforms_loongson? ( media-libs/freetype:2 ) + 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 ! test-flags-CC -fuse-ld=bfd > /dev/null && + $(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() { + EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" epatch + + [[ ${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 "${FILESDIR}"/${P}-bash-completions.patch + + 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}/${UNIFONT}.pcf" unifont.pcf || die + if use truetype; then + ln -s "${WORKDIR}/${DEJAVU}/ttf/DejaVuSans.ttf" DejaVuSans.ttf || die + fi +} + +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 + + mkdir -p "${BUILD_DIR}" || die + run_in_build_dir setup_fonts + + 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" + + export TARGET_LDFLAGS+=" $(test-flags-CC -fuse-ld=bfd)" + + 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)" + + mv "${ED}"/$(get_bashcompdir)/grub{,-install} || die + + bashcomp_alias grub-install \ + grub2-set-default \ + grub2-mkrescue \ + grub2-reboot \ + grub2-script-check \ + grub2-editenv \ + grub2-sparc64-setup \ + grub2-mkfont \ + grub2-mkpasswd-pbkdf2 \ + grub2-mkimage \ + grub2-bios-setup \ + grub2-mkconfig \ + grub2-probe + + 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 +} diff --git a/sys-boot/grub/metadata.xml b/sys-boot/grub/metadata.xml index 05e88393345a..438d39abded5 100644 --- a/sys-boot/grub/metadata.xml +++ b/sys-boot/grub/metadata.xml @@ -1,30 +1,30 @@ <?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=">=sys-boot/grub-2"> - <email>floppym@gentoo.org</email> - <name>Mike Gilbert</name> -</maintainer> -<use> - <flag name='device-mapper'> + <herd>base-system</herd> + <maintainer> + <email>base-system@gentoo.org</email> + </maintainer> + <maintainer restrict=">=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'> + <flag name="efiemu"> Build and install the efiemu runtimes </flag> - <flag name='mount'> + <flag name="mount"> Build and install the grub-mount utility </flag> - <flag name='libzfs'> + <flag name="libzfs"> Enable support for <pkg>sys-fs/zfs</pkg> </flag> - <flag name='multislot'> + <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> + </use> </pkgmetadata> |