Gentoo Archives: gentoo-commits

From: "Robin H. Johnson" <robbat2@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/ipmiutil/, sys-apps/ipmiutil/files/
Date: Fri, 06 May 2022 04:12:02
Message-Id: 1651810306.ba9f1c5883a21c5ad332abdf2e23bc89ce79e397.robbat2@gentoo
1 commit: ba9f1c5883a21c5ad332abdf2e23bc89ce79e397
2 Author: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
3 AuthorDate: Fri May 6 04:11:46 2022 +0000
4 Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
5 CommitDate: Fri May 6 04:11:46 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba9f1c58
7
8 sys-apps/ipmiutil: bump for openssl-3.0
9
10 Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>
11
12 sys-apps/ipmiutil/Manifest | 1 +
13 .../files/ipmiutil-3.1.8-fix-configure.patch | 170 +++++++++++++++++++++
14 sys-apps/ipmiutil/ipmiutil-3.1.8.ebuild | 81 ++++++++++
15 3 files changed, 252 insertions(+)
16
17 diff --git a/sys-apps/ipmiutil/Manifest b/sys-apps/ipmiutil/Manifest
18 index bc3c07233bb9..5fdc81507f2a 100644
19 --- a/sys-apps/ipmiutil/Manifest
20 +++ b/sys-apps/ipmiutil/Manifest
21 @@ -2,3 +2,4 @@ DIST ipmiutil-3.0.6.tar.gz 1692679 BLAKE2B dcc02dbb5467b824005dbc95c8f5231b2e275
22 DIST ipmiutil-3.0.9.tar.gz 1697688 BLAKE2B 93ed8865cae1cea0ea4f7de4683f4698e3f75e9190cc7e0af1832ca44a08f52aa149393761f1ede3994827db78841061d54058bbe4178b5930accd3a4c225ba7 SHA512 c2c0a516216a46a52621159e665a77d96cf81f385fc9cf19877e72283be3e1a4dad5a4826454727b71576c22cc4de3c73ff428d26f35bf496c7dc1511305cda3
23 DIST ipmiutil-3.1.6.tar.gz 1693461 BLAKE2B efc2b283d7655b8afb9d3d8da2e5458deea1c1b939f3ccdf2be0cdf3792ea60229099cce1b8e32f087972385feb01d604f1c63bddbfd031210d5acf8a6b1b9d7 SHA512 9bccfa2e0bba7f30e422d67f93ee6cff50c08cc8bceab5ba5bfd1b0a91e1af8a4a98a2eaa81364e8a1f38e0bd1ce6b99717d86957c6f689aa7329e7013f5b0ef
24 DIST ipmiutil-3.1.7.tar.gz 1726396 BLAKE2B 7fa31f8aca61462fc08dd4fe420e27eecce2ee9fa5fb2676eb944e2ae6c09598aec5f06d59e4ed02faab077003b14085f944b6cf0b63f90b10f2660f363e997b SHA512 7522808e4a94c8627de0a95dde0e3eb463ba05948159b5181129b573ce8f9feba3543ef603c14e7cdcafcbd58ca5319536cc5534ea8191cce0ef9d33cc548274
25 +DIST ipmiutil-3.1.8.tar.gz 1841037 BLAKE2B 69139fc2b82a701657c5fec6aa928a0ee2d7874a8ebc26631eca438f298e8bddd3afb578462979eb24cd51bd816263f13e9f38fec8b5d6fa4fcefb2519a652c9 SHA512 77a01be420d8362ddce2b2b2bd44ee53a70812b29b3dd7bc5add6429f0e43a48905ca0401e1855f2cca5e69086605eb7b84e2f4bf9cf33251934acc0fe51346f
26
27 diff --git a/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch b/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch
28 new file mode 100644
29 index 000000000000..f59701079828
30 --- /dev/null
31 +++ b/sys-apps/ipmiutil/files/ipmiutil-3.1.8-fix-configure.patch
32 @@ -0,0 +1,170 @@
33 +Fix automagic configure options.
34 +
35 +--- ipmiutil-3.1.8.orig/configure.ac 2022-05-05 20:48:27.180318912 -0700
36 ++++ ipmiutil-3.1.8/configure.ac 2022-05-05 20:53:10.070503250 -0700
37 +@@ -80,22 +80,30 @@
38 + # fi]
39 +
40 + drv_landesk=0
41 ++LANDESK_CFLAGS=""
42 ++LANDESK_LDADD=""
43 + dnl configure for LANDESK libipmiapi or not
44 + AC_ARG_ENABLE([landesk],
45 +- [ --enable-landesk adds landesk library support [[default=no]]],
46 +- [if test "x$enableval" = "xyes"; then
47 ++ AS_HELP_STRING([--enable-landesk], [enable landesk support (default=no)]),
48 ++ [],
49 ++ [enable_landesk=no]
50 ++)
51 ++AS_IF([test "x$enable_landesk" = "xyes"], [
52 + drv_landesk=1
53 + LANDESK_CFLAGS="-DLINK_LANDESK"
54 + LANDESK_LDADD="-lipmiapi -L../lib"
55 + AC_SUBST(LANDESK_CFLAGS)
56 + AC_SUBST(LANDESK_LDADD)
57 +- fi]
58 +- )
59 ++ echo "landesk enabled"
60 ++])
61 +
62 + dnl Configure ipmiutil for lanplus (libipmi_lanplus.a) or not (default yes)
63 + AC_ARG_ENABLE([lanplus],
64 +- [ --disable-lanplus disable lanplus support [[default=enabled]]],)
65 +-if test "x$enable_lanplus" = "xno"; then
66 ++ AS_HELP_STRING([--disable-lanplus], [enable lanplus support (default=yes)]),
67 ++ [],
68 ++ [enable_lanplus=yes]
69 ++)
70 ++
71 + drv_lanplus=""
72 + LANPLUS_CFLAGS=""
73 + LANPLUS_LDADD=""
74 +@@ -103,8 +111,7 @@
75 + LANPLUS_CRYPTO=""
76 + LANPLUS_SAM="no"
77 + LD_SAMX=""
78 +- echo "lanplus disabled"
79 +-else
80 ++AS_IF([test "x$enable_lanplus" = "xyes"], [
81 + drv_lanplus="lanplus"
82 + LANPLUS_CFLAGS="-DHAVE_LANPLUS"
83 + # LANPLUS_CFLAGS="-DHAVE_LANPLUS -I${projdir}/lib/lanplus/inc"
84 +@@ -115,7 +122,7 @@
85 + LANPLUS_SAM="yes"
86 + LD_SAMX="../lib/libipmi_lanplus.a -lcrypto"
87 + echo "lanplus enabled"
88 +-fi
89 ++])
90 +
91 + dnl Configure libipmiutil.a for lanplus or not
92 + dnl Only SOL requires lanplus, so usually build libipmiutil.a without lanplus
93 +@@ -130,21 +137,28 @@
94 + #fi
95 +
96 + # strings /lib/libssl.so* |grep EVP_sha256
97 +-dnl configure for SHA256, build lanplus with SHA256 support, uses later openssl.
98 ++dnl configure for SHA256, build lanplus with SHA256 support
99 ++dnl requires openssl-1.0.1 which was released in 2012/03
100 + AC_ARG_ENABLE([sha256],
101 +- [ --enable-sha256 build with SHA256 support, requires later openssl.],
102 +- [if test "x$enableval" = "xyes"; then
103 +- LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
104 +- fi]
105 ++ AS_HELP_STRING([--disable-sha256], [build with SHA256 support (default=yes)]),
106 ++ dnl action if passed
107 ++ [],
108 ++ dnl action if not passed
109 ++ [enable_sha256=yes]
110 + )
111 ++AS_IF([test "x$enable_sha256" = "xyes"], [
112 ++ LANPLUS_CFLAGS="$LANPLUS_CFLAGS -DHAVE_SHA256"
113 ++])
114 +
115 + dnl configure for EKANALYZER, build with ekanalyzer function enabled
116 + AC_ARG_ENABLE([ekanalyzer],
117 +- [ --enable-ekanalyzer build with ekanalyzer function enabled.],
118 +- [if test "x$enableval" = "xyes"; then
119 +- OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
120 +- fi]
121 ++ AS_HELP_STRING([--enable-ekanalyzer], [build with ekanalyzer function enabled.]),
122 ++ [],
123 ++ [enable_ekanalyzer=no]
124 + )
125 ++AS_IF([test "x$enable_ekanalyzer" = "xyes"], [
126 ++ OS_CFLAGS="$OS_CFLAGS -DHAVE_EKANAL"
127 ++ ])
128 +
129 + GPL_CFLAGS=""
130 + CROSS_LFLAGS=""
131 +@@ -154,17 +168,20 @@
132 + SYSTEMD_DIR=/usr/share/ipmiutil
133 +
134 + AC_ARG_ENABLE([useflags],
135 +- [ --enable-useflags include environment CFLAGS and LDFLAGS.],
136 +- [if test "x$enableval" = "xyes"; then
137 ++ AS_HELP_STRING([--enable-useflags], [include environment CFLAGS and LDFLAGS.]),
138 ++ [],
139 ++ [enable_useflags=no])
140 ++AS_IF([test "x$enable_useflags" = "xyes"], [
141 + CROSS_CFLAGS="$CFLAGS"
142 + CROSS_LFLAGS="$LDFLAGS"
143 +- fi]
144 +- )
145 ++])
146 +
147 + dnl configure for standalone, with no lanplus or GPL libs
148 + AC_ARG_ENABLE([standalone],
149 +- [ --enable-standalone build standalone, with no GPL or LanPlus libs.],
150 +- [if test "x$enableval" = "xyes"; then
151 ++ AS_HELP_STRING([--enable-standalone], [build standalone, with no GPL or LanPlus libs.]),
152 ++ [],
153 ++ [enable_standalone=no])
154 ++AS_IF([test "x$enable_standalone" = "xyes"], [
155 + GPL_CFLAGS=""
156 + LANPLUS_CFLAGS=""
157 + LANPLUS_LDADD=""
158 +@@ -178,10 +195,11 @@
159 + # cross-compiling, so link with -static (e.g. Android ARM)
160 + CROSS_LFLAGS="-static"
161 + CROSS_CFLAGS="-DCROSS_COMPILE"
162 ++ # TODO: how can this be effective? Configure only converts Makefile.in -> Makefile
163 ++ # Configure does not convert Makefile.am->Makefile.in
164 + sed -i -e 's/^# ipmiutil: $(METASOURCE:.c=.o)/ipmiutil:\t$(METASOURCE:.c=.o)\n\t$(CC) $(CFLAGS) $(LDFLAGS) -o ipmiutil $(METASOURCE:.c=.o) $(LDADD)/' util/Makefile.am
165 + fi
166 +- fi]
167 +- )
168 ++ ])
169 +
170 + AC_ARG_ENABLE([doc],
171 + [ --enable-doc build with documentation [[default=yes]]],
172 +@@ -194,20 +212,22 @@
173 +
174 + dnl build libipmiutil with sensor modules
175 + AC_ARG_ENABLE([libsensors],
176 +- [ --enable-libsensors build libipmiutil with sensor modules [[default=no]]],
177 +- [if test "x$enableval" = "xyes"; then
178 ++ AS_HELP_STRING([--enable-libsensors], [build libipmiutil with sensor modules (default=no)]),
179 ++ [],
180 ++ [enable_libsensors=no])
181 ++AS_IF([test "x$enable_libsensors" = "xyes"], [
182 + LIBSENSORS="isensor2.o ievents2.o"
183 + SAM2OBJ=""
184 +- fi]
185 +- )
186 ++ ])
187 +
188 + dnl configure for GPL build or not (GPL files: md2.h, ipmi_ioctl.h)
189 + AC_ARG_ENABLE([gpl],
190 +- [ --enable-gpl build with some GPL code [[default=no]]],
191 +- [if test "x$enableval" = "xyes"; then
192 ++ AS_HELP_STRING([--enable-gpl], [build with some GPL code (default=no)]),
193 ++ [],
194 ++ [enable_gpl=no])
195 ++AS_IF([test "x$enable_gpl" = "xyes"], [
196 + GPL_CFLAGS="-DALLOW_GPL"
197 +- fi]
198 +- )
199 ++ ])
200 +
201 + dnl Does this Linux have systemd enabled? Otherwise use sysv init.
202 + AC_ARG_ENABLE([systemd],
203
204 diff --git a/sys-apps/ipmiutil/ipmiutil-3.1.8.ebuild b/sys-apps/ipmiutil/ipmiutil-3.1.8.ebuild
205 new file mode 100644
206 index 000000000000..ea429e9dfd34
207 --- /dev/null
208 +++ b/sys-apps/ipmiutil/ipmiutil-3.1.8.ebuild
209 @@ -0,0 +1,81 @@
210 +# Copyright 1999-2022 Gentoo Authors
211 +# Distributed under the terms of the GNU General Public License v2
212 +
213 +EAPI=7
214 +inherit autotools systemd
215 +
216 +DESCRIPTION="IPMI Management Utilities"
217 +HOMEPAGE="http://ipmiutil.sourceforge.net/"
218 +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
219 +
220 +LICENSE="BSD"
221 +SLOT="0"
222 +KEYWORDS="amd64 ~hppa ~ppc x86"
223 +IUSE="static-libs"
224 +
225 +RDEPEND=">=dev-libs/openssl-1:0="
226 +DEPEND="${RDEPEND}
227 + virtual/os-headers"
228 +
229 +PATCHES=(
230 + "${FILESDIR}"/${PN}-3.1.7-flags.patch
231 + "${FILESDIR}"/${PN}-2.9.9-lib_symlink.patch
232 + "${FILESDIR}"/${PN}-3.1.8-fix-configure.patch
233 +)
234 +
235 +src_prepare() {
236 + default
237 +
238 + # Fix hardcoded CFLAGS
239 + sed -i \
240 + -e 's|-O2 -g|$(CFLAGS)|g' \
241 + -e 's|-g -O2|$(CFLAGS)|g' \
242 + util/Makefile.am* || die
243 + # The configure script makes some guarded and some blind calls to rpm &
244 + # rpmbuild, that trigger sandbox warnings if rpm is installed in Gentoo.
245 + sed -r -i -e 's/which rpm/false &/' configure.ac || die
246 + sed -r -i -e 's/`(rpm|rpmbuild)/`false \1/' configure.ac || die
247 +
248 + # Don't compress man pages
249 + sed '/gzip -nf/d' -i doc/Makefile.am || die
250 +
251 + eautoreconf
252 +}
253 +
254 +src_configure() {
255 + local myeconfargs=(
256 + --disable-systemd
257 + --enable-sha256
258 + --enable-lanplus
259 + )
260 + econf "${myeconfargs[@]}"
261 +}
262 +
263 +src_compile() {
264 + # Ugly workaround. Upstream is misusing the make system here
265 + # and it doesn't even work.
266 + # Please check on each bump if this workaround is still required.
267 + # Yup, still needed in 3.18
268 + pushd lib/lanplus &>/dev/null || die
269 + emake
270 + cp libipmi_lanplus.a .. || die
271 + popd &>/dev/null || die
272 +
273 + emake
274 +}
275 +
276 +src_install() {
277 + emake DESTDIR="${D}" sysdto="${D}/$(systemd_get_systemunitdir)" install
278 + dodoc -r AUTHORS ChangeLog NEWS README TODO doc/UserGuide
279 +
280 + # Init scripts are only for Fedora
281 + # TODO: ship OpenRC systems for non-systemd?
282 + rm -r "${ED}"/etc/init.d || die 'remove initscripts failed'
283 +
284 + # --disable-static has no effect
285 + if ! use static-libs ; then
286 + find "${ED}" -type f -name '*.a' -delete || die
287 + fi
288 +
289 + keepdir /var/lib/ipmiutil
290 +}