Diff flashrom-1.2-r4 with a flashrom-1.3.0

/usr/portage/sys-apps/flashrom/flashrom-1.3.0.ebuild 2023-10-09 14:52:35.372368498 +0300
1
# Copyright 1999-2022 Gentoo Authors
1
# Copyright 1999-2023 Gentoo Authors
2 2
# Distributed under the terms of the GNU General Public License v2
3 3

  
4
EAPI=7
4
EAPI=8
5 5

  
6 6
inherit meson
7 7

  
8
if [[ ${PV} == "9999" ]] ; then
9
	EGIT_REPO_URI="https://review.coreboot.org/flashrom.git"
10
	inherit git-r3
11
else
12
	MY_P="${PN}-v${PV}"
13
	SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
14
	KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv x86"
15
	S="${WORKDIR}/${MY_P}"
16
fi
8
MY_P="${PN}-v${PV}"
9
SRC_URI="https://download.flashrom.org/releases/${MY_P}.tar.bz2"
10
KEYWORDS="amd64 arm arm64 ppc ~ppc64 ~riscv x86"
11
S="${WORKDIR}/${MY_P}"
17 12

  
18 13
DESCRIPTION="Utility for reading, writing, erasing and verifying flash ROM chips"
19 14
HOMEPAGE="https://flashrom.org/Flashrom"
......
21 16
LICENSE="GPL-2"
22 17
SLOT="0"
23 18

  
24
# The defaults match the upstream meson_options.txt.
19
# The defaults should match the upstream "default" flags in meson.build
25 20
IUSE_PROGRAMMERS="
26 21
	atahpt
27 22
	atapromise
......
31 26
	+dediprog
32 27
	+developerbox-spi
33 28
	+digilent-spi
29
	+dirtyjtag-spi
34 30
	+drkaiser
35 31
	+dummy
36 32
	+ft2232-spi
......
40 36
	jlink-spi
41 37
	+linux-mtd
42 38
	+linux-spi
39
	mediatek-i2c-spi
43 40
	mstarddc-spi
44 41
	+nic3com
45 42
	+nicintel
......
48 45
	nicnatsemi
49 46
	+nicrealtek
50 47
	+ogp-spi
48
	parade-lspcon
51 49
	+pickit2-spi
52 50
	+pony-spi
51
	+raiden-debug-spi
53 52
	+rayer-spi
53
	realtek-mst-i2c-spi
54 54
	+satamv
55 55
	+satasii
56 56
	+serprog
57 57
	+stlinkv3-spi
58
	+usbblaster-spi
59
"
60
IUSE="${IUSE_PROGRAMMERS} +internal-dmi tools"
58
	+usbblaster-spi"
59
IUSE="${IUSE_PROGRAMMERS} +internal-dmi test tools"
61 60

  
62
RDEPEND="atahpt? ( sys-apps/pciutils )
61
RESTRICT="!test? ( test )"
62

  
63
COMMON="atahpt? ( sys-apps/pciutils )
63 64
	atapromise? ( sys-apps/pciutils )
64 65
	atavia? ( sys-apps/pciutils )
65 66
	ch341a-spi? ( virtual/libusb:1 )
66 67
	dediprog? ( virtual/libusb:1 )
67 68
	developerbox-spi? ( virtual/libusb:1 )
68 69
	digilent-spi? ( virtual/libusb:1 )
70
	dirtyjtag-spi? ( virtual/libusb:1 )
69 71
	drkaiser? ( sys-apps/pciutils )
70 72
	ft2232-spi? ( dev-embedded/libftdi:1= )
71 73
	gfxnvidia? ( sys-apps/pciutils )
......
73 75
	it8212? ( sys-apps/pciutils )
74 76
	jlink-spi? ( dev-embedded/libjaylink )
75 77
	nic3com? ( sys-apps/pciutils )
78
	nicintel? ( sys-apps/pciutils )
76 79
	nicintel-eeprom? ( sys-apps/pciutils )
77 80
	nicintel-spi? ( sys-apps/pciutils )
78
	nicintel? ( sys-apps/pciutils )
79 81
	nicnatsemi? ( sys-apps/pciutils )
80 82
	nicrealtek? ( sys-apps/pciutils )
81 83
	ogp-spi? ( sys-apps/pciutils )
82 84
	pickit2-spi? ( virtual/libusb:1 )
83
	rayer-spi? ( sys-apps/pciutils )
85
	raiden-debug-spi? ( virtual/libusb:1 )
84 86
	satamv? ( sys-apps/pciutils )
