commit:     d60d0beb9b2ca0afb938792dfd12599ca2c424d2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 22 16:53:17 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 22 16:53:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d60d0beb

dev-libs/chmlib: fix w/ clang 16

Closes: https://bugs.gentoo.org/871177
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...chmlib-0.40-r1.ebuild => chmlib-0.40-r2.ebuild} |  3 ++-
 dev-libs/chmlib/files/chmlib-0.40-clang16.patch    | 24 ++++++++++++++++++++++
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/dev-libs/chmlib/chmlib-0.40-r1.ebuild 
b/dev-libs/chmlib/chmlib-0.40-r2.ebuild
similarity index 91%
rename from dev-libs/chmlib/chmlib-0.40-r1.ebuild
rename to dev-libs/chmlib/chmlib-0.40-r2.ebuild
index abdf79cf4f16..cdbdd764997e 100644
--- a/dev-libs/chmlib/chmlib-0.40-r1.ebuild
+++ b/dev-libs/chmlib/chmlib-0.40-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -17,6 +17,7 @@ IUSE="+examples static-libs"
 PATCHES=(
        "${FILESDIR}"/${PN}-0.39-stdtypes.patch
        "${FILESDIR}"/${P}-headers.patch
+       "${FILESDIR}"/${P}-clang16.patch
 )
 
 src_prepare() {

diff --git a/dev-libs/chmlib/files/chmlib-0.40-clang16.patch 
b/dev-libs/chmlib/files/chmlib-0.40-clang16.patch
new file mode 100644
index 000000000000..eb66b91d5556
--- /dev/null
+++ b/dev-libs/chmlib/files/chmlib-0.40-clang16.patch
@@ -0,0 +1,24 @@
+https://bugs.gentoo.org/871177
+https://github.com/jedwing/CHMLib/pull/17
+
+From 5877959e3eb9a54e131608c52e2d6f4c89bc0189 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fwei...@redhat.com>
+Date: Wed, 19 Apr 2023 09:47:03 +0200
+Subject: [PATCH] Avoid implicit function declarations, for C99 compatibility
+
+Define _LARGEFILE64_SOURCE so that <unistd.h> defines pread64.
+
+This avoids build failures with future compilers which do not
+support implicit function declarations by default.
+--- a/src/chm_lib.c
++++ b/src/chm_lib.c
+@@ -48,6 +48,8 @@
+  *                                                                         *
+  ***************************************************************************/
+ 
++#define _LARGEFILE64_SOURCE /* for pread64 */
++
+ #include "chm_lib.h"
+ 
+ #ifdef CHM_MT
+

Reply via email to