sys-apps/lshw: version bump to 02.18b #612430
authorMike Frysinger <vapier@gentoo.org>
Wed, 15 Mar 2017 06:00:02 +0000 (23:00 -0700)
committerMike Frysinger <vapier@gentoo.org>
Wed, 15 Mar 2017 06:01:57 +0000 (23:01 -0700)
sys-apps/lshw/Manifest
sys-apps/lshw/files/lshw-02.18b-gentoo.patch [new file with mode: 0644]
sys-apps/lshw/files/lshw-02.18b-gettext-array.patch [new file with mode: 0644]
sys-apps/lshw/lshw-02.18b.ebuild [new file with mode: 0644]

index 84a667f930284824fe2cace4b038bb5f78c0eaab..5170bcc0535fb2d93b97babb835554e3b72d1da0 100644 (file)
@@ -1,2 +1,3 @@
 DIST lshw-B.02.16.tar.gz 1845891 SHA256 809882429555b93259785cc261dbff04c16c93d064db5f445a51945bc47157cb SHA512 ad3bd3d7b6f36f912265f0853f5aa37158c6d420a90a5e84b3e8fcd8a3c6137f7505cb5361e3eceb49954332d2466c686c946dcda8db0da3d51b3c48e343c2ab WHIRLPOOL 8e3200b726432859965be744c6afa437ffb4b57166084432064621773018b6f997a282ddea813916bc7faeced22a1286044b91bd69422b83372f03cf0878ca2d
 DIST lshw-B.02.17.tar.gz 2005737 SHA256 eb9cc053fa0f1e78685cb695596e73931bfb55d2377e3bc3b8b94aff4c5a489c SHA512 868899dce98e786a08a2134d6e132c388d71ab0f03fa6e10881e14d7a882c1882b46bbc6bd6ddb021cfab87ad6c9fd369453c3916f0b3353027eb2d470e55d9b WHIRLPOOL 5b18df2732e50f38dd8d9168adb6083e9a637cf9596f692a7e6806cda2ad05c777babdbeab470d948604f45bbbf1282be6d9fc68bf5c70741acf2d884e93e749
