summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-02-14 03:36:39 +0000
committerSam James <sam@gentoo.org>2023-02-14 03:36:39 +0000
commit88aa8a74eeab88275740e1242bec50106b06ae79 (patch)
tree7ff8cf68c505c81e423d0e29da8d2529621373f3 /app-admin
parentnet-analyzer/monitoring-plugins: add temporary musl workaround (diff)
downloadgentoo-88aa8a74eeab88275740e1242bec50106b06ae79.tar.gz
gentoo-88aa8a74eeab88275740e1242bec50106b06ae79.tar.bz2
gentoo-88aa8a74eeab88275740e1242bec50106b06ae79.zip
app-admin/apachetop: fix build w/ clang 16
Closes: https://bugs.gentoo.org/894186 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/apachetop/apachetop-0.19.7.ebuild6
-rw-r--r--app-admin/apachetop/files/apachetop-0.19.7-c++17.patch90
2 files changed, 95 insertions, 1 deletions
diff --git a/app-admin/apachetop/apachetop-0.19.7.ebuild b/app-admin/apachetop/apachetop-0.19.7.ebuild
index 816b03798ef0..aaf86e4822f9 100644
--- a/app-admin/apachetop/apachetop-0.19.7.ebuild
+++ b/app-admin/apachetop/apachetop-0.19.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,6 +20,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.19.7-c++17.patch
+)
+
src_configure() {
econf \
--with-logfile="${EPREFIX}"/var/log/apache2/access_log \
diff --git a/app-admin/apachetop/files/apachetop-0.19.7-c++17.patch b/app-admin/apachetop/files/apachetop-0.19.7-c++17.patch
new file mode 100644
index 000000000000..8ec6508b9e08
--- /dev/null
+++ b/app-admin/apachetop/files/apachetop-0.19.7-c++17.patch
@@ -0,0 +1,90 @@
+https://github.com/tessus/apachetop/pull/13
+
+From f89ae55bb09eb1a67fc73555d149fb85f82bfbd6 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Tue, 14 Feb 2023 03:34:36 +0000
+Subject: [PATCH] Fix C++17 compatibility (drop register keyword)
+
+register doesn't do anything in any reasonable C++ compiler anyway, but
+it was deprecated in C++14 and removed in C++17. Without this, apachetop
+will fail to compile with Clang 16 which defaults to -std=c++17.
+
+Bug: https://bugs.gentoo.org/894186
+--- a/src/inlines.cc
++++ b/src/inlines.cc
+@@ -4,10 +4,10 @@
+ #define ONE_EIGHTH 4
+ #define HIGH_BITS (~((unsigned int)(~0) >> ONE_EIGHTH))
+
+-inline unsigned int StringHash(register const char *str)
++inline unsigned int StringHash(const char *str)
+ {
+- register unsigned int val;
+- register unsigned int i;
++ unsigned int val;
++ unsigned int i;
+
+ for (val = 0; *str; str++)
+ {
+@@ -19,9 +19,9 @@ inline unsigned int StringHash(register const char *str)
+ return val;
+ }
+
+-inline unsigned int QuickHash(register const char *str)
++inline unsigned int QuickHash(const char *str)
+ {
+- register unsigned int val, tmp;
++ unsigned int val, tmp;
+
+ for(val = 0 ; *str ; str++)
+ {
+@@ -32,7 +32,7 @@ inline unsigned int QuickHash(register const char *str)
+ return val;
+ }
+
+-inline unsigned long TTHash(register const char *str)
++inline unsigned long TTHash(const char *str)
+ {
+ unsigned long hash = 5381;
+ int c;
+--- a/src/ohtbl.cc
++++ b/src/ohtbl.cc
+@@ -13,7 +13,7 @@ static int primes[] = {101, 241, 499, 1009, 2003, 3001, 4001, 5003,
+
+ int OAHash::getNextPrime(int size)
+ {
+- register int *prime;
++ int *prime;
+ for (prime = &primes[0] ; *prime ; prime++)
+ if (*prime > size)
+ return *prime;
+@@ -51,7 +51,7 @@ void OAHash::destroy(void)
+
+ void *OAHash::insert(char *key, void *data)
+ {
+- register unsigned int p, i;
++ unsigned int p, i;
+ void *d;
+
+ // Do not exceed the number of positions in the table.
+@@ -81,7 +81,7 @@ void *OAHash::insert(char *key, void *data)
+
+ int OAHash::remove(char *key)
+ {
+- register unsigned int p, i;
++ unsigned int p, i;
+
+ for (i = 0; i < positions; ++i)
+ {
+@@ -108,7 +108,7 @@ int OAHash::remove(char *key)
+
+ void *OAHash::lookup(char *key)
+ {
+- register unsigned int p, i;
++ unsigned int p, i;
+
+ for (i = 0; i < positions; ++i)
+ {
+--
+2.39.1
+