From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 8FD44158089 for ; Sat, 23 Sep 2023 23:17:29 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A42C72BC031; Sat, 23 Sep 2023 23:17:28 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8E0812BC031 for ; Sat, 23 Sep 2023 23:17:28 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id CC42B34085A for ; Sat, 23 Sep 2023 23:17:27 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 35B731245 for ; Sat, 23 Sep 2023 23:17:26 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1695511006.65133120acc4590beec5e77e6a92f2a7fc49b375.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/ipmitool/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild X-VCS-Directories: sys-apps/ipmitool/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 65133120acc4590beec5e77e6a92f2a7fc49b375 X-VCS-Branch: master Date: Sat, 23 Sep 2023 23:17:26 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: caa2855b-9244-4be9-bd2d-a8b4d419400d X-Archives-Hash: 13ced8a2291ac0a89364d411c01a3f62 commit: 65133120acc4590beec5e77e6a92f2a7fc49b375 Author: Sam James gentoo org> AuthorDate: Sat Sep 23 23:16:44 2023 +0000 Commit: Sam James gentoo org> CommitDate: Sat Sep 23 23:16:46 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65133120 sys-apps/ipmitool: filter-lto & -fno-strict-aliasing Not really worried about fixing this properly at the moment given it's filled with device-specific hax anyway and hard to test. Closes: https://bugs.gentoo.org/863587 Signed-off-by: Sam James gentoo.org> sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild | 155 ++++++++++++++++++++++++++++ 1 file changed, 155 insertions(+) diff --git a/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild b/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild new file mode 100644 index 000000000000..6c2e4e526b97 --- /dev/null +++ b/sys-apps/ipmitool/ipmitool-1.8.19-r1.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic systemd + +DESCRIPTION="Utility for controlling IPMI enabled devices" +HOMEPAGE="https://codeberg.org/IPMITool/ipmitool" + +COMMIT_ID= +if [[ -n "${COMMIT_ID}" ]]; then + SRC_URI="https://github.com/ipmitool/ipmitool/archive/${COMMIT_ID}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${COMMIT_ID}" +else + MY_P="${PN^^}_${PV//./_}" + SRC_URI="https://github.com/ipmitool/ipmitool/archive/refs/tags/${MY_P}.tar.gz -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-${MY_P}" +fi + +# to generate: `make enterprise-numbers` from git checkout of release tag +SRC_URI+=" + https://dev.gentoo.org/~ajak/distfiles/${CATEGORY}/${PN}/enterprise-numbers-${PV}.xz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="openbmc openipmi static" + +RDEPEND=" + dev-libs/openssl:= + sys-libs/readline:= + openbmc? ( sys-apps/systemd:= ) +" +DEPEND=" + ${RDEPEND} + >=sys-devel/autoconf-2.69-r5 + virtual/os-headers + openipmi? ( sys-libs/openipmi ) +" +#freeipmi? ( sys-libs/freeipmi ) +# ipmitool CAN build against || ( sys-libs/openipmi sys-libs/freeipmi ) +# but it doesn't actually need either. + +PATCHES=( + "${FILESDIR}/${P}-missing-func-decl.patch" + # yoinked out of debian's patchset, previously carried in a SRC_URI + # tarball + "${FILESDIR}/${P}-fix-buffer-overflow.patch" + "${FILESDIR}/${P}-CVE-2011-4339.patch" + "${FILESDIR}/${P}-manpage-longlines.patch" + "${FILESDIR}/${P}-nvidia-iana.patch" +) + +src_prepare() { + default + + # Gentoo chooses to install ipmitool in /usr/sbin + # Where RedHat chooses /usr/bin + sed -i -e \ + 's,/usr/bin/ipmitool,/usr/sbin/ipmitool,g' \ + "${S}"/contrib/* \ + || die "sed bindir failed" + + eautoreconf + + # If this file is not present, then ipmitool will try to download it during make install! + cp -al "${WORKDIR}/enterprise-numbers-${PV}" "${S}/enterprise-numbers" \ + || die "Could not place IANA enterprise-numbers" +} + +src_configure() { + # bug #863587 + filter-lto + append-flags -fno-strict-aliasing + + # - LIPMI and BMC are the Solaris libs + # - OpenIPMI is unconditionally enabled in the configure as there is compat + # code that is used if the library itself is not available + # - FreeIPMI does build now, but is disabled until the other arches keyword it + # `use_enable freeipmi intf-free` \ + # - --enable-ipmievd is now unconditional + local econfargs=( + $(use_enable static) + --enable-ipmishell + --enable-intf-lan + --enable-intf-usb + $(use_enable openbmc intf-dbus) + --enable-intf-lanplus + --enable-intf-open + --enable-intf-serial + --disable-intf-bmc + --disable-intf-dummy + --disable-intf-free + --disable-intf-imb + --disable-intf-lipmi + --disable-internal-md5 + --with-kerneldir=/usr + --bindir=/usr/sbin + --runstatedir=/run + CFLAGS="${CFLAGS}" + ) + + econf "${econfargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" PACKAGE="${PF}" install + into /usr + + newinitd "${FILESDIR}/ipmievd.initd" ipmievd + newconfd "${FILESDIR}/ipmievd.confd" ipmievd + + # From debian, less configurable than OpenRC + systemd_dounit "${FILESDIR}/ipmievd.service" + + dosbin contrib/bmclanconf + + exeinto /usr/libexec + doexe contrib/log_bmc.sh + newinitd "${FILESDIR}/log_bmc.initd" log_bmc + + # contrib/exchange-bmc-os-info.init.redhat + # contrib/exchange-bmc-os-info.service.redhat + # contrib/exchange-bmc-os-info.sysconf + exeinto /usr/libexec + newexe contrib/exchange-bmc-os-info.init.redhat exchange-bmc-os-info + + insinto /etc/sysconfig + newins contrib/exchange-bmc-os-info.sysconf exchange-bmc-os-info + + systemd_newunit contrib/exchange-bmc-os-info.service.redhat exchange-bmc-os-info.service + newinitd "${FILESDIR}/exchange-bmc-os-info.initd" exchange-bmc-os-info + + # contrib/bmc-snmp-proxy + # contrib/bmc-snmp-proxy.service + # contrib/bmc-snmp-proxy.sysconf + exeinto /usr/libexec + doexe contrib/bmc-snmp-proxy + + insinto /etc/sysconfig + newins contrib/bmc-snmp-proxy.sysconf bmc-snmp-proxy + + systemd_dounit contrib/bmc-snmp-proxy.service + # TODO: initd for bmc-snmp-proxy + + insinto "/usr/share/${PN}" + doins contrib/oem_ibm_sel_map + + cd "${S}/contrib" + + docinto contrib + dodoc collect_data.sh create_rrds.sh create_webpage_compact.sh create_webpage.sh README +}