summaryrefslogtreecommitdiff
path: root/sys-apps/flashrom
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/flashrom')
-rw-r--r--sys-apps/flashrom/Manifest2
-rw-r--r--sys-apps/flashrom/flashrom-1.4.0.ebuild142
2 files changed, 144 insertions, 0 deletions
diff --git a/sys-apps/flashrom/Manifest b/sys-apps/flashrom/Manifest
index 1fd7c807a536..267b04975f3c 100644
--- a/sys-apps/flashrom/Manifest
+++ b/sys-apps/flashrom/Manifest
@@ -1,7 +1,9 @@
AUX flashrom-1.3.0-c99.patch 2134 BLAKE2B d1f0216a5281719972208d22ae31ca19fd6e34d10f3e2c9fb9e9633ea04fe989fd9fbe47939b2f1a9a51f99dd7ca450c479ad3abbcda9f61488d3fd8b4ee1209 SHA512 5c1c8a9663f1d584a4a27a8826062127be9ac2737d40a41c90a3e955c293c7151ed6038cbeaf41cdcb5b28ec654024e9d7ec83f7a22a3c7128cf0074b57f1adb
AUX flashrom-1.3.0-libflashrom.patch 935 BLAKE2B e982b5872a9588cf7b792ff533911e86cc849180ff79b00c1a9469368f9c8ea2c843de90c7e59128c3c76c414c8376811ceccf5776fb520d3b39d23a3229995a SHA512 dce40f9ab1624942888d2db62169147281aadba448d12e54484b5b14e5df49f62f39b742ac6baf38f13328332336c5e40e8c7b2f964f0ebd22e9f3685a22240c
AUX flashrom-1.3.0_spi-master.patch 9287 BLAKE2B 5e85ec4ce06edce61cfaa00a7dc5e954c76f4d404fb096009f14c11771719996679d185a0271ffcfc7518bc3e93b3264c1cc9c3cc61796a651df7a3a6027fef6 SHA512 b97e4546692273e787c8e1f8f01074978484ef8dab4d13887d58e60d3c643368bf853c7ee2a883c8aecdff432281f3539ace3d08253c84c8405cbfbecf9187bc
+DIST flashrom-1.4.0.tar.gz 1223536 BLAKE2B 6ff3a1a8a29187e841009319995028dd7dab0ac6d08587ae8d23b19736ca9fd34fe2378620515a4e21c587862f60131d1b9d593e09d4a06ca3632d215791c106 SHA512 356a0e6d42981f0eff18a9b19ee1df3aed182437737fe01ddbe5757b34a99ffd729b7bfbf0a419df76bf4109fa12975176a7ccaf58b598d60e574150dfc7b7ce
DIST flashrom-v1.3.0.tar.bz2 489782 BLAKE2B e6d2284d83171b003b434251f060fa44edf32ecfd3d397bd4ba39b74c6a0b5c9d1659b703dd6b632b63aa4bf27d08c8aeece72920199712c6a4ae160b2eb3a8a SHA512 73b6e00bd3bc66c98d4ad53966a65b19d3d92f07d7b210d69e041d6f5788605b9791a9bf7aec0a52e13d19fcb62c4bdaf4bab9f805fc31468393ca313129a77b
EBUILD flashrom-1.3.0-r1.ebuild 3316 BLAKE2B 8bf9cd5852d5802b40da3446b865608f3a33e8e843acdd548ef3d1a9b1b969bad78f81c2321766b631c5c2ce6d03a508b9082622a0d92863587db49a600673e0 SHA512 508611ca0f0d59062db946fb9d3722db241aa81a78922c1a2ac37490e7ff605e480d301577d455ff2cf682f3daa389106020178def57b7bdfcc9f5e71caaa9d3
EBUILD flashrom-1.3.0-r3.ebuild 3698 BLAKE2B d5dab9b199d182b226ebb88343fdf13cdbd2f642b8bf11ca629ca38f4e4aa4a9d638ef7e321cac1b82937149a0ebb2e83e711d9ec28c5c90ffe93c9268f05314 SHA512 bcc4a9bc9a2441bdc71313da3c1beb71723bbb0af94e25d747f84dc9110802be8fcd058671b91d33a1879353f346a154f827a14c9eeb2c7e143863a90bd3e875
+EBUILD flashrom-1.4.0.ebuild 3585 BLAKE2B 2b5dce59977fd13ff45db8c822b5121d2f5e155126f14832a00ed46313c2dd1521b18d5c927061f756120a9f2e40bd9bcda5d4948fdcbe394d2dd12a80d1870d SHA512 c3672749a21444fa3ffd26168ab62699479476ddb240e3adcda9a68f43b9bc3a77291690bfdd5a770516e76e37003ba2cd14870c6f3ce0de857be6a7ec1b03f6
MISC metadata.xml 5075 BLAKE2B a698e5756c49254e9365a613dc418ac9ba27a0f54d5a0e4550d89c9938b32dbe01f0be03a296bc08973cf31cda4e7af33cd681c81869c8ab91aced6c760d9638 SHA512 6a8d44d70af1d630f791648c05023e059d97e799bf1112e1cdffe3ff1167e52edfe7fd0d9a5aa6834844d305827ef2fa92264277c4c63c6015641da36b028d81
diff --git a/sys-apps/flashrom/flashrom-1.4.0.ebuild b/sys-apps/flashrom/flashrom-1.4.0.ebuild
new file mode 100644
index 000000000000..de2e49b9ac44
--- /dev/null
+++ b/sys-apps/flashrom/flashrom-1.4.0.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
+HOMEPAGE="https://www.flashrom.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+
+# The defaults should match the upstream "default" flags in meson.build
+IUSE_PROGRAMMERS="
+ atahpt
+ atapromise
+ +atavia
+ +buspirate-spi
+ +ch341a-spi
+ +dediprog
+ +developerbox-spi
+ +digilent-spi
+ +dirtyjtag-spi
+ +drkaiser
+ +dummy
+ +ft2232-spi
+ +gfxnvidia
+ +internal
+ +it8212
+ jlink-spi
+ +linux-mtd
+ +linux-spi
+ mediatek-i2c-spi
+ mstarddc-spi
+ +nic3com
+ +nicintel
+ +nicintel-eeprom
+ +nicintel-spi
+ nicnatsemi
+ +nicrealtek
+ +ogp-spi
+ parade-lspcon
+ +pickit2-spi
+ +pony-spi
+ +raiden-debug-spi
+ +rayer-spi
+ realtek-mst-i2c-spi
+ +satamv
+ +satasii
+ +serprog
+ +stlinkv3-spi
+ +usbblaster-spi"
+IUSE="${IUSE_PROGRAMMERS} +internal-dmi test tools"
+
+RESTRICT="!test? ( test )"
+
+COMMON="atahpt? ( sys-apps/pciutils )
+ atapromise? ( sys-apps/pciutils )
+ atavia? ( sys-apps/pciutils )
+ ch341a-spi? ( virtual/libusb:1 )
+ dediprog? ( virtual/libusb:1 )
+ developerbox-spi? ( virtual/libusb:1 )
+ digilent-spi? ( virtual/libusb:1 )
+ dirtyjtag-spi? ( virtual/libusb:1 )
+ drkaiser? ( sys-apps/pciutils )
+ ft2232-spi? ( dev-embedded/libftdi:1= )
+ gfxnvidia? ( sys-apps/pciutils )
+ internal? ( sys-apps/pciutils )
+ it8212? ( sys-apps/pciutils )
+ jlink-spi? ( dev-embedded/libjaylink )
+ nic3com? ( sys-apps/pciutils )
+ nicintel? ( sys-apps/pciutils )
+ nicintel-eeprom? ( sys-apps/pciutils )
+ nicintel-spi? ( sys-apps/pciutils )
+ nicnatsemi? ( sys-apps/pciutils )
+ nicrealtek? ( sys-apps/pciutils )
+ ogp-spi? ( sys-apps/pciutils )
+ pickit2-spi? ( virtual/libusb:1 )
+ raiden-debug-spi? ( virtual/libusb:1 )
+ satamv? ( sys-apps/pciutils )
+ satasii? ( sys-apps/pciutils )
+ stlinkv3-spi? ( virtual/libusb:1 )
+ usbblaster-spi? ( dev-embedded/libftdi:1= )"
+RDEPEND="${COMMON}
+ !internal-dmi? ( sys-apps/dmidecode )"
+DEPEND="${COMMON}
+ sys-apps/diffutils
+ linux-mtd? ( sys-kernel/linux-headers )
+ linux-spi? ( sys-kernel/linux-headers )
+ mediatek-i2c-spi? ( sys-kernel/linux-headers )
+ mstarddc-spi? ( sys-kernel/linux-headers )
+ parade-lspcon? ( sys-kernel/linux-headers )
+ realtek-mst-i2c-spi? ( sys-kernel/linux-headers )"
+BDEPEND="test? ( dev-util/cmocka )"
+
+DOCS=( README.rst doc/ )
+
+src_prepare() {
+ default
+ if use elibc_musl ; then
+ # skip failing test #908539
+ sed -i -e 's/-DCONFIG_LINUX_MTD=1/-UCONFIG_LINUX_MTD/' \
+ meson.build || die
+ fi
+
+ # enable warnings
+ sed -i \
+ -e 's:^warning_flags = \[:warning_flags = \[ '"'-Wall'"' \]\nno = \[:' \
+ meson.build || die
+}
+
+src_configure() {
+ local programmers="$(printf '%s,' $(for flag in ${IUSE_PROGRAMMERS//+/}; do usev ${flag}; done))"
+ programmers="${programmers%,}"
+ programmers="${programmers//-/_}"
+ local emesonargs=(
+ -Dclassic_cli="enabled"
+ -Dprogrammer="${programmers}"
+ -Dman-pages="disabled"
+ -Ddocumentation="disabled"
+ $(meson_feature test tests)
+ $(meson_feature tools ich_descriptors_tool)
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ # Upstream requires libflashrom.a to be present at build time
+ # because the classic CLI executable uses internal symbols from that
+ # library. Therefore, we let it be built but keep it out of the
+ # installed tree.
+ find "${ED}" -name '*.a' -delete || die
+
+ if use tools; then
+ dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
+ fi
+}