+DIST lshw-B.02.18.tar.gz 2322176 SHA256 ae22ef11c934364be4fd2a0a1a7aadf4495a0251ec6979da280d342a89ca3c2f SHA512 4385db86101178b8bd33a80e991718e14f83277c66b3d63ae97cb4339196873b6e9b31a174024bf43d16fe66e1d7f8cf5cea56076697878087880c8821b11e47 WHIRLPOOL 42a76daa9426dbca1f9acd9afc5e66542ea87e4e6cc53c2a125443d3338765ce55845981d1d50b380201dc10c8f0cae6fd1eb573573eb7262ce87c85d74f3e20
diff --git a/sys-apps/lshw/files/lshw-02.18b-gentoo.patch b/sys-apps/lshw/files/lshw-02.18b-gentoo.patch
new file mode 100644 (file)
index 0000000..0a50e9d
--- /dev/null
@@ -0,0 +1,161 @@
+--- lshw-B.02.18/src/Makefile
++++ lshw-B.02.18/src/Makefile
+@@ -21,11 +21,11 @@
+ CXX?=c++
+ INCLUDES=-I./core/
+ DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
+-CXXFLAGS=-g -Wall -g $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
++CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
+ ifeq ($(SQLITE), 1)
+       CXXFLAGS+= -DSQLITE $(shell pkg-config --cflags sqlite3)
+ endif
+-LDFLAGS=-L./core/ -g
++LDFLAGS += -L./core/
+ ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
+       LDFLAGS+= -Wl,--as-needed
+ endif
+@@ -39,27 +39,25 @@
+ export LIBS
+ export LDFLAGS
+-DATAFILES = pci.ids usb.ids oui.txt manuf.txt
+-
+-all: $(PACKAGENAME) $(PACKAGENAME).1 $(DATAFILES)
++all: $(PACKAGENAME) $(PACKAGENAME).1
+ .cc.o:
+       $(CXX) $(CXXFLAGS) -c $< -o $@
+ .PHONY: core
+ core:
+-      +make -C core all
++      $(MAKE) -C core all
+ $(PACKAGENAME): core $(PACKAGENAME).o
+       $(CXX) $(LDFLAGS) -o $@ $(PACKAGENAME).o $(LIBS)
+ .PHONY: po
+ po:
+-      +make -C po all
++      $(MAKE) -C po all
+ .PHONY: gui
+ gui: core
+-      +make -C gui all
++      $(MAKE) -C gui all
+ .PHONY: nologo
+ nologo:
+@@ -70,7 +68,6 @@
+ $(PACKAGENAME)-static: core core/lib$(PACKAGENAME).a $(PACKAGENAME).o
+       $(CXX) $(LDSTATIC) $(LDFLAGS) -o $@ $(PACKAGENAME).o $(LIBS)
+-      $(STRIP) $@
+ .PHONY: compressed
+ compressed: $(PACKAGENAME)-compressed
+@@ -93,14 +90,13 @@
+ manuf.txt:
+       wget -O $@ http://anonsvn.wireshark.org/wireshark/trunk/manuf
+-install: all
++install:
+       $(INSTALL) -d -m 0755 $(DESTDIR)/$(SBINDIR)
+       $(INSTALL) -m 0755 $(PACKAGENAME) $(DESTDIR)/$(SBINDIR)
+       $(INSTALL) -d -m 0755 $(DESTDIR)/$(MANDIR)/man1
+       $(INSTALL) -m 0644 $(PACKAGENAME).1 $(DESTDIR)/$(MANDIR)/man1
+       $(INSTALL) -d -m 0755 $(DESTDIR)/$(DATADIR)/$(PACKAGENAME)
+-      $(INSTALL) -m 0644 $(DATAFILES) $(DESTDIR)/$(DATADIR)/$(PACKAGENAME)
+-      make -C po install
++      $(MAKE) -C po install
+ install-gui: gui
+       $(INSTALL) -d -m 0755 $(DESTDIR)/$(SBINDIR)
+@@ -112,8 +108,8 @@
+ clean:
+       rm -f $(PACKAGENAME).o $(PACKAGENAME) $(PACKAGENAME)-static $(PACKAGENAME)-compressed
+-      make -C core clean
+-      make -C gui clean
++      $(MAKE) -C core clean
++      $(MAKE) -C gui clean
+ .timestamp:
+       date --utc +%Y%m%d%H%M%S > $@
+--- lshw-B.02.18/src/core/Makefile
++++ lshw-B.02.18/src/core/Makefile
+@@ -1,10 +1,9 @@
+ PACKAGENAME?=lshw
+-CXX=c++
++CXX?=c++
+ INCLUDES=
+ DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
+-CXXFLAGS?=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
+-LDFLAGS=
++CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
+ LDSTATIC=
+ LIBS=
+--- lshw-B.02.18/src/core/pci.cc
++++ lshw-B.02.18/src/core/pci.cc
+@@ -17,7 +17,7 @@
+ #define PROC_BUS_PCI "/proc/bus/pci"
+ #define SYS_BUS_PCI "/sys/bus/pci"
+-#define PCIID_PATH DATADIR"/pci.ids:/usr/share/lshw/pci.ids:/usr/local/share/pci.ids:/usr/share/pci.ids:/etc/pci.ids:/usr/share/hwdata/pci.ids:/usr/share/misc/pci.ids"
++#define PCIID_PATH "/usr/share/misc/pci.ids"
+ #define PCI_CLASS_REVISION      0x08              /* High 24 bits are class, low 8 revision */
+ #define PCI_VENDOR_ID           0x00    /* 16 bits */
+--- lshw-B.02.18/src/core/usb.cc
++++ lshw-B.02.18/src/core/usb.cc
+@@ -27,7 +27,7 @@
+ #define PROCBUSUSBDEVICES "/proc/bus/usb/devices"
+ #define SYSKERNELDEBUGUSBDEVICES "/sys/kernel/debug/usb/devices"
+-#define USBID_PATH DATADIR"/usb.ids:/usr/share/lshw/usb.ids:/usr/local/share/usb.ids:/usr/share/usb.ids:/etc/usb.ids:/usr/share/hwdata/usb.ids:/usr/share/misc/usb.ids"
++#define USBID_PATH "/usr/share/misc/usb.ids"
+ #define USB_CLASS_PER_INTERFACE         0         /* for DeviceClass */
+ #define USB_CLASS_AUDIO                 1
+--- lshw-B.02.18/src/gui/Makefile
++++ lshw-B.02.18/src/gui/Makefile
+@@ -1,5 +1,7 @@
+ PACKAGENAME?=lshw
++SQLITE?=0
++
+ CXX?=c++
+ CC?=cc
+ STRIP?=strip
+@@ -8,14 +10,15 @@
+ DEFINES=-DPREFIX=\"$(PREFIX)\" -DSBINDIR=\"$(SBINDIR)\" -DMANDIR=\"$(MANDIR)\" -DDATADIR=\"$(DATADIR)\"
+ GTKINCLUDES=$(shell pkg-config gtk+-2.0 --cflags)
+ INCLUDES=-I../core $(GTKINCLUDES)
+-CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
++CXXFLAGS += -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
+ CFLAGS=$(CXXFLAGS) $(DEFINES)
+ GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs)
+-LIBS=-L../core -llshw -lresolv $(GTKLIBS)
+-LDFLAGS=
+-ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
+-      LDFLAGS+= -Wl,--as-needed
+-endif
++LIBS=-L../core -llshw -lresolv $(GTKLIBS)
++
++ifeq ($(SQLITE), 1)
++      CXXFLAGS+= -DSQLITE $(shell pkg-config --cflags sqlite3)
++      LIBS+= $(shell pkg-config --libs sqlite3)
++endif
+ OBJS = gtk-lshw.o callbacks.o engine.o print-gui.o stock.o
+ SRCS = $(OBJS:.o=.c)
+@@ -39,7 +42,6 @@
+       $(CXX) $(LDFLAGS) -o $@ $^ $(LIBS)
+ install: all
+-      $(STRIP) gtk-$(PACKAGENAME)
+       
+ clean:
+       rm -f $(OBJS) gtk-$(PACKAGENAME) gtk-lshw.glade.bak gtk-lshw.gladep.bak callbacks.c.bak callbacks.h.bak Makefile.bak
diff --git a/sys-apps/lshw/files/lshw-02.18b-gettext-array.patch b/sys-apps/lshw/files/lshw-02.18b-gettext-array.patch
new file mode 100644 (file)
index 0000000..4aea642
--- /dev/null
@@ -0,0 +1,31 @@
+patch sent upstream
+
+From 1fb7ebed787ec1b73218c1f12cbb71b103433375 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 14 Mar 2017 22:25:12 -0700
+Subject: [PATCH] fix array access with string translations
+
+The code forgot to rebase the num to 0 before indexing the string array.
+It also provides 5 strings, but was only allowing 4 to be accessed.
+---
+ src/core/dmi.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/core/dmi.cc b/src/core/dmi.cc
+index 250f48572d54..0db074975f2d 100644
+--- a/src/core/dmi.cc
++++ b/src/core/dmi.cc
+@@ -510,8 +510,8 @@ static const char *dmi_memory_array_location(u8 num)
+   };
+   if (num <= 0x0A)
+     return _(memory_array_location[num]);
+-  if (num >= 0xA0 && num < 0xA4)
+-    return _(jp_memory_array_location[num]);
++  if (num >= 0xA0 && num <= 0xA4)
++    return _(jp_memory_array_location[num - 0xA0]);
+   return "";
+ }
+-- 
+2.12.0
+
diff --git a/sys-apps/lshw/lshw-02.18b.ebuild b/sys-apps/lshw/lshw-02.18b.ebuild
new file mode 100644 (file)
index 0000000..b29154e
--- /dev/null
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PLOCALES='fr'
+
+inherit flag-o-matic eutils toolchain-funcs l10n
+
+MAJ_PV=${PV:0:${#PV}-1}
+MIN_PVE=${PV:0-1}
+MIN_PV=${MIN_PVE/b/B}
+
+MY_P="$PN-$MIN_PV.$MAJ_PV"
+DESCRIPTION="Hardware Lister"
+HOMEPAGE="http://ezix.org/project/wiki/HardwareLiSter"
+SRC_URI="http://ezix.org/software/files/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="gtk sqlite static"
+
+REQUIRED_USE="static? ( !gtk )"
+
+RDEPEND="gtk? ( x11-libs/gtk+:2 )
+       sqlite? ( dev-db/sqlite:3 )"
+DEPEND="${RDEPEND}
+       gtk? ( virtual/pkgconfig )
+       sqlite? ( virtual/pkgconfig )"
+RDEPEND="${RDEPEND}
+       sys-apps/hwids"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-02.18b-gentoo.patch
+       "${FILESDIR}"/${PN}-02.18b-gettext-array.patch
+)
+
+src_prepare() {
+       epatch "${PATCHES[@]}"
+
+       l10n_find_plocales_changes "src/po" "" ".po" || die
+       sed -i \
+               -e "/^LANGUAGES =/ s/=.*/= $(l10n_get_locales)/" \
+               src/po/Makefile || die
+       sed -i \
+               -e 's:\<pkg-config\>:${PKG_CONFIG}:' \
+               src/Makefile src/gui/Makefile || 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 SQLITE=${sqlite} all
+       use gtk && emake SQLITE=${sqlite} gui
+}
+
+src_install() {
+       emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install $(usex gtk 'install-gui' '')
+       dodoc README.md docs/*
+       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
+}