diff options
author | Yuta Satoh <nigoro.dev@gmail.com> | 2016-10-11 21:37:39 +0900 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2016-10-11 16:47:48 +0200 |
commit | e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118 (patch) | |
tree | 6eb8e704f2281853b01e1abcd5770ad59d798e86 /sys-freebsd/boot0 | |
parent | eclass/freebsd.eclass: added FreeBSD 11.0 support. (diff) | |
download | gentoo-e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118.tar.gz gentoo-e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118.tar.bz2 gentoo-e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118.zip |
sys-freebsd: bump to 11.0
Diffstat (limited to 'sys-freebsd/boot0')
-rw-r--r-- | sys-freebsd/boot0/Manifest | 1 | ||||
-rw-r--r-- | sys-freebsd/boot0/boot0-11.0.ebuild | 82 | ||||
-rw-r--r-- | sys-freebsd/boot0/files/boot0-11.0-gcc46.patch | 14 | ||||
-rw-r--r-- | sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch | 21 |
4 files changed, 118 insertions, 0 deletions
diff --git a/sys-freebsd/boot0/Manifest b/sys-freebsd/boot0/Manifest index f1e6a890a54b..7b7f95baee8d 100644 --- a/sys-freebsd/boot0/Manifest +++ b/sys-freebsd/boot0/Manifest @@ -1,5 +1,6 @@ DIST freebsd-contrib-9.1.tar.bz2 54751432 SHA256 e7ffa056d4050ce03ee8e23e276e2a9a494326a98d60c43bee2afcc59576deb8 SHA512 71be13049258c6e6b5e4f63cc16da5d349a89d68f04d87446e4ad33ae8bf2a93ea67d9c256b7bec60b61e65db0487268070cfb77a484c3ac0f8ba368b48c2438 WHIRLPOOL a2a84423175499208d34809e802284d6ba649f317c3a9ad8b7312fa19efe142ebadab0048bac0db8e988e59f9a7468ac7c5d0d25e78b82bdb269a20d18153cee DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f51bcc3b14a1e9e90bb0e7cc4a35d SHA512 40d0c36b6b889c404fa0e0afa38ba4e84a55bc88ffa2f98a70afbd7a32c4f32c158617ba770567d082a986d62c09b3ec8db3dc5ab853ee1c9bbe0b90bb82396e WHIRLPOOL 581878bf9c43184b043b4293409b85901c9ed1f9bd279e965414aca41ba50950848ebda3ee10a503a028135dfd2765e95a11acd4e62a11c528e104392bbbd8d0 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3 diff --git a/sys-freebsd/boot0/boot0-11.0.ebuild b/sys-freebsd/boot0/boot0-11.0.ebuild new file mode 100644 index 000000000000..d10850805cff --- /dev/null +++ b/sys-freebsd/boot0/boot0-11.0.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit bsdmk freebsd flag-o-matic toolchain-funcs + +DESCRIPTION="FreeBSD's bootloader" +SLOT="0" + +IUSE="bzip2 ieee1394 tftp zfs" + +if [[ ${PV} != *9999* ]]; then + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd" +fi + +EXTRACTONLY=" + sys/ + lib/ + contrib/bzip2/ +" + +RDEPEND="" +DEPEND="=sys-freebsd/freebsd-mk-defs-${RV}* + =sys-freebsd/freebsd-lib-${RV}*" + +S="${WORKDIR}/sys/boot" + +PATCHES=( "${FILESDIR}/${PN}-11.0-gcc46.patch" + "${FILESDIR}/${PN}-11.0-uefi-support.patch" + "${FILESDIR}/${PN}-add-nossp-cflags.patch" ) + +boot0_use_enable() { + use ${1} && mymakeopts="${mymakeopts} LOADER_${2}_SUPPORT=\"yes\"" + use ${1} || mymakeopts="${mymakeopts} WITHOUT_${2}= " +} + +pkg_setup() { + boot0_use_enable ieee1394 FIREWIRE + boot0_use_enable zfs ZFS + boot0_use_enable tftp TFTP + boot0_use_enable bzip2 BZIP2 +} + +src_prepare() { + sed -e '/-mno-align-long-strings/d' \ + -i "${S}"/i386/boot2/Makefile \ + -i "${S}"/i386/gptboot/Makefile \ + -i "${S}"/i386/gptzfsboot/Makefile \ + -i "${S}"/i386/zfsboot/Makefile || die + + mymakeopts="${mymakeopts} LOADER_NO_GELI_SUPPORT=yes" + export MAKEOBJDIRPREFIX="${WORKDIR}/build" +} + +src_compile() { + strip-flags + append-flags "-fno-strict-aliasing" + + cd "${WORKDIR}/lib/libstand" || die + freebsd_src_compile + + CFLAGS="${CFLAGS} -I${WORKDIR}/lib/libstand" + LDFLAGS="${LDFLAGS} -L${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libstand" + export LIBSTAND="${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libstand/libstand.a" + + cd "${S}" || die + NOFLAGSTRIP="yes" freebsd_src_compile +} + +src_install() { + dodir /boot/defaults + freebsd_src_install FILESDIR=/boot + + cd "${WORKDIR}/sys/$(tc-arch-kernel)/conf" || die + insinto /boot + newins GENERIC.hints device.hints + + echo 'CONFIG_PROTECT="/boot/device.hints"' > "${T}"/50boot0 + doenvd "${T}"/50boot0 +} diff --git a/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch b/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch new file mode 100644 index 000000000000..ec17d92b5790 --- /dev/null +++ b/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch @@ -0,0 +1,14 @@ +diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile +index ead9ad1..af5e021 100644 +--- a/sys/boot/i386/boot2/Makefile ++++ b/sys/boot/i386/boot2/Makefile +@@ -45,6 +45,9 @@ CFLAGS.gcc+= -Os \ + .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} <= 40201 + CFLAGS.gcc+= -mno-align-long-strings + .endif ++.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40600 ++CFLAGS.gcc+= -fno-asynchronous-unwind-tables ++.endif + + CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL} + diff --git a/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch b/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch new file mode 100644 index 000000000000..c7a69d62aa8b --- /dev/null +++ b/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch @@ -0,0 +1,21 @@ +diff --git a/sys/boot/efi/Makefile b/sys/boot/efi/Makefile +index 79ee9a9..f7789f1 100644 +--- a/sys/boot/efi/Makefile ++++ b/sys/boot/efi/Makefile +@@ -4,7 +4,7 @@ + + # In-tree GCC does not support __attribute__((ms_abi)), but gcc newer + # than 4.5 supports it. +-.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 404500 ++.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500 + + .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" + .if ${MK_FDT} != "no" +@@ -18,6 +18,6 @@ SUBDIR+= fdt + SUBDIR+= libefi loader boot1 + .endif + +-.endif # ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 404500 ++.endif # ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500 + + .include <bsd.subdir.mk> |