summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-apps/flashrom
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-apps/flashrom')
-rw-r--r--sys-apps/flashrom/Manifest3
-rw-r--r--sys-apps/flashrom/flashrom-0.9.6.1.ebuild99
-rw-r--r--sys-apps/flashrom/flashrom-0.9.7.ebuild114
-rw-r--r--sys-apps/flashrom/flashrom-0.9.8.ebuild128
-rw-r--r--sys-apps/flashrom/flashrom-9999.ebuild128
-rw-r--r--sys-apps/flashrom/metadata.xml60
6 files changed, 532 insertions, 0 deletions
diff --git a/sys-apps/flashrom/Manifest b/sys-apps/flashrom/Manifest
new file mode 100644
index 000000000000..a33ff6f703cd
--- /dev/null
+++ b/sys-apps/flashrom/Manifest
@@ -0,0 +1,3 @@
+DIST flashrom-0.9.6.1.tar.bz2 368133 SHA256 6f7b588cce74c90b4fe9c9c794de105de76e0323442fb5770b1aeab81e9d560a SHA512 335243ca869a49521b6404004496cdba16f11da4f5321bbc8786635bbc7a0fe7215de2015d67200da68d398ed270d9a2ad9308ca9f762790e39b9f0602e53529 WHIRLPOOL f55f53cc6f06b627d8561e369bca32f1b62dc8de9a35963c01575b31f3190cf1be3b7114db8552b7f9f87c971960f1d16fe284d44e8d2db3da2996431d08598c
+DIST flashrom-0.9.7.tar.bz2 408883 SHA256 5a55212d00791981a9a1cb0cdca9d9e58bea6d399864251e7b410b4d3d6137e9 SHA512 a226c1ac3f9c7822b74ca14b7f9b53013110b2cdb66b1f936593c693ee54f19d643cc3a97a9635c05f2c959aca817668006f609ddb503a84d0bf5d510065674e WHIRLPOOL 97472148f97b86dc3b6661fe0368f492584308a8e86f2376bd3eb6e285a02dfcf231f2d917f30a734e90fbc9baf3899329c04ea245048d647077c50646ecd17d
+DIST flashrom-0.9.8.tar.bz2 473902 SHA256 13dc7c895e583111ecca370363a3527d237d178a134a94b20db7df177c05f934 SHA512 1a1c4513bac7cdf91326ab68b822034101e688bfab0dc0b5698f664fc766027229128c55eed94f302cac05d949647cdec6a103a423c3861b047cf0ff7cc0b509 WHIRLPOOL 61381faeff133065c195e37d9cf9eced6f5ff4c3dc6103abcca8186d11de9e1523e4fcfd173f34dfa44c78ad731db25a771d670bf5cd808f00ed5e80697c5c35
diff --git a/sys-apps/flashrom/flashrom-0.9.6.1.ebuild b/sys-apps/flashrom/flashrom-0.9.6.1.ebuild
new file mode 100644
index 000000000000..cf7ffd954634
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-0.9.6.1.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils toolchain-funcs
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="svn://flashrom.org/flashrom/trunk"
+ inherit subversion
+else
+ SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
+ KEYWORDS="amd64 arm x86"
+fi
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="http://flashrom.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atahpt +bitbang_spi +buspirate_spi +dediprog doc +drkaiser
++dummy ft2232_spi +gfxnvidia +internal +nic3com +nicintel +nicintel_spi
+nicnatsemi nicrealtek +ogp_spi rayer_spi
++pony_spi +satasii satamv +serprog +wiki"
+
+COMMON_DEPEND="atahpt? ( sys-apps/pciutils )
+ dediprog? ( virtual/libusb:0 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232_spi? ( dev-embedded/libftdi )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ nic3com? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicintel_spi? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ rayer_spi? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ satamv? ( sys-apps/pciutils )
+ ogp_spi? ( sys-apps/pciutils )"
+RDEPEND="${COMMON_DEPEND}
+ internal? ( sys-apps/dmidecode )"
+DEPEND="${COMMON_DEPEND}
+ sys-apps/diffutils"
+
+_flashrom_enable() {
+ local c="CONFIG_${2:-$(echo $1 | tr [:lower:] [:upper:])}"
+ args+=" $c=$(usex $1 yes no)"
+}
+flashrom_enable() {
+ local u
+ for u in "$@" ; do _flashrom_enable $u ; done
+}
+
+src_compile() {
+ local progs=0
+ local args=""
+
+ # Programmer
+ flashrom_enable \
+ atahpt bitbang_spi buspirate_spi dediprog drkaiser \
+ ft2232_spi gfxnvidia nic3com nicintel nicintel_spi nicnatsemi nicrealtek \
+ ogp_spi rayer_spi pony_spi \
+ satasii satamv serprog \
+ internal dummy
+ _flashrom_enable wiki PRINT_WIKI
+
+ # You have to specify at least one programmer, and if you specify more than
+ # one programmer you have to include either dummy or internal in the list.
+ for prog in ${IUSE//[+-]} ; do
+ case ${prog} in
+ internal|dummy|wiki) continue ;;
+ esac
+
+ use ${prog} && : $(( progs++ ))
+ done
+ if [ $progs -ne 1 ] ; then
+ if ! use internal && ! use dummy ; then
+ ewarn "You have to specify at least one programmer, and if you specify"
+ ewarn "more than one programmer, you have to enable either dummy or"
+ ewarn "internal as well. 'internal' will be the default now."
+ args+=" CONFIG_INTERNAL=yes"
+ fi
+ fi
+
+ # WARNERROR=no, bug 347879
+ tc-export AR CC RANLIB
+ emake WARNERROR=no ${args} || die
+}
+
+src_install() {
+ dosbin flashrom || die
+ doman flashrom.8
+ dodoc ChangeLog README
+
+ if use doc; then
+ dodoc Documentation/*.txt
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-0.9.7.ebuild b/sys-apps/flashrom/flashrom-0.9.7.ebuild
new file mode 100644
index 000000000000..11ecdf371b7a
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-0.9.7.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="svn://flashrom.org/flashrom/trunk"
+ inherit subversion
+else
+ SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
+ KEYWORDS="amd64 arm ~mips x86"
+fi
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="http://flashrom.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atahpt +bitbang_spi +buspirate_spi +dediprog +drkaiser
++dummy ft2232_spi +gfxnvidia +internal +linux_spi +nic3com +nicintel
++nicintel_spi nicnatsemi nicrealtek +ogp_spi rayer_spi
++pony_spi +satasii satamv +serprog static tools usbblaster +wiki"
+
+LIB_DEPEND="atahpt? ( sys-apps/pciutils[static-libs(+)] )
+ dediprog? ( virtual/libusb:0[static-libs(+)] )
+ drkaiser? ( sys-apps/pciutils[static-libs(+)] )
+ ft2232_spi? ( dev-embedded/libftdi[static-libs(+)] )
+ gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
+ internal? ( sys-apps/pciutils[static-libs(+)] )
+ nic3com? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel_spi? ( sys-apps/pciutils[static-libs(+)] )
+ nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
+ nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
+ rayer_spi? ( sys-apps/pciutils[static-libs(+)] )
+ satasii? ( sys-apps/pciutils[static-libs(+)] )
+ satamv? ( sys-apps/pciutils[static-libs(+)] )
+ usbblaster? ( dev-embedded/libftdi[static-libs(+)] )
+ ogp_spi? ( sys-apps/pciutils[static-libs(+)] )"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+ sys-apps/diffutils"
+RDEPEND+=" internal? ( sys-apps/dmidecode )"
+
+_flashrom_enable() {
+ local c="CONFIG_${2:-$(echo $1 | tr [:lower:] [:upper:])}"
+ args+=" $c=$(usex $1 yes no)"
+}
+flashrom_enable() {
+ local u
+ for u in "$@" ; do _flashrom_enable $u ; done
+}
+
+src_compile() {
+ local progs=0
+ local args=""
+
+ # Programmer
+ flashrom_enable \
+ atahpt bitbang_spi buspirate_spi dediprog drkaiser \
+ ft2232_spi gfxnvidia linux_spi nic3com nicintel \
+ nicintel_spi nicnatsemi nicrealtek ogp_spi rayer_spi \
+ pony_spi satasii satamv serprog usbblaster \
+ internal dummy
+ _flashrom_enable wiki PRINT_WIKI
+ _flashrom_enable static STATIC
+
+ # You have to specify at least one programmer, and if you specify more than
+ # one programmer you have to include either dummy or internal in the list.
+ for prog in ${IUSE//[+-]} ; do
+ case ${prog} in
+ internal|dummy|wiki) continue ;;
+ esac
+
+ use ${prog} && : $(( progs++ ))
+ done
+ if [[ ${progs} -ne 1 ]] ; then
+ if ! use internal && ! use dummy ; then
+ ewarn "You have to specify at least one programmer, and if you specify"
+ ewarn "more than one programmer, you have to enable either dummy or"
+ ewarn "internal as well. 'internal' will be the default now."
+ args+=" CONFIG_INTERNAL=yes"
+ fi
+ fi
+
+ # WARNERROR=no, bug 347879
+ tc-export AR CC RANLIB
+ emake WARNERROR=no ${args}
+}
+
+src_test() {
+ if [[ -d tests ]] ; then
+ pushd tests >/dev/null
+ ./tests.py || die
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ dosbin flashrom
+ doman flashrom.8
+ dodoc ChangeLog README Documentation/*.txt
+
+ if use tools; then
+ if use amd64; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ elif use x86; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-0.9.8.ebuild b/sys-apps/flashrom/flashrom-0.9.8.ebuild
new file mode 100644
index 000000000000..d442c9c1f993
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-0.9.8.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="svn://flashrom.org/flashrom/trunk"
+ inherit subversion
+else
+ SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+fi
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="http://flashrom.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+# The defaults match the upstream Makefile.
+# Note: Do not list bitbang_spi as it is not a programmer; it's a backend used
+# by some other spi programmers.
+IUSE_PROGRAMMERS="atahpt +atavia +buspirate_spi dediprog +drkaiser +dummy
++ft2232_spi +gfxnvidia +internal +it8212 +linux_spi mstarddc_spi +nic3com
++nicintel +nicintel_eeprom +nicintel_spi nicnatsemi +nicrealtek +ogp_spi
++pickit2_spi +pony_spi +rayer_spi +satamv +satasii +serprog +usbblaster_spi"
+IUSE="${IUSE_PROGRAMMERS} +internal_dmi static tools +wiki"
+
+LIB_DEPEND="atahpt? ( sys-apps/pciutils[static-libs(+)] )
+ atavia? ( sys-apps/pciutils[static-libs(+)] )
+ dediprog? ( virtual/libusb:0[static-libs(+)] )
+ drkaiser? ( sys-apps/pciutils[static-libs(+)] )
+ ft2232_spi? ( dev-embedded/libftdi[static-libs(+)] )
+ gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
+ it8212? ( sys-apps/pciutils[static-libs(+)] )
+ internal? ( sys-apps/pciutils[static-libs(+)] )
+ nic3com? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel_spi? ( sys-apps/pciutils[static-libs(+)] )
+ nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
+ nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
+ ogp_spi? ( sys-apps/pciutils[static-libs(+)] )
+ pickit2_spi? ( virtual/libusb:0[static-libs(+)] )
+ rayer_spi? ( sys-apps/pciutils[static-libs(+)] )
+ satamv? ( sys-apps/pciutils[static-libs(+)] )
+ satasii? ( sys-apps/pciutils[static-libs(+)] )
+ usbblaster_spi? ( dev-embedded/libftdi[static-libs(+)] )"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+ sys-apps/diffutils"
+RDEPEND+=" !internal_dmi? ( sys-apps/dmidecode )"
+
+_flashrom_enable() {
+ local c="CONFIG_${2:-$(echo "$1" | tr [:lower:] [:upper:])}"
+ args+=( "${c}=$(usex $1 yes no)" )
+}
+flashrom_enable() {
+ local u
+ for u ; do _flashrom_enable "${u}" ; done
+}
+
+src_prepare() {
+ sed -i \
+ -e 's:pkg-config:$(PKG_CONFIG):' \
+ Makefile || die
+}
+
+src_compile() {
+ # Help keep things in sync.
+ local sprogs=$(echo $(
+ grep -o 'CONFIG_[A-Z0-9_]*' flashrom.c | \
+ sort -u | \
+ sed 's:^CONFIG_::' | \
+ tr '[:upper:]' '[:lower:]'))
+ local eprogs=$(echo ${IUSE_PROGRAMMERS//[+-]})
+ if [[ ${sprogs} != "${eprogs}" ]] ; then
+ eerror "The ebuild needs to be kept in sync."
+ eerror "IUSE set to: ${eprogs}"
+ eerror "flashrom.c : ${sprogs}"
+ die "sync IUSE to the list of source programmers"
+ fi
+
+ # Turn USE flags into CONFIG_xxx settings.
+ local args=()
+ flashrom_enable ${eprogs}
+ _flashrom_enable wiki PRINT_WIKI
+ _flashrom_enable static STATIC
+
+ # You have to specify at least one programmer, and if you specify more than
+ # one programmer you have to include either dummy or internal in the list.
+ # We pick dummy as the default because internal requires libpci.
+ if ! use internal && ! use dummy ; then
+ if [[ ${#args[@]} -ne 1 ]] ; then
+ ewarn "You have to specify at least one programmer, and if you specify"
+ ewarn "more than one programmer, you have to enable either dummy or"
+ ewarn "internal as well. 'dummy' will be the default now."
+ args+=( CONFIG_DUMMY=yes )
+ fi
+ fi
+
+ tc-export AR CC PKG_CONFIG RANLIB
+ emake WARNERROR=no "${args[@]}"
+}
+
+src_test() {
+ if [[ -d tests ]] ; then
+ pushd tests >/dev/null
+ ./tests.py || die
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ dosbin flashrom
+ doman flashrom.8
+ dodoc ChangeLog README Documentation/*.txt
+
+ if use tools ; then
+ if use amd64 ; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ elif use x86 ; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+ fi
+}
diff --git a/sys-apps/flashrom/flashrom-9999.ebuild b/sys-apps/flashrom/flashrom-9999.ebuild
new file mode 100644
index 000000000000..549680e63a91
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-9999.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils toolchain-funcs
+if [[ ${PV} == "9999" ]] ; then
+ ESVN_REPO_URI="svn://flashrom.org/flashrom/trunk"
+ inherit subversion
+else
+ SRC_URI="http://download.flashrom.org/releases/${P}.tar.bz2"
+ KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+fi
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="http://flashrom.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+# The defaults match the upstream Makefile.
+# Note: Do not list bitbang_spi as it is not a programmer; it's a backend used
+# by some other spi programmers.
+IUSE_PROGRAMMERS="atahpt +atavia +buspirate_spi dediprog +drkaiser +dummy
++ft2232_spi +gfxnvidia +internal +it8212 +linux_spi mstarddc_spi +nic3com
++nicintel +nicintel_eeprom +nicintel_spi nicnatsemi +nicrealtek +ogp_spi
++pickit2_spi +pony_spi +rayer_spi +satamv +satasii +serprog +usbblaster_spi"
+IUSE="${IUSE_PROGRAMMERS} +internal_dmi static tools +wiki"
+
+LIB_DEPEND="atahpt? ( sys-apps/pciutils[static-libs(+)] )
+ atavia? ( sys-apps/pciutils[static-libs(+)] )
+ dediprog? ( virtual/libusb:0[static-libs(+)] )
+ drkaiser? ( sys-apps/pciutils[static-libs(+)] )
+ ft2232_spi? ( dev-embedded/libftdi[static-libs(+)] )
+ gfxnvidia? ( sys-apps/pciutils[static-libs(+)] )
+ it8212? ( sys-apps/pciutils[static-libs(+)] )
+ internal? ( sys-apps/pciutils[static-libs(+)] )
+ nic3com? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel_eeprom? ( sys-apps/pciutils[static-libs(+)] )
+ nicintel_spi? ( sys-apps/pciutils[static-libs(+)] )
+ nicnatsemi? ( sys-apps/pciutils[static-libs(+)] )
+ nicrealtek? ( sys-apps/pciutils[static-libs(+)] )
+ ogp_spi? ( sys-apps/pciutils[static-libs(+)] )
+ pickit2_spi? ( virtual/libusb:0[static-libs(+)] )
+ rayer_spi? ( sys-apps/pciutils[static-libs(+)] )
+ satamv? ( sys-apps/pciutils[static-libs(+)] )
+ satasii? ( sys-apps/pciutils[static-libs(+)] )
+ usbblaster_spi? ( dev-embedded/libftdi[static-libs(+)] )"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+DEPEND="${RDEPEND}
+ static? ( ${LIB_DEPEND} )
+ sys-apps/diffutils"
+RDEPEND+=" !internal_dmi? ( sys-apps/dmidecode )"
+
+_flashrom_enable() {
+ local c="CONFIG_${2:-$(echo "$1" | tr [:lower:] [:upper:])}"
+ args+=( "${c}=$(usex $1 yes no)" )
+}
+flashrom_enable() {
+ local u
+ for u ; do _flashrom_enable "${u}" ; done
+}
+
+src_prepare() {
+ sed -i \
+ -e 's:pkg-config:$(PKG_CONFIG):' \
+ Makefile || die
+}
+
+src_compile() {
+ # Help keep things in sync.
+ local sprogs=$(echo $(
+ grep -o 'CONFIG_[A-Z0-9_]*' flashrom.c | \
+ sort -u | \
+ sed 's:^CONFIG_::' | \
+ tr '[:upper:]' '[:lower:]'))
+ local eprogs=$(echo ${IUSE_PROGRAMMERS//[+-]})
+ if [[ ${sprogs} != "${eprogs}" ]] ; then
+ eerror "The ebuild needs to be kept in sync."
+ eerror "IUSE set to: ${eprogs}"
+ eerror "flashrom.c : ${sprogs}"
+ die "sync IUSE to the list of source programmers"
+ fi
+
+ # Turn USE flags into CONFIG_xxx settings.
+ local args=()
+ flashrom_enable ${eprogs}
+ _flashrom_enable wiki PRINT_WIKI
+ _flashrom_enable static STATIC
+
+ # You have to specify at least one programmer, and if you specify more than
+ # one programmer you have to include either dummy or internal in the list.
+ # We pick dummy as the default because internal requires libpci.
+ if ! use internal && ! use dummy ; then
+ if [[ ${#args[@]} -ne 1 ]] ; then
+ ewarn "You have to specify at least one programmer, and if you specify"
+ ewarn "more than one programmer, you have to enable either dummy or"
+ ewarn "internal as well. 'dummy' will be the default now."
+ args+=( CONFIG_DUMMY=yes )
+ fi
+ fi
+
+ tc-export AR CC PKG_CONFIG RANLIB
+ emake WARNERROR=no "${args[@]}"
+}
+
+src_test() {
+ if [[ -d tests ]] ; then
+ pushd tests >/dev/null
+ ./tests.py || die
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ dosbin flashrom
+ doman flashrom.8
+ dodoc README Documentation/*.txt
+
+ if use tools ; then
+ if use amd64 ; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ elif use x86 ; then
+ dosbin util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+ fi
+}
diff --git a/sys-apps/flashrom/metadata.xml b/sys-apps/flashrom/metadata.xml
new file mode 100644
index 000000000000..2501995b300b
--- /dev/null
+++ b/sys-apps/flashrom/metadata.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>idl0r@gentoo.org</email>
+ <name>Christian Ruppert</name>
+ </maintainer>
+ <maintainer>
+ <email>peter@stuge.se</email>
+ <description>Please CC on all bugs</description>
+ </maintainer>
+ <use>
+ <flag name="atahpt">Highpoint (HPT) ATA/RAID controller support</flag>
+ <flag name="atavia">Support for VIA VT6421A SATA controllers</flag>
+ <flag name="bitbang_spi">Bitbanging SPI infrastructure</flag>
+ <flag name="buspirate_spi">Enable Bus Pirate SPI programmer</flag>
+ <flag name="dediprog">Dediprog SF100 support</flag>
+ <flag name="drkaiser">Enable Dr. Kaiser programmer</flag>
+ <flag name="dummy">Enable dummy tracing</flag>
+ <flag name="ft2232_spi">Enable ftdi programmer, flashing through FTDI/SPI USB interface</flag>
+ <flag name="gfxnvidia">Enable NVIDIA programmer</flag>
+ <flag name="internal">Enable internal/onboard support</flag>
+ <flag name="internal_dmi">Enable internal DMI decoding rather than use <pkg>sys-apps/dmidecode</pkg></flag>
+ <flag name="it8212">Support for ITE IT8212F ATA/RAID controllers</flag>
+ <flag name="linux_spi">Enable support for Linux userspace spidev interface</flag>
+ <flag name="mstarddc_spi">Support for SPI flash ROMs accessible through DDC in MSTAR-equipped displays</flag>
+ <flag name="nic3com">Enable 3Com NIC programmer</flag>
+ <flag name="nicintel">Support for Intel NICs</flag>
+ <flag name="nicintel_eeprom">Support for EEPROMs on Intel Gigabit network cards</flag>
+ <flag name="nicintel_spi">Support for SPI on Intel NICs</flag>
+ <flag name="nicnatsemi">Support for National Semiconductor NICs</flag>
+ <flag name="nicrealtek">Support for Realtek NICs</flag>
+ <flag name="ogp_spi">Enable support for OGP (Open Graphics Project) SPI flashing</flag>
+ <flag name="pickit2_spi">SUpport for SPI flash ROMs accessible via Microchip PICkit2</flag>
+ <flag name="pony_spi">Enable support for SI-Prog like hardware by Lancos</flag>
+ <flag name="rayer_spi">RayeR SPIPGM hardware support</flag>
+ <flag name="satasii">Enable programmer for SiI SATA controllers</flag>
+ <flag name="satamv">Enable programmer for Marvell SATA controllers</flag>
+ <flag name="serprog">Enable Serial Flasher programmer</flag>
+ <flag name="tools">Install additional tools</flag>
+ <flag name="usbblaster">Enable support for Altera USB-Blaster dongles</flag>
+ <flag name="usbblaster_spi">Enable support for Altera USB-Blaster dongles</flag>
+ <flag name="wiki">Enable wiki informations, like supported devices etc.</flag>
+ </use>
+ <longdescription lang="en">
+flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash BIOS/EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various other programmer devices.
+
+ Supports more than 380 flash chips, 260 chipsets, 450 mainboards, 50 PCI devices, 12 USB devices and various parallel/serial port-based programmers.
+ Supports parallel, LPC, FWH and SPI flash interfaces and various chip packages (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40, TSOP48, BGA and more)
+ No physical access needed, root access is sufficient (not needed for some programmers).
+ No bootable floppy disk, bootable CD-ROM or other media needed.
+ No keyboard or monitor needed. Simply reflash remotely via SSH.
+ No instant reboot needed. Reflash your chip in a running system, verify it, be happy. The new firmware will be present next time you boot.
+ Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery.
+ Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check flashrom output and error codes.
+ Speed. flashrom is often much faster than most vendor flash tools.
+ Portability. Supports DOS, Linux, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, Solaris, Mac OS X, and other Unix-like OSes. Partial Windows support is available (no internal programmer support at the moment, hence no "BIOS flashing").
+ </longdescription>
+</pkgmetadata>