diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-05-17 14:32:10 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-05-17 14:32:10 +0100 |
commit | 51c50bd4c895ebf56d81fecae8e45ec3b5fc3efa (patch) | |
tree | 753b6b08624c34d1ed8414bbe22c45409f7741b9 /sys-boot | |
parent | be9d77d3ac6af8f4ead98d89706f356b65578c93 (diff) | |
parent | deba8115d2c2af26df42966b91ef04ff4dd79cde (diff) |
Merge branch 'edge' into next
Diffstat (limited to 'sys-boot')
-rw-r--r-- | sys-boot/Manifest.gz | bin | 6546 -> 6555 bytes | |||
-rw-r--r-- | sys-boot/gnu-efi/Manifest | 2 | ||||
-rw-r--r-- | sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-gnu-hash.patch | 149 | ||||
-rw-r--r-- | sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-setjmp.patch | 163 | ||||
-rw-r--r-- | sys-boot/grub/Manifest | 2 | ||||
-rw-r--r-- | sys-boot/grub/metadata.xml | 1 | ||||
-rw-r--r-- | sys-boot/refind/Manifest | 8 | ||||
-rw-r--r-- | sys-boot/refind/refind-0.10.4-r2.ebuild | 197 | ||||
-rw-r--r-- | sys-boot/refind/refind-0.11.2.ebuild | 200 | ||||
-rw-r--r-- | sys-boot/refind/refind-0.11.3.ebuild | 200 | ||||
-rw-r--r-- | sys-boot/refind/refind-0.12.0.ebuild | 168 | ||||
-rw-r--r-- | sys-boot/udk/Manifest | 7 | ||||
-rw-r--r-- | sys-boot/udk/metadata.xml | 8 | ||||
-rw-r--r-- | sys-boot/udk/udk-2015-r1.ebuild | 54 | ||||
-rw-r--r-- | sys-boot/udk/udk-2018-r1.ebuild | 20 | ||||
-rw-r--r-- | sys-boot/udk/udk-2018.ebuild | 212 |
16 files changed, 212 insertions, 1179 deletions
diff --git a/sys-boot/Manifest.gz b/sys-boot/Manifest.gz Binary files differindex 4a5ff89b1609..ad7d85f8631f 100644 --- a/sys-boot/Manifest.gz +++ b/sys-boot/Manifest.gz diff --git a/sys-boot/gnu-efi/Manifest b/sys-boot/gnu-efi/Manifest index c1945b39b523..f38e2bff9761 100644 --- a/sys-boot/gnu-efi/Manifest +++ b/sys-boot/gnu-efi/Manifest @@ -1,5 +1,3 @@ -AUX gnu-efi-3.0.6-ia64-gnu-hash.patch 4635 BLAKE2B b7e39832239e2a1be389fd6fa9e412804779d0a82a78ca50a21b139757f71973c418e7086cd89c2bbc457f1cbadf15e801152f85f27ec15164558f1bd6550cd1 SHA512 5cd62b5b114956fa37a3998fa79d9ddd4495a3621078d2d6972b2a784dfc69893fd42bbb096e253388baf49c84b0c16ae461c7eee61dd4b172207f48ca1ceb89 -AUX gnu-efi-3.0.6-ia64-setjmp.patch 3964 BLAKE2B 1475a5f188e86837303e1b91de3c37e06d95f67e8a67b8ddbc3d542df49791d9433601ca21f23c43fb57be98f68294385b2c2b0db67ce5f2b71eef55eee0adfe SHA512 146002da1ccb3a8d9b7430e52cafbf67c33691e0cbad443ef59ea6b7f604d04c82796c977977f64227c13d40d071eff8e0cb89f1d7d88d498fcc16871757b778 AUX gnu-efi-3.0.9-fix-clang-build.patch 691 BLAKE2B 5b3f60e27982cd9e2cfb385851af4840d0301c1fb590d34b029e18a239a232ecca6a62431e10138d4e12cb44a5f64b415936935c1bdaf601dcf605ebe892de54 SHA512 1f77f4a5dcd2f1589cd6950da3462f2508d0ac51c2d2268400414c336ddd41fcf430e79fb702fd5aa99cb4be0bf0fc6eabe9362d736a1223b1c53c2c0b319584 DIST gnu-efi-3.0.11.tar.bz2 154456 BLAKE2B dd8d5100ee65e2f94d6b67f0d2236674c7c2b6f553ac0b2d8fdc83e49c69bec0dce1e2e8730705f70b3b7b0a61e4f065773667945ffc92a6f40eba381fcf6723 SHA512 1a6b06b69eb95e03c00fb1c476bf346ab2cb0ecca9a44e163f52f2aa4b9837d3dd2d3ed8b4ce77aaf32a66e49f826ea5b43a97c8c7c56aaa030bc20b3415122a EBUILD gnu-efi-3.0.11.ebuild 1883 BLAKE2B 2970066312f081c9ab8ed47c7160516ff81623cddb409a186a7165632a61f58b96d2998caead7dcbdb2f6e0c79ac3a0ee39d2ca940358361841adfbcc990e58b SHA512 d708339e31740c150505ed11c9e1de707177717d14a8acf9c496969642b1a9c091120db3f70dc2baca45d94ae0c58f836966d5a5b30b989f19c6ff8dc03ba511 diff --git a/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-gnu-hash.patch b/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-gnu-hash.patch deleted file mode 100644 index 9487ba4c6731..000000000000 --- a/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-gnu-hash.patch +++ /dev/null @@ -1,149 +0,0 @@ -https://sourceforge.net/p/gnu-efi/code/merge-requests/1/ - -From 2cc0b085fb82e80d43cc08c8376dff9f9532a72d Mon Sep 17 00:00:00 2001 -From: Sergei Trofimovich <slyfox@gentoo.org> -Date: Sat, 27 Jan 2018 20:29:05 +0000 -Subject: [PATCH] gnuefi: preserve .gnu.hash sections (unbreaks elilo on IA-64) - -Gentoo has slightly modified linker defaults: --hash-style=gnu -This means all ELF files in system have '.gnu.hash' section -but no '.hash' section. - -gnuefi's ldscript did not account for it and as a result -one symbol 'ImageBase' did not resolve locally for elilo.so -and caused 'elilo' to fail to load by ia64 EFI: - Loading.: Gentoo (try new elilo) - ImageAddress: pointer is outside of image - ImageAddress: pointer is outside of image - -Those two relocations come from crt0-efi-ia64.S PE32 entry point -fdescr: - -``` - #define IMAGE_REL_BASED_DIR64<->10 - .section .reloc, "a" - data4 _start_plabel // Page RVA - data4 12 // Block Size (2*4+2*2) - data2 (IMAGE_REL_BASED_DIR64<<12) + 0 // reloc for plabel's entry point - data2 (IMAGE_REL_BASED_DIR64<<12) + 8 // reloc for plabel's global pointer -``` - -These refer ImageBase. - -The change adds '.gnu.hash' collection (follows existing '.hash' -collection). - -Tested on IA-64 by successfully booting elilo-3.16. - -Bug: https://bugs.gentoo.org/575300 -Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> ---- - README.gnuefi | 8 +++++++- - gnuefi/elf_ia32_efi.lds | 4 +++- - gnuefi/elf_ia32_fbsd_efi.lds | 4 +++- - gnuefi/elf_ia64_efi.lds | 4 +++- - gnuefi/elf_x86_64_efi.lds | 4 +++- - gnuefi/elf_x86_64_fbsd_efi.lds | 4 +++- - 6 files changed, 22 insertions(+), 6 deletions(-) - -diff --git a/README.gnuefi b/README.gnuefi -index a7feec0..512698c 100644 ---- a/README.gnuefi -+++ b/README.gnuefi -@@ -231,11 +231,17 @@ and page sized.These eight sections are used to group together the much - greater number of sections that are typically present in ELF object files. - Specifically: - -- .hash -+ .hash (and/or .gnu.hash) - Collects the ELF .hash info (this section _must_ be the first - section in order to build a shared object file; the section is - not actually loaded or used at runtime). - -+ GNU binutils provides a mechanism to generate different hash info -+ via --hash-style=<sysv|gnu|both> option. In this case output -+ shared object will contain .hash section, .gnu.hash section or -+ both. In order to generate correct output linker script preserves -+ both types of hash sections. -+ - .text - Collects all sections containing executable code. - -diff --git a/gnuefi/elf_ia32_efi.lds b/gnuefi/elf_ia32_efi.lds -index 6cc4ce1..f27fe5f 100644 ---- a/gnuefi/elf_ia32_efi.lds -+++ b/gnuefi/elf_ia32_efi.lds -@@ -5,7 +5,9 @@ SECTIONS - { - . = 0; - ImageBase = .; -- .hash : { *(.hash) } /* this MUST come first! */ -+ /* .hash and/or .gnu.hash MUST come first! */ -+ .hash : { *(.hash) } -+ .gnu.hash : { *(.gnu.hash) } - . = ALIGN(4096); - .text : - { -diff --git a/gnuefi/elf_ia32_fbsd_efi.lds b/gnuefi/elf_ia32_fbsd_efi.lds -index 77d6fad..cd309e2 100644 ---- a/gnuefi/elf_ia32_fbsd_efi.lds -+++ b/gnuefi/elf_ia32_fbsd_efi.lds -@@ -5,7 +5,9 @@ SECTIONS - { - . = 0; - ImageBase = .; -- .hash : { *(.hash) } /* this MUST come first! */ -+ /* .hash and/or .gnu.hash MUST come first! */ -+ .hash : { *(.hash) } -+ .gnu.hash : { *(.gnu.hash) } - . = ALIGN(4096); - .text : - { -diff --git a/gnuefi/elf_ia64_efi.lds b/gnuefi/elf_ia64_efi.lds -index baca962..190792a 100644 ---- a/gnuefi/elf_ia64_efi.lds -+++ b/gnuefi/elf_ia64_efi.lds -@@ -5,7 +5,9 @@ SECTIONS - { - . = 0; - ImageBase = .; -- .hash : { *(.hash) } /* this MUST come first! */ -+ /* .hash and/or .gnu.hash MUST come first! */ -+ .hash : { *(.hash) } -+ .gnu.hash : { *(.gnu.hash) } - . = ALIGN(4096); - .text : - { -diff --git a/gnuefi/elf_x86_64_efi.lds b/gnuefi/elf_x86_64_efi.lds -index 942d1f3..7be5902 100644 ---- a/gnuefi/elf_x86_64_efi.lds -+++ b/gnuefi/elf_x86_64_efi.lds -@@ -6,7 +6,9 @@ SECTIONS - { - . = 0; - ImageBase = .; -- .hash : { *(.hash) } /* this MUST come first! */ -+ /* .hash and/or .gnu.hash MUST come first! */ -+ .hash : { *(.hash) } -+ .gnu.hash : { *(.gnu.hash) } - . = ALIGN(4096); - .eh_frame : - { -diff --git a/gnuefi/elf_x86_64_fbsd_efi.lds b/gnuefi/elf_x86_64_fbsd_efi.lds -index 6fd2031..fe1f334 100644 ---- a/gnuefi/elf_x86_64_fbsd_efi.lds -+++ b/gnuefi/elf_x86_64_fbsd_efi.lds -@@ -6,7 +6,9 @@ SECTIONS - { - . = 0; - ImageBase = .; -- .hash : { *(.hash) } /* this MUST come first! */ -+ /* .hash and/or .gnu.hash MUST come first! */ -+ .hash : { *(.hash) } -+ .gnu.hash : { *(.gnu.hash) } - . = ALIGN(4096); - .eh_frame : - { --- -2.16.1 - diff --git a/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-setjmp.patch b/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-setjmp.patch deleted file mode 100644 index b09644265001..000000000000 --- a/sys-boot/gnu-efi/files/gnu-efi-3.0.6-ia64-setjmp.patch +++ /dev/null @@ -1,163 +0,0 @@ -https://sourceforge.net/p/gnu-efi/code/merge-requests/2/ - -From 0e6995a96b0f5867c8d85fbd251cfbc295a3fc4d Mon Sep 17 00:00:00 2001 -From: Sergei Trofimovich <slyfox@gentoo.org> -Date: Sun, 28 Jan 2018 16:44:21 +0000 -Subject: [PATCH] gnu-efi: fix lib/ia64/setjmp.S IA-64 build failure - -The build failed as: - lib/ia64/setjmp.S:171: Error: Unknown opcode `ldf.nt1 f26=[r10],8' - lib/ia64/setjmp.S:178: Error: Operand 1 of `ldf.fill.nt1' should be a floating-point register - -The change syncs longjmp definition with - edk2/EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Library/BaseLib/Ipf/setjmp.s -pulling in: -- branch in the end of function -- registers used wrong instruction for float restore - -Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> ---- - lib/ia64/setjmp.S | 61 +++++++++++++++++++++++++++---------------------------- - 1 file changed, 30 insertions(+), 31 deletions(-) - -diff --git a/lib/ia64/setjmp.S b/lib/ia64/setjmp.S -index c806fbc..bbb29d8 100644 ---- a/lib/ia64/setjmp.S -+++ b/lib/ia64/setjmp.S -@@ -16,11 +16,11 @@ BASIS, - .globl setjmp - .type setjmp, @function - setjmp: -- alloc loc = ar.pfs, 1, 2, 1, 0 -+ alloc loc0 = ar.pfs, 1, 2, 1, 0 - ;; - mov r14 = ar.unat - mov r15 = ar.bsp -- add r10 = 0x10 * 20, in0 -+ add r10 = 0x10*20, in0 - ;; - stf.spill.nta [in0] = f2, 0x10 - st8.spill.nta [r10] = r4, 8 -@@ -98,29 +98,25 @@ setjmp: - - .globl longjmp - .type longjmp, @function -- .regstk -+ .regstk 2, 0, 0, 0 - longjmp: -- add r10 = 0x10 * 20 + 8*14, in0 -- movl r2 = ~(((1<<14) - 1) << 16) | 3) -+ add r10 = 0x10*20 + 8*14, in0 -+ movl r2 = ~((((1<<14) - 1) << 16) | 3) - ;; - ld8.nt1 r14 = [r10], -8*2 - mov r15 = ar.bspstore - ;; - ld8.nt1 r17 = [r10], -8 - mov r16 = ar.rsc -- cmp.leu p6 = r14, r15 -+ cmp.leu p6 = r14, r15 - ;; - ld8.nt1 r18 = [r10], -8 - ld8.nt1 r25 = [r10], -8 -- and r2 = r16, r2 -+ and r2 = r16, r2 - ;; -- ldf.fill.nt1 f2 = [in0], 0x10 -+ ldf.fill.nt1 f2 = [in0], 0x10 - ld8.nt1 r24 = [r10], -8 -- mov b5 = r25 -- ;; -- mov ar.rsc = r2 -- ld8.nt1 r23 = [r10], -8 -- mov b5 = r25 -+ mov b5 = r25 - ;; - mov ar.rsc = r2 - ld8.nt1 r23 = [r10], -8 -@@ -137,51 +133,51 @@ _skip_flushrs: - mov r31 = ar.rnat - loadrs - ;; -- ldf.fill.nt1 f4 = [in0], 0x10 -+ ldf.fill.nt1 f4 = [in0], 0x10 - ld8.nt1 r22 = [r10], -8 -- dep r2 = -1, r14, 3, 6 -+ dep r2 = -1, r14, 3, 6 - ;; -- ldf.fill.nt1 f5 = [in0], 0x10 -- ld8.nt1 f21 = [r10], -8 -- cmp p6 = r2, r15 -+ ldf.fill.nt1 f5 = [in0], 0x10 -+ ld8.nt1 r21 = [r10], -8 -+ cmp.ltu p6 = r2, r15 - ;; - ld8.nt1 r20 = [r10], -0x10 - (p6) ld8.nta r31 = [r2] -- mov b3 = r23 -+ mov b3 = r23 - ;; - ldf.fill.nt1 f16 = [in0], 0x10 -- ld8.fill.nt1 r7 = [r10], -8 -- mov b2 = r22 -+ ld8.fill.nt1 r7 = [r10], -8 -+ mov b2 = r22 - ;; - ldf.fill.nt1 f17 = [in0], 0x10 -- ld8.fill.nt1 r6 = [r10], -8 -- mov b1 = r21 -+ ld8.fill.nt1 r6 = [r10], -8 -+ mov b1 = r21 - ;; - ldf.fill.nt1 f18 = [in0], 0x10 -- ld8.fill.nt1 r5 = [r10], -8 -- mov b0 = r20 -+ ld8.fill.nt1 r5 = [r10], -8 -+ mov b0 = r20 - ;; - ldf.fill.nt1 f19 = [in0], 0x10 -- ld8.fill.nt1 r4 = [r10], 8*13 -+ ld8.fill.nt1 r4 = [r10], 8*13 - ;; - ldf.fill.nt1 f20 = [in0], 0x10 - ld8.nt1 r19 = [r10], 0x10 - ;; - ldf.fill.nt1 f21 = [in0], 0x10 -- ldf.nt1 f26 = [r10], 8 -+ ld8.nt1 r26 = [r10], 8 - mov ar.pfs = r19 - ;; - ldf.fill.nt1 f22 = [in0], 0x10 - ld8.nt1 r27 = [r10], 8 -- mov pr = r26, -1 -+ mov pr = r26, -1 - ;; -- ldf.fill.nt1 r23 = [in0], 0x10 -+ ldf.fill.nt1 f23 = [in0], 0x10 - ld8.nt1 r28 = [r10], -17*8 - 0x10 - mov ar.lc = r27 - ;; - ldf.fill.nt1 f24 = [in0], 0x10 - ldf.fill.nt1 f25 = [in0], 0x10 -- mov r8 = in1 -+ mov r8 = in1 - ;; - ldf.fill.nt1 f26 = [in0], 0x10 - ldf.fill.nt1 f31 = [r10], -0x10 -@@ -192,9 +188,12 @@ _skip_flushrs: - ldf.fill.nt1 f28 = [in0] - ldf.fill.nt1 f29 = [r10], 0x10*3 + 8*4 - ;; -- ld8.fill.nt1 sp = [r10] -+ ld8.fill.nt1 sp = [r10] - mov ar.unat = r18 - ;; - mov ar.bspstore = r14 - mov ar.rnat = r31 - ;; -+ invala -+ mov ar.rsc = r16 -+ br.ret.sptk b0 --- -2.16.1 - diff --git a/sys-boot/grub/Manifest b/sys-boot/grub/Manifest index 762aa95f6114..463f9473f5de 100644 --- a/sys-boot/grub/Manifest +++ b/sys-boot/grub/Manifest @@ -9,4 +9,4 @@ DIST unifont-12.1.02.pcf.gz 1335424 BLAKE2B 97080312468e3f3c8aa6f49cef08f5622641 EBUILD grub-2.04-r1.ebuild 7462 BLAKE2B 3cac2d676797195b6137aded3714e118487f88df9b976e171a8861204f3987bfc442ae4183063530355fcc8e282a08527fb8066e1666d5e52b680b2061ca57b9 SHA512 0c106c54f3888431624065f81de688319d47f17f10776879a36e45db567310cfe5d6eb84f0007dd0b50ecc9c8fe2c5c79bebc1689394e99139d0e1cb91b2ff4b EBUILD grub-2.05_alpha20200310.ebuild 7178 BLAKE2B e555000e0b98b4c4ed65971a6a3c49a339744e670ed197d5493e4dd7fc2a52e98652fff6eab966846d9ab7acec06db8f2e0d4ec021a8bc089a11ada2bc7a41e9 SHA512 454acb11ba60e70963d6885a11be6f3efa63903f44aa544fc029a49330f98a3b2588d99e8d75592156f2d453ad405af2ba8381e34927c9c8d9f9178aab400f83 EBUILD grub-9999.ebuild 7429 BLAKE2B 610d8eed56c69123119e099cf7062e0f7fdc27ade501e8da2615b2acaa7b52ee874516f1b88c7b24bd84a6562a4222d00c062064acaf2e6f2bb051ed3d5d679b SHA512 9cc7d47c48fcafe1df71b71bbdb190633088f1a69605fb51e804b2b923b1fc843e2858cfcee1d3d75906efaeaa1b45364443014f30db44fc6eaa033ddeea0b49 -MISC metadata.xml 984 BLAKE2B 82b1b4b99abc192e31cf22808d5589992babe852ffd191198e2ab847197cad6dbd690d4b56c561bc4b2bb37dfad4317e3c287851e8f1211bdcb1fcb092b468b4 SHA512 8eedc15328286beb4631a330e17e9c0fdc7c7d56f5890e486b94fd036d11eade4eea333eb0be9119ca9e1c1e7197254ff8eb3b10345559c87b2c3bbaa0d7cdc8 +MISC metadata.xml 1035 BLAKE2B 26f1d398985bf80ab12d21e474ba68e8d1cc17e9305e73a8d44d9c271be207751796b356406f92482c784a1bd4b0e07dce8022bce8271ed69eae7e5e696c3cc5 SHA512 24c775f600ff34b8b55d84841852bbc63bfb799fe1320ba55c5f06fd5199b53d8801eadc09f3afebfb86c533b79737831c3af04c0898cce5ef0ddebe4d12ba0b diff --git a/sys-boot/grub/metadata.xml b/sys-boot/grub/metadata.xml index 3e1c75953e44..fc870a12f54f 100644 --- a/sys-boot/grub/metadata.xml +++ b/sys-boot/grub/metadata.xml @@ -28,5 +28,6 @@ </use> <upstream> <remote-id type="sourceforge">dejavu</remote-id> + <remote-id type="cpe">cpe:/a:gnu:grub</remote-id> </upstream> </pkgmetadata> diff --git a/sys-boot/refind/Manifest b/sys-boot/refind/Manifest index 14562f5300bb..5a27edd35a11 100644 --- a/sys-boot/refind/Manifest +++ b/sys-boot/refind/Manifest @@ -1,10 +1,6 @@ AUX makefile.patch 856 BLAKE2B d4de5c95330577bf2a25b8c50aa3193c3b57ce740abe12bc3996af18eda54c1514e2129a1e28f0bca7384b1f4b78e19e8b35e07e816a23cc04a93ba2804214d0 SHA512 51c0552984791190fc44159de1797094dffc01cf6ef90a3219b069ae2417c0ff5020a19b34d26b0c3f7d1a1bc9184078948f669a4186893561833ff88afdb316 -DIST refind-src-0.10.4.tar.gz 3970380 BLAKE2B 0d14c005d3e93a1f0008b6c65e34eb6391c4a4a488b4fa7842c8f0b68eb2cc5be150c8718f01a65454db7b86ffa5873a3d1a96429eaed0cb92c1d29c8d2f7dcd SHA512 a75a6210ee51427c474e69c2de8c719545b2599c19f1c7541048b77ab1996a0e4b4b5fd4840f6240cd6704e5f5338cbaff432d7dc5ec4042854e26d6df18bed5 -DIST refind-src-0.11.2.tar.gz 4533034 BLAKE2B fa05781fc1d87d314677f8e670bd7282b591fd3b6f4a5863e81cb962fdb773c774faabb6c45544b0659c8d5c4ef7ce1dba8d798a4caa97364ad7aa2532a42050 SHA512 796d86f05152d93340773c2dfbae0ca50ab036373ebed60fcc80404ee269ef4bc100df4b141d555d3363b820c3e9234fc0cf637791061281c86329958dca3479 -DIST refind-src-0.11.3.tar.gz 3792206 BLAKE2B 369b25dbc97d83f9143ccbe19e89b5975f0796f1e4a2decfc124e4b45c5ef1db8f3e2bb83413f596ca28e82e67b0b9c5682b557a5422e3146780cec151d2a36e SHA512 96907b79e1c9c8199c62058bb6851fa5d6f158802f3777ba19a62c6c0d7d5b49132754bcafa925510fd21c8bafe8ce393117070a628baf4c277fa5f8f536b797 DIST refind-src-0.11.4.tar.gz 3812192 BLAKE2B 7219eeffffb63961a7ba8f7617546a12021cfe80df80a83c4dbd47cd40b0d8afbdc510abb44de3029ff15ed49372bd59e0b156f4c27eab3ef7bd6ccc3c7e02db SHA512 529962ae432edaf1895ba98deb00a23c66bd742578e1a367f70f7ed22dd7be7daf1960df8af410fba79ca775169120499a4c10119331b2b12b55a002d4354de1 -EBUILD refind-0.10.4-r2.ebuild 6185 BLAKE2B 077c7e57eeed02eba132dbae17c7045acfedb62ec282e8af15c28f39bab1668a952656807a8e476230b8a6735d71c930937d4386030cd3fda5e4cd9dbf4c9f94 SHA512 bacd7b2acd10ff4ac50074626364d1a97e53a82fd545669acbb9efd7b2f1da0edb86d41138155340cc0e07f756484a88f57ef7165ab88755526c57629f889138 -EBUILD refind-0.11.2.ebuild 6279 BLAKE2B 209d4d8eda0b18cf10350d2a1ef8cbda5bfa6e3e2e46534e8fcadcc370917202d38b7f7dd344315e8986cf811f5452e72dd0a11d6237eaaa5b531f3e7f5b9624 SHA512 47f9bc81cc441e94615baa06e0e6c797e5f4e7be156b51ffea20d20409dcc5e94053c48ddae1c42bb959e538e29f2bd4a0e0083ae0be584320aa3cb0ae0b5e56 -EBUILD refind-0.11.3.ebuild 6277 BLAKE2B 6253ff1ac6397d2801ea1f5651c8267a391cf40fae9a651e6c4f2a6ec70d91881aaf6aea860a574b0558c1391006d3d021b55ad2cfbc0e8acdaef55b63437161 SHA512 cdf653debe9420a16a295769982931a2d913dab6dbcbd629835134273cdb29bf362c413d07e774423b8bcaffea060ae17a8ec91d0a300a14332910f7607c4284 +DIST refind-src-0.12.0.tar.gz 3898337 BLAKE2B 1197049fb7d91db64135dafda7488bdb1da4997ce6a6d49dfe635526240e3193d8c7c22597aee0f2d6754ce6061b4127d8aa21d43c9f061501de98e25de609d3 SHA512 3ade9642d7acf31097daa5308acb96a9fa3371314073b5a09601a886fc30444752efa08ed9fb35e421efb0b4eb9efbccd7b5c9bd6b3b9ed4af74c58f22a74729 EBUILD refind-0.11.4.ebuild 4746 BLAKE2B 9870720301e1697a91d1380832e1b0205de95e8aa1ad56de1022f17dd1b88e8c9d064f4344abc7b518d0dd0a5c662dfe4ea21cfca6f6cf4e941f6d5fee21ce85 SHA512 137a9af7e7727b2bbc40649ce7d2223f5db62e2b5c8817cb7982ca1dd0e67aa98edb250565cef65bd6bebcf79885b1d66d8a6931e6536f9561dc621b3b4c8f59 +EBUILD refind-0.12.0.ebuild 4732 BLAKE2B 501398cee52099f0a727f30866c6d890a848b8bb5f83df9db637b3b90ce40deb141b803fefaca176cb1bb731cfd00b8eeaf5bbc8a2f24c0e7e1b14244e894393 SHA512 d9339513227603715ea47ad4521722b10411c2b0243003410cf018093c222be4cf347b82c1b4a963429eb05485a444e37852f6dc52647d7277174d6be08ed8cb MISC metadata.xml 3821 BLAKE2B dd2985fd4728180562a6c11969c27e1d1af70e80e3c68aa4fe7ce7665b752c6aa4adb6fce27487dd97563821b13f2e97e746b6b6e0c346a212380b9c1b231de4 SHA512 e0a5ebc2757e7584afb0628b5f451458974f8ffc1c94774b0ba0eda67ba582fabe08cf8d17fce2df934bba5bded40605f665da0a236d08a53f19b422afae9336 diff --git a/sys-boot/refind/refind-0.10.4-r2.ebuild b/sys-boot/refind/refind-0.10.4-r2.ebuild deleted file mode 100644 index 349f17cfc64e..000000000000 --- a/sys-boot/refind/refind-0.10.4-r2.ebuild +++ /dev/null @@ -1,197 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit toolchain-funcs flag-o-matic versionator - -DESCRIPTION="The UEFI Boot Manager by Rod Smith" -HOMEPAGE="https://www.rodsbooks.com/refind/" - -SRC_URI="mirror://sourceforge/project/${PN}/${PV}/${PN}-src-${PV}.tar.gz" - -LICENSE="BSD GPL-2 GPL-3 FDL-1.3" -SLOT="0" -KEYWORDS="amd64 x86" -FS_USE="btrfs +ext2 +ext4 hfs +iso9660 ntfs reiserfs" -IUSE="${FS_USE} -gnuefi doc -custom-cflags" - -DEPEND="gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) - !gnuefi? ( >=sys-boot/udk-2015 )" - -DOCS="NEWS.txt README.txt docs/refind docs/Styles" - -pkg_pretend() { - if use custom-cflags; then - ewarn - ewarn "You have enabled building with USE=custom-cflags. Be aware that" - ewarn "using this can result in EFI binaries that fail to run and may" - ewarn "fail to build at all. This is strongly advised against by upstream." - ewarn - ewarn "See https://bugs.gentoo.org/598587#c3 for more information" - ewarn - fi -} - -pkg_setup() { - if use x86 ; then - export EFIARCH=ia32 - export BUILDARCH=ia32 - elif use amd64; then - export EFIARCH=x64 - export BUILDARCH=x86_64 - else - # Try to support anyway - export BUILDARCH=$( uname -m | sed s,i[3456789]86,ia32, ) - if [[ ${BUILDARCH} == "x86_64" ]] ; then - export EFIARCH=x64 - else - export EFIARCH=${ARCH} - fi - fi -} - -src_prepare() { - default - - # bug 598647 - PIE not supported - sed -e 's:CFLAGS =:& -fno-PIE:' -i "${S}/Make.common" || die - - local f - for f in "${S}"/*/Make.tiano "${S}"/Make.common; do - sed -i -e 's/^\(include .*target.txt.*\)$/#\1/' \ - -e 's@^\(TIANO_INCLUDE_DIRS\s*=\s*-I\s*\).*$@\1/usr/include/udk \\@' \ - -e '/^\s*-I \$(EDK2BASE).*$/d' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - for f in "${S}"/*/Make.tiano; do - sed -i -e 's@^\(EFILIB\s*=\s*\).*$@\1/usr/lib@' \ - -e 's@\$(EFILIB).*/\([^/]*\).lib@-l\1@' \ - -e 's/\(--start-group\s*\$(ALL_EFILIBS)\)/-L \$(EFILIB) \1/' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - sed -i -e '/Guids/i#include "AutoGen.h"\n' "${S}/filesystems/AutoGen.c" \ - || die "Failed to patch AutoGen.c" - for f in "${S}"/*/AutoGen.c; do - cat >>"${f}" <<-EOF || die "Failed to patch AutoGen.c" - - #define _PCD_TOKEN_PcdFixedDebugPrintErrorLevel 11U - #define _PCD_SIZE_PcdFixedDebugPrintErrorLevel 4 - #define _PCD_GET_MODE_SIZE_PcdFixedDebugPrintErrorLevel _PCD_SIZE_PcdFixedDebugPrintErrorLevel - #define _PCD_VALUE_PcdFixedDebugPrintErrorLevel 0xFFFFFFFFU - GLOBAL_REMOVE_IF_UNREFERENCED const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel = _PCD_VALUE_PcdFixedDebugPrintErrorLevel; - extern const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel; - #define _PCD_GET_MODE_32_PcdFixedDebugPrintErrorLevel _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel - //#define _PCD_SET_MODE_32_PcdFixedDebugPrintErrorLevel ASSERT(FALSE) // It is not allowed to set value for a FIXED_AT_BUILD PCD - EOF - done -} - -src_compile() { - # Prepare flags - local pecoff_header_size - [[ $EFIARCH == x64 ]] && pecoff_header_size='0x228' \ - || pecoff_header_size='0x220' - local make_flags=( - ARCH="${BUILDARCH}" - GENFW="/usr/bin/GenFw" - CC="$(tc-getCC)" - AS="$(tc-getAS)" - LD="$(tc-getLD)" - AR="$(tc-getAR)" - RANLIB="$(tc-getRANLIB)" - OBJCOPY="$(tc-getOBJCOPY)" - GNUEFI_LDFLAGS="-T \$(GNUEFI_LDSCRIPT) -shared -nostdlib -Bsymbolic \ - -L\$(EFILIB) -L\$(GNUEFILIB) \$(CRTOBJS) -znocombreloc -zdefs" - TIANO_LDSCRIPT="/usr/lib/GccBase.lds" - TIANO_LDFLAGS="-n -q --gc-sections -nostdlib \ - --script=\$(TIANO_LDSCRIPT) \ - --defsym=PECOFF_HEADER_SIZE=${pecoff_header_size} \ - --entry \$(ENTRYPOINT) -u \$(ENTRYPOINT) -m \$(LD_CODE)" - ) - - # Make main EFI - local all_target - use gnuefi && all_target="gnuefi" || all_target="tiano" - - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" ${all_target} - else - emake "${make_flags[@]}" ${all_target} - fi - - # Make filesystem drivers - local gnuefi_target - use gnuefi && gnuefi_target="_gnuefi" - local fs - for fs in ${FS_USE}; do - fs=${fs#+} - if use "${fs}"; then - einfo "Building ${fs} filesystem driver" - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - else - emake "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - fi - fi - done -} - -src_install() { - exeinto "/usr/share/${P}" - doexe refind-install - dosym "/usr/share/${P}/refind-install" "/usr/sbin/refind-install" - - dodoc "${S}"/{COPYING.txt,LICENSE.txt,CREDITS.txt} - if use doc; then - doman "${S}/docs/man/"* - dodoc -r ${DOCS} - fi - - insinto "/usr/share/${P}/refind" - doins "${S}/refind/refind_${EFIARCH}.efi" - doins "${S}/refind.conf-sample" - doins -r images icons fonts banners - - if [[ -d "${S}/drivers_${EFIARCH}" ]]; then - doins -r "${S}/drivers_${EFIARCH}" - fi - - insinto "/usr/share/${P}/refind/tools_${EFIARCH}" - doins "${S}/gptsync/gptsync_${EFIARCH}.efi" - - insinto "/etc/refind.d" - doins -r "${S}/keys" - - dosbin "${S}/mkrlconf" - dosbin "${S}/mvrefind" - dosbin "${S}/refind-mkdefault" -} - -pkg_postinst() { - elog "rEFInd has been built and installed into ${EROOT%/}/usr/share/${P}" - elog "You will need to use the command 'refind-install' to install" - elog "the binaries into your EFI System Partition" - elog "" - if [[ -z "${REPLACING_VERSIONS}" ]]; then - elog "refind-install requires additional packages to be fully functional:" - elog " app-crypt/sbsigntools for binary signing for use with SecureBoot" - elog " sys-boot/efibootmgr for writing to NVRAM" - elog " sys-block/parted for automatic ESP location and mount" - elog "" - elog "refind-mkdefault requires >=dev-lang/python-3" - elog "" - elog "A sample configuration can be found at" - elog "${EROOT%}/usr/share/${P}/refind/refind.conf-sample" - else - if ! version_is_at_least "0.10.3" "${REPLACING_VERSIONS}"; then - elog "The new refind-mkdefault script requires >=dev-lang/python-3" - elog "to be installed" - elog "" - fi - ewarn "Note that this installation will not update any EFI binaries" - ewarn "on your EFI System Partition - this needs to be done manually" - fi -} diff --git a/sys-boot/refind/refind-0.11.2.ebuild b/sys-boot/refind/refind-0.11.2.ebuild deleted file mode 100644 index 5987cc179ee1..000000000000 --- a/sys-boot/refind/refind-0.11.2.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit toolchain-funcs flag-o-matic versionator - -DESCRIPTION="The UEFI Boot Manager by Rod Smith" -HOMEPAGE="https://www.rodsbooks.com/refind/" - -SRC_URI="mirror://sourceforge/project/${PN}/${PV}/${PN}-src-${PV}.tar.gz" - -LICENSE="BSD GPL-2 GPL-3 FDL-1.3" -SLOT="0" -KEYWORDS="~amd64 ~x86" -FS_USE="btrfs +ext2 +ext4 hfs +iso9660 ntfs reiserfs" -IUSE="${FS_USE} -gnuefi doc -custom-cflags" - -DEPEND="gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) - !gnuefi? ( >=sys-boot/udk-2015 )" - -DOCS="NEWS.txt README.txt docs/refind docs/Styles" - -pkg_pretend() { - if use custom-cflags; then - ewarn - ewarn "You have enabled building with USE=custom-cflags. Be aware that" - ewarn "using this can result in EFI binaries that fail to run and may" - ewarn "fail to build at all. This is strongly advised against by upstream." - ewarn - ewarn "See https://bugs.gentoo.org/598587#c3 for more information" - ewarn - fi -} - -pkg_setup() { - if use x86 ; then - export EFIARCH=ia32 - export BUILDARCH=ia32 - elif use amd64; then - export EFIARCH=x64 - export BUILDARCH=x86_64 - else - # Try to support anyway - export BUILDARCH=$( uname -m | sed s,i[3456789]86,ia32, ) - if [[ ${BUILDARCH} == "x86_64" ]] ; then - export EFIARCH=x64 - else - export EFIARCH=${ARCH} - fi - fi -} - -src_prepare() { - default - - # bug 598647 - PIE not supported - sed -e 's:CFLAGS =:& -fno-PIE:' -i "${S}/Make.common" || die - - local f - for f in "${S}"/*/Make.tiano "${S}"/Make.common; do - sed -i -e 's/^\(include .*target.txt.*\)$/#\1/' \ - -e 's@^\(TIANO_INCLUDE_DIRS\s*=\s*-I\s*\).*$@\1/usr/include/udk \\@' \ - -e '/^\s*-I \$(EDK2BASE).*$/d' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - for f in "${S}"/*/Make.tiano; do - sed -i -e 's@^\(EFILIB\s*=\s*\).*$@\1/usr/lib@' \ - -e 's@\$(EFILIB).*/\([^/]*\).lib@-l\1@' \ - -e 's/\(--start-group\s*\$(ALL_EFILIBS)\)/-L \$(EFILIB) \1/' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - sed -i -e '/Guids/i#include "AutoGen.h"\n' "${S}/filesystems/AutoGen.c" \ - || die "Failed to patch AutoGen.c" - for f in "${S}"/*/AutoGen.c; do - cat >>"${f}" <<-EOF || die "Failed to patch AutoGen.c" - - #define _PCD_TOKEN_PcdFixedDebugPrintErrorLevel 11U - #define _PCD_SIZE_PcdFixedDebugPrintErrorLevel 4 - #define _PCD_GET_MODE_SIZE_PcdFixedDebugPrintErrorLevel _PCD_SIZE_PcdFixedDebugPrintErrorLevel - #define _PCD_VALUE_PcdFixedDebugPrintErrorLevel 0xFFFFFFFFU - GLOBAL_REMOVE_IF_UNREFERENCED const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel = _PCD_VALUE_PcdFixedDebugPrintErrorLevel; - extern const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel; - #define _PCD_GET_MODE_32_PcdFixedDebugPrintErrorLevel _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel - //#define _PCD_SET_MODE_32_PcdFixedDebugPrintErrorLevel ASSERT(FALSE) // It is not allowed to set value for a FIXED_AT_BUILD PCD - EOF - done -} - -src_compile() { - # Prepare flags - local pecoff_header_size - [[ $EFIARCH == x64 ]] && pecoff_header_size='0x228' \ - || pecoff_header_size='0x220' - local make_flags=( - ARCH="${BUILDARCH}" - GENFW="/usr/bin/GenFw" - CC="$(tc-getCC)" - AS="$(tc-getAS)" - LD="$(tc-getLD)" - AR="$(tc-getAR)" - GNUEFILIB="/usr/$(get_libdir)" - EFILIB="/usr/$(get_libdir)" - EFICRT0="/usr/$(get_libdir)" - RANLIB="$(tc-getRANLIB)" - OBJCOPY="$(tc-getOBJCOPY)" - GNUEFI_LDFLAGS="-T \$(GNUEFI_LDSCRIPT) -shared -nostdlib -Bsymbolic \ - -L\$(EFILIB) -L\$(GNUEFILIB) \$(CRTOBJS) -znocombreloc -zdefs" - TIANO_LDSCRIPT="/usr/lib/GccBase.lds" - TIANO_LDFLAGS="-n -q --gc-sections -nostdlib \ - --script=\$(TIANO_LDSCRIPT) \ - --defsym=PECOFF_HEADER_SIZE=${pecoff_header_size} \ - --entry \$(ENTRYPOINT) -u \$(ENTRYPOINT) -m \$(LD_CODE)" - ) - - # Make main EFI - local all_target - use gnuefi && all_target="gnuefi" || all_target="tiano" - - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" ${all_target} - else - emake "${make_flags[@]}" ${all_target} - fi - - # Make filesystem drivers - local gnuefi_target - use gnuefi && gnuefi_target="_gnuefi" - local fs - for fs in ${FS_USE}; do - fs=${fs#+} - if use "${fs}"; then - einfo "Building ${fs} filesystem driver" - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - else - emake "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - fi - fi - done -} - -src_install() { - exeinto "/usr/share/${P}" - doexe refind-install - dosym "../share/${P}/refind-install" "/usr/sbin/refind-install" - - dodoc "${S}"/{COPYING.txt,LICENSE.txt,CREDITS.txt} - if use doc; then - doman "${S}/docs/man/"* - dodoc -r ${DOCS} - fi - - insinto "/usr/share/${P}/refind" - doins "${S}/refind/refind_${EFIARCH}.efi" - doins "${S}/refind.conf-sample" - doins -r images icons fonts banners - - if [[ -d "${S}/drivers_${EFIARCH}" ]]; then - doins -r "${S}/drivers_${EFIARCH}" - fi - - insinto "/usr/share/${P}/refind/tools_${EFIARCH}" - doins "${S}/gptsync/gptsync_${EFIARCH}.efi" - - insinto "/etc/refind.d" - doins -r "${S}/keys" - - dosbin "${S}/mkrlconf" - dosbin "${S}/mvrefind" - dosbin "${S}/refind-mkdefault" -} - -pkg_postinst() { - elog "rEFInd has been built and installed into ${EROOT%/}/usr/share/${P}" - elog "You will need to use the command 'refind-install' to install" - elog "the binaries into your EFI System Partition" - elog "" - if [[ -z "${REPLACING_VERSIONS}" ]]; then - elog "refind-install requires additional packages to be fully functional:" - elog " app-crypt/sbsigntools for binary signing for use with SecureBoot" - elog " sys-boot/efibootmgr for writing to NVRAM" - elog " sys-block/parted for automatic ESP location and mount" - elog "" - elog "refind-mkdefault requires >=dev-lang/python-3" - elog "" - elog "A sample configuration can be found at" - elog "${EROOT%}/usr/share/${P}/refind/refind.conf-sample" - else - if ! version_is_at_least "0.10.3" "${REPLACING_VERSIONS}"; then - elog "The new refind-mkdefault script requires >=dev-lang/python-3" - elog "to be installed" - elog "" - fi - ewarn "Note that this installation will not update any EFI binaries" - ewarn "on your EFI System Partition - this needs to be done manually" - fi -} diff --git a/sys-boot/refind/refind-0.11.3.ebuild b/sys-boot/refind/refind-0.11.3.ebuild deleted file mode 100644 index 61fa68128311..000000000000 --- a/sys-boot/refind/refind-0.11.3.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit toolchain-funcs flag-o-matic eapi7-ver - -DESCRIPTION="The UEFI Boot Manager by Rod Smith" -HOMEPAGE="https://www.rodsbooks.com/refind/" - -SRC_URI="mirror://sourceforge/project/${PN}/${PV}/${PN}-src-${PV}.tar.gz" - -LICENSE="BSD GPL-2 GPL-3 FDL-1.3" -SLOT="0" -KEYWORDS="~amd64 ~x86" -FS_USE="btrfs +ext2 +ext4 hfs +iso9660 ntfs reiserfs" -IUSE="${FS_USE} -gnuefi doc -custom-cflags" - -DEPEND="gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) - !gnuefi? ( >=sys-boot/udk-2015 )" - -DOCS="NEWS.txt README.txt docs/refind docs/Styles" - -pkg_pretend() { - if use custom-cflags; then - ewarn - ewarn "You have enabled building with USE=custom-cflags. Be aware that" - ewarn "using this can result in EFI binaries that fail to run and may" - ewarn "fail to build at all. This is strongly advised against by upstream." - ewarn - ewarn "See https://bugs.gentoo.org/598587#c3 for more information" - ewarn - fi -} - -pkg_setup() { - if use x86 ; then - export EFIARCH=ia32 - export BUILDARCH=ia32 - elif use amd64; then - export EFIARCH=x64 - export BUILDARCH=x86_64 - else - # Try to support anyway - export BUILDARCH=$( uname -m | sed s,i[3456789]86,ia32, ) - if [[ ${BUILDARCH} == "x86_64" ]] ; then - export EFIARCH=x64 - else - export EFIARCH=${ARCH} - fi - fi -} - -src_prepare() { - default - - # bug 598647 - PIE not supported - sed -e 's:CFLAGS =:& -fno-PIE:' -i "${S}/Make.common" || die - - local f - for f in "${S}"/*/Make.tiano "${S}"/Make.common; do - sed -i -e 's/^\(include .*target.txt.*\)$/#\1/' \ - -e 's@^\(TIANO_INCLUDE_DIRS\s*=\s*-I\s*\).*$@\1/usr/include/udk \\@' \ - -e '/^\s*-I \$(EDK2BASE).*$/d' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - for f in "${S}"/*/Make.tiano; do - sed -i -e 's@^\(EFILIB\s*=\s*\).*$@\1/usr/lib@' \ - -e 's@\$(EFILIB).*/\([^/]*\).lib@-l\1@' \ - -e 's/\(--start-group\s*\$(ALL_EFILIBS)\)/-L \$(EFILIB) \1/' \ - "${f}" || die "Failed to patch Tianocore make file in" \ - $(basename $(dirname ${f})) - done - sed -i -e '/Guids/i#include "AutoGen.h"\n' "${S}/filesystems/AutoGen.c" \ - || die "Failed to patch AutoGen.c" - for f in "${S}"/*/AutoGen.c; do - cat >>"${f}" <<-EOF || die "Failed to patch AutoGen.c" - - #define _PCD_TOKEN_PcdFixedDebugPrintErrorLevel 11U - #define _PCD_SIZE_PcdFixedDebugPrintErrorLevel 4 - #define _PCD_GET_MODE_SIZE_PcdFixedDebugPrintErrorLevel _PCD_SIZE_PcdFixedDebugPrintErrorLevel - #define _PCD_VALUE_PcdFixedDebugPrintErrorLevel 0xFFFFFFFFU - GLOBAL_REMOVE_IF_UNREFERENCED const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel = _PCD_VALUE_PcdFixedDebugPrintErrorLevel; - extern const UINT32 _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel; - #define _PCD_GET_MODE_32_PcdFixedDebugPrintErrorLevel _gPcd_FixedAtBuild_PcdFixedDebugPrintErrorLevel - //#define _PCD_SET_MODE_32_PcdFixedDebugPrintErrorLevel ASSERT(FALSE) // It is not allowed to set value for a FIXED_AT_BUILD PCD - EOF - done -} - -src_compile() { - # Prepare flags - local pecoff_header_size - [[ $EFIARCH == x64 ]] && pecoff_header_size='0x228' \ - || pecoff_header_size='0x220' - local make_flags=( - ARCH="${BUILDARCH}" - GENFW="/usr/bin/GenFw" - CC="$(tc-getCC)" - AS="$(tc-getAS)" - LD="$(tc-getLD)" - AR="$(tc-getAR)" - GNUEFILIB="/usr/$(get_libdir)" - EFILIB="/usr/$(get_libdir)" - EFICRT0="/usr/$(get_libdir)" - RANLIB="$(tc-getRANLIB)" - OBJCOPY="$(tc-getOBJCOPY)" - GNUEFI_LDFLAGS="-T \$(GNUEFI_LDSCRIPT) -shared -nostdlib -Bsymbolic \ - -L\$(EFILIB) -L\$(GNUEFILIB) \$(CRTOBJS) -znocombreloc -zdefs" - TIANO_LDSCRIPT="/usr/lib/GccBase.lds" - TIANO_LDFLAGS="-n -q --gc-sections -nostdlib \ - --script=\$(TIANO_LDSCRIPT) \ - --defsym=PECOFF_HEADER_SIZE=${pecoff_header_size} \ - --entry \$(ENTRYPOINT) -u \$(ENTRYPOINT) -m \$(LD_CODE)" - ) - - # Make main EFI - local all_target - use gnuefi && all_target="gnuefi" || all_target="tiano" - - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" ${all_target} - else - emake "${make_flags[@]}" ${all_target} - fi - - # Make filesystem drivers - local gnuefi_target - use gnuefi && gnuefi_target="_gnuefi" - local fs - for fs in ${FS_USE}; do - fs=${fs#+} - if use "${fs}"; then - einfo "Building ${fs} filesystem driver" - if use custom-cflags; then - emake CFLAGS="${CFLAGS}" "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - else - emake "${make_flags[@]}" -C "${S}/filesystems" ${fs}${gnuefi_target} - fi - fi - done -} - -src_install() { - exeinto "/usr/share/${P}" - doexe refind-install - dosym "../share/${P}/refind-install" "/usr/sbin/refind-install" - - dodoc "${S}"/{COPYING.txt,LICENSE.txt,CREDITS.txt} - if use doc; then - doman "${S}/docs/man/"* - dodoc -r ${DOCS} - fi - - insinto "/usr/share/${P}/refind" - doins "${S}/refind/refind_${EFIARCH}.efi" - doins "${S}/refind.conf-sample" - doins -r images icons fonts banners - - if [[ -d "${S}/drivers_${EFIARCH}" ]]; then - doins -r "${S}/drivers_${EFIARCH}" - fi - - insinto "/usr/share/${P}/refind/tools_${EFIARCH}" - doins "${S}/gptsync/gptsync_${EFIARCH}.efi" - - insinto "/etc/refind.d" - doins -r "${S}/keys" - - dosbin "${S}/mkrlconf" - dosbin "${S}/mvrefind" - dosbin "${S}/refind-mkdefault" -} - -pkg_postinst() { - elog "rEFInd has been built and installed into ${EROOT%/}/usr/share/${P}" - elog "You will need to use the command 'refind-install' to install" - elog "the binaries into your EFI System Partition" - elog "" - if [[ -z "${REPLACING_VERSIONS}" ]]; then - elog "refind-install requires additional packages to be fully functional:" - elog " app-crypt/sbsigntools for binary signing for use with SecureBoot" - elog " sys-boot/efibootmgr for writing to NVRAM" - elog " sys-block/parted for automatic ESP location and mount" - elog "" - elog "refind-mkdefault requires >=dev-lang/python-3" - elog "" - elog "A sample configuration can be found at" - elog "${EROOT%}/usr/share/${P}/refind/refind.conf-sample" - else - if ! version_is_at_least "0.10.3" "${REPLACING_VERSIONS}"; then - elog "The new refind-mkdefault script requires >=dev-lang/python-3" - elog "to be installed" - elog "" - fi - ewarn "Note that this installation will not update any EFI binaries" - ewarn "on your EFI System Partition - this needs to be done manually" - fi -} diff --git a/sys-boot/refind/refind-0.12.0.ebuild b/sys-boot/refind/refind-0.12.0.ebuild new file mode 100644 index 000000000000..9091a88cfcb1 --- /dev/null +++ b/sys-boot/refind/refind-0.12.0.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multiprocessing toolchain-funcs + +DESCRIPTION="The UEFI Boot Manager by Rod Smith" +HOMEPAGE="https://www.rodsbooks.com/refind/" +SRC_URI="mirror://sourceforge/project/${PN}/${PV}/${PN}-src-${PV}.tar.gz" + +LICENSE="BSD GPL-2 GPL-3 FDL-1.3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +FS_USE="btrfs +ext2 +ext4 hfs +iso9660 ntfs reiserfs" +IUSE="${FS_USE} custom-cflags doc gnuefi" + +DEPEND="gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) + !gnuefi? ( >=sys-boot/udk-2018-r1 )" + +DOCS=(README.txt) +PATCHES=("${FILESDIR}/makefile.patch") +UDK_WORKSPACE="${T}/udk" + +pkg_pretend() { + if use custom-cflags; then + ewarn + ewarn "You have enabled building with USE=custom-cflags. Be aware that" + ewarn "using this can result in EFI binaries that fail to run and may" + ewarn "fail to build at all. This is strongly advised against by upstream." + ewarn + ewarn "See https://bugs.gentoo.org/598587#c3 for more information" + ewarn + fi +} + +pkg_setup() { + if use x86; then + export EFIARCH=ia32 + export BUILDARCH=ia32 + elif use amd64; then + export EFIARCH=x64 + export BUILDARCH=x86_64 + fi +} + +src_prepare() { + default + + # bug 598647 - PIE not supported + sed -e '/^CFLAGS/s:$: -fno-PIE:' -i Make.common || die + + # Prepare UDK workspace + if ! use gnuefi; then + mkdir "${UDK_WORKSPACE}" || die + ln -s "${EPREFIX}/usr/lib/udk/"{Mde,IntelFramework}{,Module}Pkg \ + "${UDK_WORKSPACE}" || die "Could not link UDK files" + fi +} + +src_configure() { + if ! use gnuefi; then + # Use the side effect of the script which will create configuration files + (. udk-workspace "${UDK_WORKSPACE}" || die) + sed -e "s:^#\?\s*\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$:\1 $(makeopts_jobs):" \ + -i "${UDK_WORKSPACE}/Conf/target.txt" || die "Failed to configure target file" + sed -e "s:\(_\(CC\|ASM\|PP\|VFRPP\|ASLCC\|ASLPP\|DLINK\)_PATH\s*=\).*$:\1 $(tc-getCC):" \ + -e "s:\(_ASLDLINK_PATH\s*=\).*$:\1 $(tc-getLD):" \ + -e "s:\(_OBJCOPY_PATH\s*=\).*$:\1 $(tc-getOBJCOPY):" \ + -e "s:\(_RC_PATH\s*=\).*$:\1 $(tc-getOBJCOPY):" \ + -e "s:\(_SLINK_PATH\s*=\).*$:\1 $(tc-getAR):" \ + -e "s:-Werror::" \ + -i "${UDK_WORKSPACE}/Conf/tools_def.txt" \ + || die "Failed to prepare tools definition file" + fi +} + +src_compile() { + # Update fs targets depending on uses + local fs fs_names=() + for fs in ${FS_USE}; do + fs=${fs#+} + if use "${fs}"; then + fs_names+=(${fs}) + fi + done + use gnuefi && fs_names=("${fs_names[@]/%/_gnuefi}") + + # Prepare flags + local make_flags=( + ARCH="${BUILDARCH}" + CC="$(tc-getCC)" + AS="$(tc-getAS)" + LD="$(tc-getLD)" + AR="$(tc-getAR)" + RANLIB="$(tc-getRANLIB)" + OBJCOPY="$(tc-getOBJCOPY)" + GNUEFILIB="/usr/$(get_libdir)" + EFILIB="/usr/$(get_libdir)" + EFICRT0="/usr/$(get_libdir)" + EDK2BASE="${UDK_WORKSPACE}" + EDK2_DRIVER_BASENAMES="${fs_names[@]}" + FILESYSTEMS="${fs_names[@]}" + FILESYSTEMS_GNUEFI="${fs_names[@]}" + ) + if use custom-cflags; then + make_flags=(CFLAGS="${CFLAGS}" "${make_flags[@]}") + fi + + emake "${make_flags[@]}" all_$(usex gnuefi gnuefi edk2) +} + +src_install() { + exeinto "/usr/lib/${PN}" + doexe refind-install + dosym "../lib/${PN}/refind-install" "/usr/sbin/refind-install" + + if use doc; then + doman "docs/man/"* + DOCS+=(NEWS.txt docs/refind docs/Styles) + fi + einstalldocs + + insinto "/usr/lib/${PN}/refind" + doins "refind/refind_${EFIARCH}.efi" + doins "refind.conf-sample" + doins -r images icons fonts banners + + if [[ -d "drivers_${EFIARCH}" ]]; then + doins -r "drivers_${EFIARCH}" + fi + + insinto "/usr/lib/${PN}/refind/tools_${EFIARCH}" + doins "gptsync/gptsync_${EFIARCH}.efi" + + insinto "/etc/refind.d" + doins -r "keys" + + dosbin "mkrlconf" + dosbin "mvrefind" + dosbin "refind-mkdefault" +} + +pkg_postinst() { + elog "rEFInd has been built and installed into ${EROOT}/usr/lib/${PN}" + elog "You will need to use the command 'refind-install' to install" + elog "the binaries into your EFI System Partition" + elog "" + elog "refind-install requires additional packages to be fully functional:" + elog " app-crypt/sbsigntools for binary signing for use with SecureBoot" + elog " sys-boot/efibootmgr for writing to NVRAM" + elog " sys-apps/gptfdisk for ESP management" + elog "" + elog "refind-mkdefault requires >=dev-lang/python-3" + elog "" + if [[ -z "${REPLACING_VERSIONS}" ]]; then + elog "A sample configuration can be found at" + elog "${EROOT}/usr/lib/${PN}/refind/refind.conf-sample" + else + if ver_test "${REPLACING_VERSIONS}" -lt "0.12.0"; then + ewarn "This new version uses sys-apps/gptfdisk instead of sys-block/parted" + ewarn "to manage ESP" + ewarn "" + fi + ewarn "Note that this installation will not update any EFI binaries" + ewarn "on your EFI System Partition - this needs to be done manually" + fi +} diff --git a/sys-boot/udk/Manifest b/sys-boot/udk/Manifest index 656ef712a595..ee441487417d 100644 --- a/sys-boot/udk/Manifest +++ b/sys-boot/udk/Manifest @@ -5,7 +5,6 @@ AUX udk-workspace.template 1426 BLAKE2B b35a6e0e73c6724a29db2ad93ebceb35416d6d94 DIST UDK2015.Complete.MyWorkSpace.zip 121736982 BLAKE2B b37bd9ead6ce2c665128199249483ecbcb0f410077d0ca61820bdccb7ae71f6dad870a3cf2dad79f997ad9114678fab3c15a17227ae33aa1ff66f9187aa3a568 SHA512 7856a8f29296f817e8fd09d8eaf7207f4e25a13faa10936d1ceb10cb6a900be265379722c0ade0ef93b1c640fef8693667d2567962e3288b20ae77f607f03d39 DIST udk-2018-docs.zip 79352781 BLAKE2B 9d08579d4645121cabb7ac52850de6492f9990240da9236064352df0595867bfc6952c9858865a8ce1d81982ec0e2440dc19930a75595454257294462adc60d6 SHA512 6ba2d961f20267cafb94bd020e8fe71e1392f1f2cdbc5c9f0a43212253ddf137b3e12cc789299dfd1ea099bb1541703b995ae20d28f0275395f5f85ed0656954 DIST udk-2018.tar.gz 38642782 BLAKE2B a10171659451d7d3df737066ec0471db1e5055bd52556d4d0654b244e827512db8d88e2b74b4dfe0189f768e0eab7a705aa32a720e047555995cf339ea50c62f SHA512 8fd9316f08a5c30f8684b2fde73906a943bb067ec91699f41796e27679af73dbc38efaa100a57d4b835656b402d9c08896abc5c10fd0d607a7e0173b3d7a60b2 -EBUILD udk-2015-r1.ebuild 6459 BLAKE2B 156f86b1ae91125ca9c8609254539d971dd2f2ab495dad3611817460905192d6cb33e1261ea5555096e28a33aff480bb60bae4b882cb26ee92d45363db8b4ae2 SHA512 2bafe8e4c63cf02e2c3eeb245c45587d6b8ef2e4e419fdda92dc6bbea563250542024fc9367470c5fe37bb40a9ba088abc209311a9a95ccd8dd7d24d084df60f -EBUILD udk-2018-r1.ebuild 4057 BLAKE2B 4827f3a1ead937529d78d729f70232bbcd85c43f9eae59010542c23e5baa3ef9757885ca175b094028f978e615acf76f33c60b59a605fafefe437e663597cd28 SHA512 a38b8c3c7594be5eddee9a300991648937cf5aadea74bedae84581596d38e4bc1990c8e58db6b676a2e35d8916a1674925d740d0320dbef24b6bc45a2aadb4a3 -EBUILD udk-2018.ebuild 6560 BLAKE2B f13fac8ea6ab8fbd2ed9677f95f33f5668d4c54b52b13ba342019a45087a4b0193744dd0db93b89a45a9a5e075e847c37a3dcb41fd8fde72a2c529026679e254 SHA512 fc6442e1791aa3ab4b10a28923433d26092ed92fcce9b09aec08ab1ca6ceb16e40fca028def9a3b5424c0b7e93f8d831ac0dd7138ee158d33568f2d9659a2be1 -MISC metadata.xml 721 BLAKE2B 863e21fdb7ac310469efdddbbbff0f1b23aa8b6cb6cdb27d6bfa1b024e795ef3b86e72d9dd7b6bca8a5326755615710bc0a59a6f4e3b53149490402d10c24d42 SHA512 20ac00286729ab06e607513002f2bcfe75866108914015d11a3139f95073b393c62046832fd3295f4e849a5cc810b996f0ca8b589cc6639e726563110e1c60fe +EBUILD udk-2015-r1.ebuild 6459 BLAKE2B f98205320c34e634a65459931c3cf353144e86365acae48b5895ad917b87b1dc9b2cf9ddb6c610a790fcc171073b77cfef475b6a7e36aeffc32543d56204017e SHA512 2e559bd885767f9757fc73c8c9fa5b4740b6309c0f9835b0900a4893037d55d5540e4bb8259e4f64635fb4dddd1143a16d3e51a6546ea4eb82ab1051fef28ac9 +EBUILD udk-2018-r1.ebuild 4057 BLAKE2B 7fc6019dc7b84a19556165c1274a2d6f0c62b29f13362a43dd0a6089c7f3ef7fe23cb29b09f47d80b1758372b0443155ffd2baddbb57d6cc6d8de26942176ae8 SHA512 7f43b879d8eb6e8676d49e2b050d2fb4851997899fe35bdbe86dcc086eb2e067b20d724c9e2b0e5ca332e81a109ea61bb9d2ce1af8746b2a54c371db04a0024d +MISC metadata.xml 444 BLAKE2B f9590f3f08c942d077fb67fbcc9d73c8808924df563f68a14ebff404b21224d38f9ea91d7f23ae155b755143dd7b929cb09794e26568f9fbae58b88bac0e0d4b SHA512 445f26815ac9e103e9f6bbe0f783b5ffff32b855d4e01b11958c18c33a3a4ea705844464bc08a7115e4f55ffc7fae3e5ab0b34da4fe4feaebcf4290386b90249 diff --git a/sys-boot/udk/metadata.xml b/sys-boot/udk/metadata.xml index 422810daaa88..a9f04df71ec4 100644 --- a/sys-boot/udk/metadata.xml +++ b/sys-boot/udk/metadata.xml @@ -9,14 +9,6 @@ <email>proxy-maint@gentoo.org</email> <name>Proxy Maintainers</name> </maintainer> - <longdescription lang="fr"> - Kit de développement UEFI Tianocore, une version stable de portions du - projet EDK II. - </longdescription> - <longdescription lang="en"> - Tianocore UEFI Development Kit, a stable release of portions of the - EDK II project. - </longdescription> <upstream> <remote-id type="github">tianocore/udk</remote-id> </upstream> diff --git a/sys-boot/udk/udk-2015-r1.ebuild b/sys-boot/udk/udk-2015-r1.ebuild index ec568865288f..0e6388c5e43c 100644 --- a/sys-boot/udk/udk-2015-r1.ebuild +++ b/sys-boot/udk/udk-2015-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -80,7 +80,7 @@ src_configure() { || die "Failed to patch source file" # Compile of Base Tools is required for further setting up the environment # Base tools does not like parallel make - sed -e "s:^\(CFLAGS\s*=\).*$:\1 ${CFLAGS} -MD -fshort-wchar -fno-strict-aliasing -nostdlib -c -fPIC:" \ + sed -e "s|^\(CFLAGS\s*=\).*$|\1 ${CFLAGS} -MD -fshort-wchar -fno-strict-aliasing -nostdlib -c -fPIC|" \ -i "${S}/BaseTools/Source/C/Makefiles/header.makefile" \ || die "Failed to update makefile header" local make_flags=( @@ -105,17 +105,17 @@ src_configure() { else append-cflags $(test-flags-CC -m32) $(test-flags-CC -malign-double) fi - sed -e "s:^\(ACTIVE_PLATFORM\s*=\).*$:\1 MdeModulePkg/MdeModulePkg.dsc:" \ - -e "s:^\(TARGET\s*=\).*$:\1 RELEASE:" \ - -e "s:^\(TARGET_ARCH\s*=\).*$:\1 ${ARCH}:" \ - -e "s:^\(TOOL_CHAIN_TAG\s*=\).*$:\1 ${TOOLCHAIN_TAG}:" \ - -e "s:^\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$:\1 $(makeopts_jobs):" \ + sed -e "s|^\(ACTIVE_PLATFORM\s*=\).*$|\1 MdeModulePkg/MdeModulePkg.dsc|" \ + -e "s|^\(TARGET\s*=\).*$|\1 RELEASE|" \ + -e "s|^\(TARGET_ARCH\s*=\).*$|\1 ${ARCH}|" \ + -e "s|^\(TOOL_CHAIN_TAG\s*=\).*$|\1 ${TOOLCHAIN_TAG}|" \ + -e "s|^\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$|\1 $(makeopts_jobs)|" \ -i "${S}/Conf/target.txt" || die "Failed to configure target file" - sed -e "s:«CC»:$(tc-getCC):" \ - -e "s:«AR»:$(tc-getAR):" \ - -e "s:«LD»:$(tc-getLD):" \ - -e "s:«OBJCOPY»:$(tc-getOBJCOPY):" \ - -e "s:«CFLAGS»:${CFLAGS}:" \ + sed -e "s|«CC»|$(tc-getCC)|" \ + -e "s|«AR»|$(tc-getAR)|" \ + -e "s|«LD»|$(tc-getLD)|" \ + -e "s|«OBJCOPY»|$(tc-getOBJCOPY)|" \ + -e "s|«CFLAGS»|${CFLAGS}|" \ "${FILESDIR}/${PV}-tools_def.template" >>"${S}/Conf/tools_def.txt" \ || die "Failed to prepare tools definition file" } @@ -181,23 +181,23 @@ copySourceFiles() { # 3 - Path of the generated Makefile. createMakefile() { local static_libs=$(sed -n '/^STATIC_LIBRARY_FILES\s*=/,/^\s*\$(OUTPUT_DIR)/{/^\s*\$(OUTPUT_DIR)/b;p}' ${3} \ - | sed -e 's:^\s*\$(BIN_DIR).*/\([^/]*\)\.lib:\t-l\1:' -e 's:\\$:\\\\\\n:' | tr --delete '\n') + | sed -e 's|^\s*\$(BIN_DIR).*/\([^/]*\)\.lib|\t-l\1|' -e 's|\\$|\\\\\\n|' | tr --delete '\n') local pecoff_header_size; [[ $ARCH == X64 ]] && pecoff_header_size='0x228' || pecoff_header_size='0x220' - sed -e "s:«MODULE»:${2}:" \ - -e "s:«PACKAGE_NAME»:${PN}:" \ - -e "s:«STATIC_LIBS»:${static_libs}:" \ - -e "s:«MODULE_TYPE»:$(grep -e '^MODULE_TYPE\s*=' ${3} | tail -1):" \ - -e "s:«IMAGE_ENTRY_POINT»:$(grep -e '^IMAGE_ENTRY_POINT\s*=' ${3}):" \ - -e "s:«CP»:$(grep -e '^CP\s*=' ${3}):" \ - -e "s:«RM»:$(grep -e '^RM\s*=' ${3}):" \ - -e "s:«CC»:$(grep -e '^CC\s*=' ${3}):" \ - -e "s:«DLINK»:$(grep -e '^DLINK\s*=' ${3}):" \ - -e "s:«OBJCOPY»:$(grep -e '^OBJCOPY\s*=' ${3}):" \ - -e "s:«GENFW»:$(grep -e '^GENFW\s*=' ${3}):" \ - -e "s:«PECOFF_HEADER_SIZE»:${pecoff_header_size}:" \ - -e "s:«OBJCOPY_FLAGS»:$(grep -e '^OBJCOPY_FLAGS\s*=' ${3}):" \ - -e "s:«GENFW_FLAGS»:$(grep -e '^GENFW_FLAGS\s*=' ${3}):" \ + sed -e "s|«MODULE»|${2}|" \ + -e "s|«PACKAGE_NAME»|${PN}|" \ + -e "s|«STATIC_LIBS»|${static_libs}|" \ + -e "s|«MODULE_TYPE»|$(grep -e '^MODULE_TYPE\s*=' ${3} | tail -1)|" \ + -e "s|«IMAGE_ENTRY_POINT»|$(grep -e '^IMAGE_ENTRY_POINT\s*=' ${3})|" \ + -e "s|«CP»|$(grep -e '^CP\s*=' ${3})|" \ + -e "s|«RM»|$(grep -e '^RM\s*=' ${3})|" \ + -e "s|«CC»|$(grep -e '^CC\s*=' ${3})|" \ + -e "s|«DLINK»|$(grep -e '^DLINK\s*=' ${3})|" \ + -e "s|«OBJCOPY»|$(grep -e '^OBJCOPY\s*=' ${3})|" \ + -e "s|«GENFW»|$(grep -e '^GENFW\s*=' ${3})|" \ + -e "s|«PECOFF_HEADER_SIZE»|${pecoff_header_size}|" \ + -e "s|«OBJCOPY_FLAGS»|$(grep -e '^OBJCOPY_FLAGS\s*=' ${3})|" \ + -e "s|«GENFW_FLAGS»|$(grep -e '^GENFW_FLAGS\s*=' ${3})|" \ "${FILESDIR}/${PV}-makefile.template" >${1} \ || die "Failed to create Makefile" } diff --git a/sys-boot/udk/udk-2018-r1.ebuild b/sys-boot/udk/udk-2018-r1.ebuild index 89f40f3e1a5c..3ad3971c96a4 100644 --- a/sys-boot/udk/udk-2018-r1.ebuild +++ b/sys-boot/udk/udk-2018-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -84,9 +84,9 @@ src_unpack() { } src_configure() { - sed -e "s:^\(BUILD_CFLAGS\s*=\).*$:\1 ${CFLAGS} -MD -fshort-wchar -fno-strict-aliasing -nostdlib -c -fPIC:" \ - -e "s:^\(BUILD_LFLAGS\s*=\).*$:\1 ${LDFLAGS}:" \ - -e "s:^\(BUILD_CXXFLAGS\s*=\).*$:\1 ${CXXFLAGS} -Wno-unused-result:" \ + sed -e "s|^\(BUILD_CFLAGS\s*=\).*$|\1 ${CFLAGS} -MD -fshort-wchar -fno-strict-aliasing -nostdlib -c -fPIC|" \ + -e "s|^\(BUILD_LFLAGS\s*=\).*$|\1 ${LDFLAGS}|" \ + -e "s|^\(BUILD_CXXFLAGS\s*=\).*$|\1 ${CXXFLAGS} -Wno-unused-result|" \ -i "BaseTools/Source/C/Makefiles/header.makefile" \ || die "Failed to update makefile header" } @@ -103,11 +103,11 @@ src_compile() { emake "${make_flags[@]}" -j1 -C BaseTools # Update template parameter files - sed -e "s:^\(ACTIVE_PLATFORM\s*=\).*$:\1 MdeModulePkg/MdeModulePkg.dsc:" \ - -e "s:^\(TARGET\s*=\).*$:\1 RELEASE:" \ - -e "s:^\(TARGET_ARCH\s*=\).*$:\1 ${EFIARCH}:" \ - -e "s:^\(TOOL_CHAIN_TAG\s*=\).*$:\1 ${TOOLCHAIN_TAG}:" \ - -e "s:^\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$:\1 $(makeopts_jobs):" \ + sed -e "s|^\(ACTIVE_PLATFORM\s*=\).*$|\1 MdeModulePkg/MdeModulePkg.dsc|" \ + -e "s|^\(TARGET\s*=\).*$|\1 RELEASE|" \ + -e "s|^\(TARGET_ARCH\s*=\).*$|\1 ${EFIARCH}|" \ + -e "s|^\(TOOL_CHAIN_TAG\s*=\).*$|\1 ${TOOLCHAIN_TAG}|" \ + -e "s|^\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$|\1 $(makeopts_jobs)|" \ -i "BaseTools/Conf/target.template" || die "Failed to configure target file" # Clean unneeded files @@ -118,7 +118,7 @@ src_compile() { rm "${S}/EmulatorPkg/Unix/Host/X11IncludeHack" || die # Create workspace script file - sed -e "s:{EDK_BASE}:${EPREFIX}/usr/lib/${P}:" \ + sed -e "s|{EDK_BASE}|${EPREFIX}/usr/lib/${P}|" \ "${FILESDIR}"/udk-workspace.template \ > "${T}/udk-workspace" || die "Failed to build udk-workspace" } diff --git a/sys-boot/udk/udk-2018.ebuild b/sys-boot/udk/udk-2018.ebuild deleted file mode 100644 index 66b0fc8e9e9c..000000000000 --- a/sys-boot/udk/udk-2018.ebuild +++ /dev/null @@ -1,212 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python2_7 ) -PYTHON_REQ_USE="sqlite" - -inherit flag-o-matic multiprocessing python-single-r1 toolchain-funcs - -DESCRIPTION="Tianocore UEFI Development kit" -HOMEPAGE="https://github.com/tianocore/tianocore.github.io/wiki/EDK-II" - -if [[ ${PV} == *9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/tianocore/edk2.git" - KEYWORDS="" -else - MY_V="${PN^^}${PV}" - SRC_URI="https://github.com/tianocore/edk2/archive/v${MY_V}.tar.gz -> ${P}.tar.gz - doc? ( https://github.com/tianocore/edk2/releases/download/v${MY_V}/${MY_V}.Documents.zip -> ${P}-docs.zip )" - S="${WORKDIR}/edk2-v${MY_V}" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="BSD-2" -SLOT="0" -IUSE="doc examples" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" -RESTRICT="strip" - -RDEPEND="${PYTHON_DEPS}" -DEPEND="${RDEPEND} - >=dev-lang/nasm-2.14.02 - >=sys-power/iasl-20160729 - doc? ( app-arch/unzip )" - -DOCDIR="${WORKDIR}/Documents" - -# Generated libs for EFI can contain WX sections -QA_EXECSTACK=" - usr/lib*/libBaseLib.a:* - usr/lib*/libBaseIoLibIntrinsic.a:* -" - -pkg_setup() { - if [[ ${ARCH} == "amd64" ]]; then - ARCH=X64 - elif [[ ${ARCH} == "x86" ]]; then - ARCH=IA32 - fi - - # Select toolchain within predefined ones - if tc-is-gcc; then - TOOLCHAIN_TAG="GCC5" - elif tc-is-clang; then - TOOLCHAIN_TAG="CLANG38" - else - TOOLCHAIN_TAG="ELFGCC" - fi -} - -src_unpack() { - default - - local doc_name - local f - if use doc; then - pushd "${DOCDIR}" >/dev/null || die - rm -f *.chm || die - for f in *.zip; do - unpack "${DOCDIR}/${f}" - mv html "${f%.zip}" || die - done - rm -f *.zip || die - popd >/dev/null || die - fi -} - -src_configure() { - # Compile of Base Tools is required for further setting up the environment - # Base tools does not like parallel make - sed -e "s:^\(BUILD_CFLAGS\s*=\).*$:\1 ${CFLAGS} -MD -fshort-wchar -fno-strict-aliasing -nostdlib -c -fPIC:" \ - -i "BaseTools/Source/C/Makefiles/header.makefile" \ - || die "Failed to update makefile header" - local make_flags=( - BUILD_CC="$(tc-getBUILD_CC)" - BUILD_CXX="$(tc-getBUILD_CXX)" - BUILD_AS="$(tc-getBUILD_AS)" - BUILD_AR="$(tc-getBUILD_AR)" - BUILD_LD="$(tc-getBUILD_LD)" - ) - emake "${make_flags[@]}" -j1 -C BaseTools - . edksetup.sh - - # Update UDK parameter files - sed -e "s:^\(ACTIVE_PLATFORM\s*=\).*$:\1 MdeModulePkg/MdeModulePkg.dsc:" \ - -e "s:^\(TARGET\s*=\).*$:\1 RELEASE:" \ - -e "s:^\(TARGET_ARCH\s*=\).*$:\1 ${ARCH}:" \ - -e "s:^\(TOOL_CHAIN_TAG\s*=\).*$:\1 ${TOOLCHAIN_TAG}:" \ - -e "s:^\(MAX_CONCURRENT_THREAD_NUMBER\s*=\).*$:\1 $(makeopts_jobs):" \ - -i "Conf/target.txt" || die "Failed to configure target file" - sed -e "s:\(_\(CC\|ASM\|PP\|VFRPP\|ASLCC\|ASLPP\|DLINK\)_PATH\s*=\).*$:\1 $(tc-getCC):" \ - -e "s:\(_ASLDLINK_PATH\s*=\).*$:\1 $(tc-getLD):" \ - -e "s:\(_OBJCOPY_PATH\s*=\).*$:\1 $(tc-getOBJCOPY):" \ - -e "s:\(_RC_PATH\s*=\).*$:\1 $(tc-getOBJCOPY):" \ - -e "s:\(_SLINK_PATH\s*=\).*$:\1 $(tc-getAR):" \ - -i "Conf/tools_def.txt" \ - || die "Failed to prepare tools definition file" -} - -src_compile() { - build $(usex examples all libraries) || die "Failed to compile environment" - -# TODO * /var/tmp/portage/sys-apps/sandbox-2.10-r1/work/sandbox-2.10/libsandbox/trace.c:_do_ptrace():74: failure (Operation not permitted): -# TODO * ISE:_do_ptrace: ptrace(PTRACE_TRACEME, ..., 0x0000000000000000, 0x0000000000000000): Operation not permitted -} - -src_install() { - local f - local build_dir="${S}/Build/MdeModule/RELEASE_${TOOLCHAIN_TAG}/${ARCH}" - - for f in "${build_dir}"/*/Library/*/*/OUTPUT/*.lib; do - local fn="lib${f##*/}" - newlib.a "${f}" "${fn%.lib}.a" - done - - insinto "/usr/share/${P}" - doins "${S}/BaseTools/Scripts/GccBase.lds" - - insinto "/usr/include/${PN}" - doins "${S}/MdePkg/Include/"*.h - doins -r "${S}/MdePkg/Include/"{${ARCH}/.,Guid,IndustryStandard,Library,Pi,Ppi,Protocol,Uefi} - local hfile - while read -d '' -r hfile; do - doins -r "${hfile}/." - done < <(find "${S}" -name 'BaseTools' -prune -o -name 'MdePkg' -prune -o \ - -name 'CryptoPkg' -prune -o -type d -name Include -print0) - - dobin "${S}/BaseTools/Source/C/bin/GenFw" - - local HTML_DOCS - use doc && HTML_DOCS=( "${DOCDIR}"/. ) - einstalldocs - - local ex_rebuild_dir - local ex_name - local ex_build_dir - if use examples; then - ex_rebuild_dir="${S}/${P}-exemples" - for f in "${S}/MdeModulePkg/Application"/*; do - ex_name="${f##*/}" - ebegin "Install ${ex_name} example" - mkdir -p "${ex_rebuild_dir}/${ex_name}" || die - ex_build_dir="${build_dir}/MdeModulePkg/Application" - ex_build_dir="${ex_build_dir}/${ex_name}/${ex_name}" - - copySourceFiles "${f}" "${ex_rebuild_dir}/${ex_name}" - copySourceFiles "${ex_build_dir}/DEBUG" "${ex_rebuild_dir}/${ex_name}" - createMakefile "${ex_rebuild_dir}/${ex_name}/Makefile" \ - "${ex_name}" "${ex_build_dir}/GNUmakefile" - - tar -C "${ex_rebuild_dir}" -cf "${ex_rebuild_dir}/${ex_name}.tar" \ - "${ex_name}" || die - - eend $? - done - docinto "examples" - dodoc "${ex_rebuild_dir}"/*.tar - fi -} - -## -# Parameters: -# 1 - Path where to search for source files. -# 2 - Path where source files must be copied. -copySourceFiles() { - local dest_file - while read -d '' -r filename; do - dest_file="${2}${filename#${1}}" - mkdir -p "${dest_file%/*}" || die - mv "${filename}" "${dest_file}" || die - done < <(find "${1}" \( -name '*.h' -o -name '*.c' \) -print0) -} - -## -# Parameters: -# 1 - Path of the file to create. -# 2 - Name of the module. -# 3 - Path of the generated Makefile. -createMakefile() { - local static_libs=$(sed -n '/^STATIC_LIBRARY_FILES\s*=/,/^\s*\$(OUTPUT_DIR)/{/^\s*\$(OUTPUT_DIR)/b;p}' ${3} \ - | sed -e 's:^\s*\$(BIN_DIR).*/\([^/]*\)\.lib:\t-l\1:' -e 's:\\$:\\\\\\n:' \ - | tr --delete '\n') - local pecoff_header_size=$(grep -e '--defsym=PECOFF_HEADER_SIZE=' ${3} \ - | sed -e 's/^.*--defsym=PECOFF_HEADER_SIZE=\(\S*\).*$/\1/') - local variables=$(grep -e '^IMAGE_ENTRY_POINT\s*=' -e '^CP\s*=' \ - -e '^RM\s*=' -e '^CC\s*=' -e '^DLINK\s*=' -e '^OBJCOPY\s*=' \ - -e '^GENFW\s*=' -e '^CC_FLAGS\s*=' -e '^DLINK_FLAGS\s*=' \ - -e '^OBJCOPY_FLAGS\s*=' -e '^GENFW_FLAGS\s*=' ${3} \ - | sed -e 's:$:\\n:' | tr --delete '\n') - sed -e "s:«MODULE»:${2}:" \ - -e "s:«PACKAGE_NAME»:${PN}:" \ - -e "s:«LIB_DIR»:$(get_libdir):" \ - -e "s:«EFI_LDS»:/usr/share/${P}/GccBase.lds:" \ - -e "s:«STATIC_LIBS»:${static_libs}:" \ - -e "s:«MODULE_TYPE»:$(grep -e '^MODULE_TYPE\s*=' ${3} | tail -1):" \ - -e "s:«VARIABLES»:${variables}:" \ - -e "s:«PECOFF_HEADER_SIZE»:${pecoff_header_size}:" \ - "${FILESDIR}/${PV}-makefile.template" >${1} \ - || die "Failed to create Makefile" -} |