* [gentoo-commits] repo/gentoo:master commit in: sys-libs/libvpd/, sys-libs/libvpd/files/
@ 2020-12-18 9:53 Sergei Trofimovich
0 siblings, 0 replies; 2+ messages in thread
From: Sergei Trofimovich @ 2020-12-18 9:53 UTC (permalink / raw
To: gentoo-commits
commit: 63059fa1bc7c12f78abc9eaf397fbdf1a4f8c122
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 18 09:40:20 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Dec 18 09:52:35 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63059fa1
sys-libs/libvpd: drop old
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-libs/libvpd/Manifest | 1 -
.../libvpd/files/libvpd-2.2.6-localstatedir.patch | 21 ------------
sys-libs/libvpd/libvpd-2.2.6.ebuild | 38 ----------------------
3 files changed, 60 deletions(-)
diff --git a/sys-libs/libvpd/Manifest b/sys-libs/libvpd/Manifest
index 10b3de0e841..908a68bb41b 100644
--- a/sys-libs/libvpd/Manifest
+++ b/sys-libs/libvpd/Manifest
@@ -1,2 +1 @@
-DIST libvpd-2.2.6.tar.gz 374262 BLAKE2B b7741948aa62ad6221d28a674f765d085e1446c0bb45d7aa7a5f08599471023b2bb794ad5645c3b70af5806cd48cc87f117f9b4021e0f8c872ca48b748cc1e60 SHA512 17046eeb6ccc5372d465848eff7135cf6e9f876a2d82862e1d01a9f674b691958942e119f846bc3220c1e8f7eb549c5c7867d5d5e896072c733f400d202abc1d
DIST libvpd-2.2.8.tar.gz 52725 BLAKE2B 76bdc6ddf80236a6848185273c2cac181d44214f0c609d7c5af6fa4d09a7cd816324af35745617ce3daa7268311e2ed754335600df1d4970a324eb327015d051 SHA512 d0b7d1760c6ae54717c538405c651317b7318dec5780961f5386c09b7d245e35a84c2fc47d89c47c3cd2168d73d7186f5819981d52c3ba962514639833dc62aa
diff --git a/sys-libs/libvpd/files/libvpd-2.2.6-localstatedir.patch b/sys-libs/libvpd/files/libvpd-2.2.6-localstatedir.patch
deleted file mode 100644
index 78a44a6351c..00000000000
--- a/sys-libs/libvpd/files/libvpd-2.2.6-localstatedir.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -66,6 +66,6 @@
-
- install-exec-hook:
- mkdir -p $(DESTDIR)/${sysconfdir}/udev/rules.d/
-- mkdir -p $(DESTDIR)/${localstatedir}/lib/lsvpd/
-+ mkdir -p $(DESTDIR)/${localstatedir}/lsvpd/
- install -D --mode=644 90-vpdupdate.rules \
- ${DESTDIR}/${sysconfdir}/udev/rules.d/90-vpdupdate.rules
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -1046,7 +1046,7 @@
-
- install-exec-hook:
- mkdir -p $(DESTDIR)/${sysconfdir}/udev/rules.d/
-- mkdir -p $(DESTDIR)/${localstatedir}/lib/lsvpd/
-+ mkdir -p $(DESTDIR)/${localstatedir}/lsvpd/
- install -D --mode=644 90-vpdupdate.rules \
- ${DESTDIR}/${sysconfdir}/udev/rules.d/90-vpdupdate.rules
-
diff --git a/sys-libs/libvpd/libvpd-2.2.6.ebuild b/sys-libs/libvpd/libvpd-2.2.6.ebuild
deleted file mode 100644
index 2a691e27d0c..00000000000
--- a/sys-libs/libvpd/libvpd-2.2.6.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit udev
-
-DESCRIPTION="Library implementation for listing vpds"
-HOMEPAGE="https://sourceforge.net/projects/linux-diag/"
-SRC_URI="https://sourceforge.net/projects/linux-diag/files/libvpd/${PV}/libvpd-${PV}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="ppc ppc64"
-IUSE="static-libs"
-
-DEPEND="
- >=dev-db/sqlite-3.7.8
- sys-libs/zlib
-"
-RDEPEND="${DEPEND}"
-PATCHES=(
- "${FILESDIR}"/${PN}-2.2.6-localstatedir.patch
-)
-
-src_configure() {
- # sysconfdir is used only to establish where the udev rules file should go
- # unfortunately it also adds the subdirs on its own so we strip it down to
- # dirname
- econf \
- $(use_enable static-libs static) \
- --sysconfdir="$( dirname $(get_udevdir) )"
-}
-
-src_install() {
- default
- keepdir /var/lib/lsvpd
- find "${D}" -name '*.la' -delete || die
-}
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/libvpd/, sys-libs/libvpd/files/
@ 2021-08-04 22:39 Georgy Yakovlev
0 siblings, 0 replies; 2+ messages in thread
From: Georgy Yakovlev @ 2021-08-04 22:39 UTC (permalink / raw
To: gentoo-commits
commit: cd67e88af10917a04712c42f8f9a535f0dae8562
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 4 22:36:15 2021 +0000
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Wed Aug 4 22:36:58 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd67e88a
sys-libs/libvpd: revbump, add gcc11 compile fixes
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
sys-libs/libvpd/files/2.2.8-gcc11.patch | 84 ++++++++++++++++++++++
sys-libs/libvpd/files/2.2.8-warnings.patch | 52 ++++++++++++++
...{libvpd-2.2.8.ebuild => libvpd-2.2.8-r1.ebuild} | 7 +-
3 files changed, 142 insertions(+), 1 deletion(-)
diff --git a/sys-libs/libvpd/files/2.2.8-gcc11.patch b/sys-libs/libvpd/files/2.2.8-gcc11.patch
new file mode 100644
index 00000000000..7e09f8329bb
--- /dev/null
+++ b/sys-libs/libvpd/files/2.2.8-gcc11.patch
@@ -0,0 +1,84 @@
+From 83ccb994e30364c0703d7b8c15817d56b42da2e6 Mon Sep 17 00:00:00 2001
+From: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
+Date: Wed, 7 Apr 2021 14:11:41 +0530
+Subject: [PATCH] Remove dynamic exception specification
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Tomasz Kłoczko reported that the build fails, while compiling
+with GCC 11:
+
+In file included from src/vpdretriever.cpp:25:
+./src/libvpd-2/vpdretriever.hpp:62:33: error: ISO C++17 does not allow dynamic exception specifications
+ 62 | throw( VpdException& );
+ | ^~~~~
+./src/libvpd-2/vpdretriever.hpp:74:33: error: ISO C++17 does not allow dynamic exception specifications
+ 74 | throw( VpdException& );
+ | ^~~~~
+src/vpdretriever.cpp:50:37: error: ISO C++17 does not allow dynamic exception specifications
+ 50 | string dbFileName ) throw( VpdException& )
+ | ^~~~~
+src/vpdretriever.cpp:62:39: error: ISO C++17 does not allow dynamic exception specifications
+ 62 | VpdRetriever::VpdRetriever( ) throw( VpdException& )
+ | ^~~~~
+make: *** [Makefile:660: src/vpdretriever.lo] Error 1
+
+As part of
+http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0003r5.html,
+the dynamic exception specification have been removed. Remove the
+throw specifier, to specify that the function might throw an exception.
+
+Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
+Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
+---
+ src/libvpd-2/vpdretriever.hpp | 6 ++----
+ src/vpdretriever.cpp | 4 ++--
+ 2 files changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/src/libvpd-2/vpdretriever.hpp b/src/libvpd-2/vpdretriever.hpp
+index 0d91ac4..1be2664 100644
+--- a/src/libvpd-2/vpdretriever.hpp
++++ b/src/libvpd-2/vpdretriever.hpp
+@@ -58,8 +58,7 @@ namespace lsvpd
+ * @param dbFileName
+ * The file name for the VPD database.
+ */
+- VpdRetriever( string envDir, string dbFileName )
+- throw( VpdException& );
++ VpdRetriever( string envDir, string dbFileName );
+
+ /**
+ * Builds A VpdRetriever object that can be used for reading the
+@@ -70,8 +69,7 @@ namespace lsvpd
+ * this constructor, there were serious underlying issues that
+ * are not recoverable. Uses the default dir and filename
+ */
+- VpdRetriever( )
+- throw( VpdException& );
++ VpdRetriever( );
+ ~VpdRetriever( );
+
+ /**
+diff --git a/src/vpdretriever.cpp b/src/vpdretriever.cpp
+index 9f7e7a0..470047e 100644
+--- a/src/vpdretriever.cpp
++++ b/src/vpdretriever.cpp
+@@ -47,7 +47,7 @@ namespace lsvpd
+ const string VpdRetriever::UDEV_NOTIFY_FILE ( "/run/run.vpdupdate" );
+
+ VpdRetriever::VpdRetriever( string envDir,
+- string dbFileName ) throw( VpdException& )
++ string dbFileName )
+ {
+ try {
+ db = new VpdDbEnv( envDir, dbFileName, true );
+@@ -59,7 +59,7 @@ namespace lsvpd
+ }
+ }
+
+- VpdRetriever::VpdRetriever( ) throw( VpdException& )
++ VpdRetriever::VpdRetriever( )
+ {
+ struct stat vpd_stat,udev_stat;
+ const string vpddb = VpdRetriever::DEFAULT_DIR + VpdRetriever::DEFAULT_FILE;
diff --git a/sys-libs/libvpd/files/2.2.8-warnings.patch b/sys-libs/libvpd/files/2.2.8-warnings.patch
new file mode 100644
index 00000000000..1419de3dda4
--- /dev/null
+++ b/sys-libs/libvpd/files/2.2.8-warnings.patch
@@ -0,0 +1,52 @@
+From 72b75e1976b50372f07271a5235ee8e9c75bdac4 Mon Sep 17 00:00:00 2001
+From: Kamalesh Babulal <kamalesh@linux.ibm.com>
+Date: Mon, 21 Jun 2021 11:42:02 +0530
+Subject: [PATCH] vpddbenv_c: fix compile warnings
+
+src/vpddbenv_c.c: In function 'new_vpddbenv':
+src/vpddbenv_c.c:56:17: warning: 'strncat' specified bound 1 equals source length [-Wstringop-overflow=]
+ 56 | strncat( ret->fullPath, "/" , 1 );
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+src/vpddbenv_c.c:58:17: warning: 'strncat' accessing between 258 and 9223372036854775804 bytes at offsets 514 and 257 may overlap 1 byte at offset 514 [-Wrestrict]
+ 58 | strncat( ret->fullPath, ret->dbFileName, strlen(ret->dbFileName) );
+ |
+ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+While compiling the code with GCC-11 (Fedora 34), the GCC complains
+about src string length and N bytes mentioned in the strncat() are of
+same length. It gets suspicious, when strncat() mimics strcat(), the
+strcat() was replaced using strncat() by the commit 38de4e65205
+("libvpd: Convert strcat to strncat") as part of secure coding.
+
+refactor the code using snprintf(), making the code lean and keep the
+GCC happy as well.
+
+Signed-off-by: Kamalesh Babulal <kamalesh@linux.ibm.com>
+Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
+---
+ src/vpddbenv_c.c | 12 ++++--------
+ 1 file changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/src/vpddbenv_c.c b/src/vpddbenv_c.c
+index 96aecd3..bae36e9 100644
+--- a/src/vpddbenv_c.c
++++ b/src/vpddbenv_c.c
+@@ -50,14 +50,10 @@ struct vpddbenv * new_vpddbenv( const char *dir, const char *file )
+ ret->dbFileName[MAX_NAME_LENGTH] = '\0';
+ }
+
+- strncpy( ret->fullPath, ret->envDir , FULL_PATH_SIZE - 1);
+-
+- if (strlen(ret->fullPath) + 1 < FULL_PATH_SIZE)
+- strncat( ret->fullPath, "/" , 1 );
+- if (strlen(ret->fullPath) + strlen(ret->dbFileName) < FULL_PATH_SIZE)
+- strncat( ret->fullPath, ret->dbFileName, strlen (ret->dbFileName) );
+-
+- ret->fullPath[FULL_PATH_SIZE - 1] = '\0';
++ if ( ( strlen( ret->envDir ) + strlen( ret->dbFileName ) + 1 ) <
++ FULL_PATH_SIZE )
++ snprintf( ret->fullPath, FULL_PATH_SIZE,
++ "%s/%s", ret->envDir, ret->dbFileName );
+
+ rc = sqlite3_open( ret->fullPath, &(ret->db) );
+ if( rc != SQLITE_OK )
diff --git a/sys-libs/libvpd/libvpd-2.2.8.ebuild b/sys-libs/libvpd/libvpd-2.2.8-r1.ebuild
similarity index 87%
rename from sys-libs/libvpd/libvpd-2.2.8.ebuild
rename to sys-libs/libvpd/libvpd-2.2.8-r1.ebuild
index 0c38cecb19f..3b69e327edd 100644
--- a/sys-libs/libvpd/libvpd-2.2.8.ebuild
+++ b/sys-libs/libvpd/libvpd-2.2.8-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -18,6 +18,11 @@ DEPEND="
"
RDEPEND="${DEPEND}"
+PATCHES=(
+ "${FILESDIR}/2.2.8-gcc11.patch"
+ "${FILESDIR}/2.2.8-warnings.patch"
+)
+
src_prepare() {
default
eautoreconf
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-08-04 22:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-04 22:39 [gentoo-commits] repo/gentoo:master commit in: sys-libs/libvpd/, sys-libs/libvpd/files/ Georgy Yakovlev
-- strict thread matches above, loose matches on Subject: below --
2020-12-18 9:53 Sergei Trofimovich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox