blob: 8811bedb337f47bc9259fa76c07633ca6c35149a [file] [log] [blame]
# Copyright 2012 The Chromium OS Authors.
# Distributed under the terms of the GNU General Public License v2
EAPI=4
CROS_WORKON_COMMIT="7403149299ec2c6c66c2066a5dd8294608e71409"
CROS_WORKON_TREE="011d3f988e663e60fdc53d67fa51a8bde3ff0e2d"
CROS_WORKON_PROJECT="chromiumos/third_party/coreboot"
DESCRIPTION="coreboot's coreinfo payload"
HOMEPAGE="http://www.coreboot.org"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
RDEPEND="sys-boot/libpayload"
DEPEND="sys-boot/libpayload"
CROS_WORKON_LOCALNAME="coreboot"
inherit cros-workon toolchain-funcs
src_compile() {
tc-getCC
# Firmware related binaries are compiled with a 32-bit toolchain
# on 64-bit platforms
if use amd64 ; then
export CROSS_COMPILE="i686-pc-linux-gnu-"
export CC="${CROSS_COMPILE}gcc"
else
export CROSS_COMPILE=${CHOST}-
fi
local coreinfodir="payloads/coreinfo"
cp "${coreinfodir}"/config.default "${coreinfodir}"/.config
emake -C "${coreinfodir}" \
LIBPAYLOAD_DIR="${ROOT}/firmware/libpayload/" \
oldconfig \
|| die "libpayload make oldconfig failed"
emake -C "${coreinfodir}" \
LIBPAYLOAD_DIR="${ROOT}/firmware/libpayload/" \
|| die "libpayload build failed"
}
src_install() {
local src_root="payloads/coreinfo/"
local build_root="${src_root}/build"
local destdir="/firmware/coreinfo"
insinto "${destdir}"
doins "${build_root}"/coreinfo.elf
}