sys-apps/lshw: Sync with gentoo

This is to stop depending on sys-apps/hwids.

It's from gentoo commit c6cb7ef2cc023ca42b642c97a8a9aae3585ce3b0.
This commit is contained in:
Krzesimir Nowak 2022-01-06 18:42:16 +01:00
parent 65626f8155
commit 0a01dc4308
3 changed files with 119 additions and 3 deletions

View File

@ -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

View File

@ -22,7 +22,7 @@ IUSE="gtk sqlite static"
REQUIRED_USE="static? ( !gtk !sqlite )" REQUIRED_USE="static? ( !gtk !sqlite )"
DEPEND="${RDEPEND}" DEPEND="${RDEPEND}"
RDEPEND="sys-apps/hwids RDEPEND="sys-apps/hwdata
gtk? ( x11-libs/gtk+:3 ) gtk? ( x11-libs/gtk+:3 )
sqlite? ( dev-db/sqlite:3 )" sqlite? ( dev-db/sqlite:3 )"
BDEPEND="gtk? ( virtual/pkgconfig ) BDEPEND="gtk? ( virtual/pkgconfig )
@ -53,10 +53,10 @@ src_prepare() {
-e '/^LDFLAGS=/d' \ -e '/^LDFLAGS=/d' \
src/core/Makefile || die src/core/Makefile || die
sed -i \ sed -i \
-e '/^#define PCIID_PATH/s:DATADIR"\/pci.ids.*:"/usr/share/misc/pci.ids":' \ -e '/^#define PCIID_PATH/s:DATADIR"\/pci.ids.*:"/usr/share/hwdata/pci.ids":' \
src/core/pci.cc || die src/core/pci.cc || die
sed -i \ sed -i \
-e '/^#define USBID_PATH/s:DATADIR"\/usb.ids.*:"/usr/share/misc/usb.ids":' \ -e '/^#define USBID_PATH/s:DATADIR"\/usb.ids.*:"/usr/share/hwdata/usb.ids":' \
src/core/usb.cc || die src/core/usb.cc || die
} }

View File

@ -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\>:${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
}