From 21a5b70c1df92f2cee5a4d655e1cc01a3c128e97 Mon Sep 17 00:00:00 2001 From: Ben Kohler Date: Mon, 13 Dec 2021 09:17:06 -0600 Subject: sys-apps/lshw: respect LDFLAGS Closes: https://bugs.gentoo.org/829001 Package-Manager: Portage-3.0.29, Repoman-3.0.3 Signed-off-by: Ben Kohler --- .../lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch | 33 +++++++++ sys-apps/lshw/lshw-02.19.2b_p20210121-r2.ebuild | 83 ++++++++++++++++++++++ 2 files changed, 116 insertions(+) create mode 100644 sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch create mode 100644 sys-apps/lshw/lshw-02.19.2b_p20210121-r2.ebuild (limited to 'sys-apps/lshw') diff --git a/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch b/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch new file mode 100644 index 000000000000..cce97cc611b6 --- /dev/null +++ b/sys-apps/lshw/files/lshw-02.19.2b-respect-LDFLAGS.patch @@ -0,0 +1,33 @@ +diff --git a/src/Makefile b/src/Makefile +index 7ae8218..5c990b0 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -30,7 +30,7 @@ endif + ifeq ($(ZLIB), 1) + CXXFLAGS+= -DZLIB $(shell pkg-config --cflags zlib) + endif +-LDFLAGS+=-L./core/ -g ++LIBS+=-L./core/ + ifneq ($(shell $(LD) --help 2| grep -- --as-needed), ) + LDFLAGS+= -Wl,--as-needed + endif +@@ -44,7 +44,6 @@ ifeq ($(ZLIB), 1) + endif + + export CXXFLAGS +-export LIBS + export LDFLAGS + + ifeq ($(ZLIB), 1) +diff --git a/src/gui/Makefile b/src/gui/Makefile +index 63c4ff5..7946736 100644 +--- a/src/gui/Makefile ++++ b/src/gui/Makefile +@@ -18,7 +18,6 @@ LIBS+=-L../core -llshw -lresolv $(GTKLIBS) + ifeq ($(SQLITE), 1) + LIBS+= $(shell pkg-config --libs sqlite3) + endif +-LDFLAGS= + ifneq ($(shell $(LD) --help 2| grep -- --as-needed), ) + LDFLAGS+= -Wl,--as-needed + endif diff --git a/sys-apps/lshw/lshw-02.19.2b_p20210121-r2.ebuild b/sys-apps/lshw/lshw-02.19.2b_p20210121-r2.ebuild new file mode 100644 index 000000000000..e3f4bf9fca99 --- /dev/null +++ b/sys-apps/lshw/lshw-02.19.2b_p20210121-r2.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PLOCALES='fr' + +inherit desktop flag-o-matic plocale toolchain-funcs xdg + +MY_COMMIT="fdab06ac0b190ea0aa02cd468f904ed69ce0d9f1" +MY_PV=$(ver_cut 3 PV/b/B).$(ver_cut 1-3)_$(ver_cut 5-6) + +DESCRIPTION="Hardware Lister" +HOMEPAGE="https://www.ezix.org/project/wiki/HardwareLiSter" +SRC_URI="https://ezix.org/src/pkg/lshw/archive/${MY_COMMIT}.tar.gz -> ${P}-${MY_PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="gtk sqlite static" + +REQUIRED_USE="static? ( !gtk !sqlite )" + +DEPEND="${RDEPEND}" +RDEPEND="sys-apps/hwdata + gtk? ( x11-libs/gtk+:3 ) + sqlite? ( dev-db/sqlite:3 )" +BDEPEND="gtk? ( virtual/pkgconfig ) + sqlite? ( virtual/pkgconfig )" + +S=${WORKDIR}/${PN} + +DOCS=( COPYING README.md docs/{Changelog,TODO,IODC.txt,lshw.xsd,proc_usb_info.txt} ) + +PATCHES=( "${FILESDIR}"/lshw-02.19.2b-respect-LDFLAGS.patch ) + +src_prepare() { + default + + plocale_find_changes "src/po" "" ".po" || die + sed -i \ + -e "/^LANGUAGES =/ s/=.*/= $(plocale_get_locales)/" \ + src/po/Makefile || die + sed -i \ + -e 's:\:${PKG_CONFIG}:' \ + -e 's:+\?make -C:${MAKE} -C:' \ + -e '/^CXXFLAGS/s:=-g: +=:' \ + -e '/^CXXFLAGS/s:-g ::' \ + -e '/^LDFLAGS/s: -g::' \ + -e '/^all:/s: $(DATAFILES)::' \ + -e '/^install:/s: all::' \ + src/Makefile src/gui/Makefile || die + sed -i \ + -e '/^CXXFLAGS/s:\?=-g: +=:' \ + -e '/^LDFLAGS=/d' \ + src/core/Makefile || die + sed -i \ + -e '/^#define PCIID_PATH/s:DATADIR"\/pci.ids.*:"/usr/share/hwdata/pci.ids":' \ + src/core/pci.cc || die + sed -i \ + -e '/^#define USBID_PATH/s:DATADIR"\/usb.ids.*:"/usr/share/hwdata/usb.ids":' \ + src/core/usb.cc || die +} + +src_compile() { + tc-export CC CXX AR PKG_CONFIG + use static && append-ldflags -static + + # Need two sep make statements to avoid parallel build issues. #588174 + local sqlite=$(usex sqlite 1 0) + emake VERSION=${MY_PV} SQLITE=${sqlite} all + use gtk && emake SQLITE=${sqlite} gui +} + +src_install() { + emake VERSION=${MY_PV} DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '') + if use gtk ; then + newicon -s scalable src/gui/artwork/logo.svg gtk-lshw.svg + make_desktop_entry \ + "${EPREFIX}"/usr/sbin/gtk-lshw \ + "${DESCRIPTION}" + fi +} -- cgit v1.2.3-65-gdbad