85 87
	satasii? ( sys-apps/pciutils )
86 88
	stlinkv3-spi? ( virtual/libusb:1 )
87 89
	usbblaster-spi? ( dev-embedded/libftdi:1= )"
88
DEPEND="${RDEPEND}
89
	sys-apps/diffutils"
90
RDEPEND+=" !internal-dmi? ( sys-apps/dmidecode )"
90
RDEPEND="${COMMON}
91
	!internal-dmi? ( sys-apps/dmidecode )"
92
DEPEND="${COMMON}
93
	sys-apps/diffutils
94
	linux-mtd? ( sys-kernel/linux-headers )
95
	linux-spi? ( sys-kernel/linux-headers )
96
	mediatek-i2c-spi? ( sys-kernel/linux-headers )
97
	mstarddc-spi? ( sys-kernel/linux-headers )
98
	parade-lspcon? ( sys-kernel/linux-headers )
99
	realtek-mst-i2c-spi? ( sys-kernel/linux-headers )"
100
BDEPEND="test? ( dev-util/cmocka )"
91 101

  
92 102
DOCS=( README Documentation/ )
93 103

  
94
PATCHES=(
95
	"${FILESDIR}"/${PN}-1.2_meson-fixes.patch
96
	"${FILESDIR}"/${PN}-1.2_meson-install-manpage.patch
97
)
98

  
99 104
src_configure() {
105
	local programmers="$(printf '%s,' $(for flag in ${IUSE_PROGRAMMERS//+/}; do usev ${flag}; done))"
106
	programmers="${programmers%,}"
107
	programmers="${programmers//-/_}"
100 108
	local emesonargs=(
101
		$(meson_use atahpt config_atahpt)
102
		$(meson_use atapromise config_atapromise)
103
		$(meson_use atavia config_atavia)
104
		$(meson_use buspirate-spi config_buspirate_spi)
105
		$(meson_use ch341a-spi config_ch341a_spi)
106
		$(meson_use dediprog config_dediprog)
107
		$(meson_use developerbox-spi config_developerbox_spi)
108
		$(meson_use digilent-spi config_digilent_spi)
109
		$(meson_use drkaiser config_drkaiser)
110
		$(meson_use dummy config_dummy)
111
		$(meson_use ft2232-spi config_ft2232_spi)
112
		$(meson_use gfxnvidia config_gfxnvidia)
113
		$(meson_use internal config_internal)
114
		$(meson_use internal-dmi config_internal_dmi)
115
		$(meson_use it8212 config_it8212)
116
		$(meson_use jlink-spi config_jlink_spi)
117
		$(meson_use linux-mtd config_linux_mtd)
118
		$(meson_use linux-spi config_linux_spi)
119
		$(meson_use mstarddc-spi config_mstarddc_spi)
120
		$(meson_use nic3com config_nic3com)
121
		$(meson_use nicintel-eeprom config_nicintel_eeprom)
122
		$(meson_use nicintel-spi config_nicintel_spi)
123
		$(meson_use nicintel config_nicintel)
124
		$(meson_use nicnatsemi config_nicnatsemi)
125
		$(meson_use nicrealtek config_nicrealtek)
126
		$(meson_use ogp-spi config_ogp_spi)
127
		$(meson_use pickit2-spi config_pickit2_spi)
128
		$(meson_use pony-spi config_pony_spi)
129
		$(meson_use rayer-spi config_rayer_spi)
130
		$(meson_use satamv config_satamv)
131
		$(meson_use satasii config_satasii)
132
		$(meson_use stlinkv3-spi config_stlinkv3_spi)
133
		$(meson_use serprog config_serprog)
134
		$(meson_use usbblaster-spi config_usbblaster_spi)
109
		-Dclassic_cli="enabled"
110
		-Dprogrammer="${programmers}"
111
		$(meson_feature test tests)
112
		$(meson_feature tools ich_descriptors_tool)
135 113
	)
136 114
	meson_src_configure
137 115
}
......
139 117
src_install() {
140 118
	meson_src_install
141 119

  
120
	# Upstream requires libflashrom.a to be present at build time because the classic CLI
121
	# executable uses internal symbols from that library. Therefore, we let it be built
122
	# but keep it out of the installed tree.
123
	find "${ED}" -name '*.a' -delete || die
124

  
142 125
	if use tools; then
143 126
		dosbin "${BUILD_DIR}"/util/ich_descriptors_tool/ich_descriptors_tool
144 127
	fi
Thank you!