You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.4 KiB
65 lines
1.4 KiB
# Copyright 1999-2015 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Id$
|
|
|
|
EAPI=2
|
|
|
|
inherit bsdmk freebsd flag-o-matic
|
|
|
|
DESCRIPTION="FreeBSD's bootloader"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
|
|
|
|
IUSE="bzip2 ieee1394 tftp zfs"
|
|
|
|
SRC_URI="mirror://gentoo/${SYS}.tar.bz2
|
|
mirror://gentoo/${LIB}.tar.bz2
|
|
mirror://gentoo/${CONTRIB}.tar.bz2"
|
|
|
|
RDEPEND=""
|
|
DEPEND="=sys-freebsd/freebsd-mk-defs-${RV}*
|
|
=sys-freebsd/freebsd-lib-${RV}*"
|
|
|
|
S="${WORKDIR}/sys/boot"
|
|
|
|
PATCHES=( "${FILESDIR}/${PN}-9.2-gcc46.patch"
|
|
"${FILESDIR}/${PN}-add-nossp-cflags.patch" )
|
|
|
|
boot0_use_enable() {
|
|
use ${1} && mymakeopts="${mymakeopts} LOADER_${2}_SUPPORT=\"yes\""
|
|
}
|
|
|
|
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 '/-fomit-frame-pointer/d' -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
|
|
}
|
|
|
|
src_compile() {
|
|
strip-flags
|
|
append-flags "-fno-strict-aliasing"
|
|
|
|
cd "${WORKDIR}/lib/libstand" || die
|
|
freebsd_src_compile
|
|
|
|
cd "${S}"
|
|
CFLAGS="${CFLAGS} -I${WORKDIR}/lib/libstand"
|
|
LDFLAGS="${LDFLAGS} -L${WORKDIR}/lib/libstand"
|
|
export LIBSTAND="${WORKDIR}/lib/libstand/libstand.a"
|
|
NOFLAGSTRIP="yes" freebsd_src_compile
|
|
}
|
|
|
|
src_install() {
|
|
dodir /boot/defaults
|
|
mkinstall FILESDIR=/boot || die "mkinstall failed"
|
|
}
|