summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-12-25 21:08:28 +0000
committerSam James <sam@gentoo.org>2022-12-25 21:24:10 +0000
commitedbec5e721da2cb38c8beebee4d5ad0a079c2166 (patch)
tree11311b24e73e7ffeac58aad4e1538aaf7a5cbb5c /sys-apps/readahead-list
parentsys-apps/makedev: EAPI 8 (diff)
downloadgentoo-edbec5e721da2cb38c8beebee4d5ad0a079c2166.tar.gz
gentoo-edbec5e721da2cb38c8beebee4d5ad0a079c2166.tar.bz2
gentoo-edbec5e721da2cb38c8beebee4d5ad0a079c2166.zip
sys-apps/readahead-list: EAPI 8, fix build w/ Clang 16
Closes: https://bugs.gentoo.org/875047 Closes: https://bugs.gentoo.org/851825 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-apps/readahead-list')
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch44
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch70
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch43
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch22
-rw-r--r--sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch50
-rw-r--r--sys-apps/readahead-list/files/init.d-readahead-list2
-rw-r--r--sys-apps/readahead-list/files/init.d-readahead-list-early3
-rw-r--r--sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch10
-rw-r--r--sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch15
-rw-r--r--sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild (renamed from sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild)37
10 files changed, 256 insertions, 40 deletions
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch b/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch
new file mode 100644
index 000000000000..bd8052139f62
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0001-Modernise-autotools.patch
@@ -0,0 +1,44 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 8cfc35923827b6f6e3aff9641aa4cb7c4ac7949c Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:33:44 +0000
+Subject: [PATCH 1/6] Modernise autotools
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,14 +1,14 @@
+ # Copyright (C) 2004-2005 Robin Hugh Johnson <robbat2@orbis-terrarum.net>
+-#
++#
+ # This file is free software; as a special exception the author gives
+-# unlimited permission to copy and/or distribute it, with or without
++# unlimited permission to copy and/or distribute it, with or without
+ # modifications, as long as this notice is preserved.
+-#
++#
+ # This program is distributed in the hope that it will be useful, but
+ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+-AC_PREREQ(2.59)
++AC_PREREQ([2.71])
+ # version stamp is 0.YYYYMMDD.HHMM in UTC!
+ # date +"1.%Y%m%d.%H%M" -u
+ AC_INIT([readahead-list],[1.20060421.1016],[Robin H. Johnson robbat2@orbis-terrarum.net],[readahead-list])
+@@ -38,11 +38,9 @@ AC_PATH_PROG(SED, sed, sed)
+ AC_PATH_PROG(CMP, cmp, cmp)
+
+ AC_CANONICAL_HOST
+-LF_SET_WARNINGS
+ AC_PROG_RANLIB
+
+ # Checks for header files.
+-AC_HEADER_STDC
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch b/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch
new file mode 100644
index 000000000000..3e368ef40829
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0002-Set-D_GNU_SOURCE-for-readahead-to-fix-Wimplicit-func.patch
@@ -0,0 +1,70 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 37e699689661249c88a020681a70cd0633ee7ef4 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:34:38 +0000
+Subject: [PATCH 2/6] Set -D_GNU_SOURCE for readahead() to fix
+ -Wimplicit-function-declaration
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+readahead-list.c: In function ‘process_file’:
+readahead-list.c:111:17: error: implicit declaration of function ‘readahead’ [-Werror=implicit-function-declaration]
+ 111 | readahead(fd, (loff_t)0, (size_t)buf.st_size);
+ | ^~~~~~~~~
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -40,6 +40,9 @@ AC_PATH_PROG(CMP, cmp, cmp)
+ AC_CANONICAL_HOST
+ AC_PROG_RANLIB
+
++# Provides _GNU_SOURCE for readahead()
++AC_USE_SYSTEM_EXTENSIONS
++
+ # Checks for header files.
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -14,6 +14,9 @@
+ // along with this program; if not, write to the Free Software
+ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ //
++
++#include <../config.h>
++
+ #include <map>
+ #include <set>
+ #include <iostream>
+@@ -31,7 +34,6 @@
+
+ #include <fcntl.h>
+ #include <linux/fs.h>
+-#include <../config.h>
+
+ #ifndef BUFFER_SIZE
+ #define BUFFER_SIZE 2048
+--- a/src/readahead-list.c
++++ b/src/readahead-list.c
+@@ -19,6 +19,7 @@
+ // Based on code originally written by Erich Schubert <erich@debian.org>.
+ // $Header: /code/convert/cvsroot/infrastructure/readahead-list/src/readahead-list.c,v 1.5 2006/04/21 10:13:54 robbat2 Exp $
+
++#include <../config.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+@@ -31,7 +32,6 @@
+ #include <sched.h>
+ #include <string.h>
+ #include <errno.h>
+-#include <../config.h>
+
+ #if __STDC_VERSION__ < 199901L
+ # if __GNUC__ >= 2
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch b/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch
new file mode 100644
index 000000000000..dc1a092eb117
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0003-Simplify-setting-up-Large-File-Support-use-AC_SYS_LA.patch
@@ -0,0 +1,43 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 9d7b7a13ac265b76bb7933072a20bf462e5377a6 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:35:38 +0000
+Subject: [PATCH 3/6] Simplify setting up Large File Support (use
+ AC_SYS_LARGEFILE)
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -13,18 +13,15 @@ AC_PREREQ([2.71])
+ # date +"1.%Y%m%d.%H%M" -u
+ AC_INIT([readahead-list],[1.20060421.1016],[Robin H. Johnson robbat2@orbis-terrarum.net],[readahead-list])
+
+-LFS_CPPFLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
+ WARN_CFLAGS="-Wall -W"
+ CFLAGS="$CFLAGS $WARN_CFLAGS"
+ CXXFLAGS="$CXXFLAGS $WARN_CFLAGS"
+-CPPFLAGS="$CPPFLAGS $LFS_CPPFLAGS"
+-export CFLAGS CXXFLAGS CPPFLAGS
++export CFLAGS CXXFLAGS
+
+ AC_CONFIG_AUX_DIR(config)
+ AC_CONFIG_HEADERS([config.h])
+ AM_INIT_AUTOMAKE([dist-bzip2])
+
+-
+ # Checks for programs.
+ AC_PROG_AWK
+ AC_PROG_CC
+@@ -43,6 +40,8 @@ AC_PROG_RANLIB
+ # Provides _GNU_SOURCE for readahead()
+ AC_USE_SYSTEM_EXTENSIONS
+
++AC_SYS_LARGEFILE
++
+ # Checks for header files.
+ AC_CHECK_HEADERS([ errno.h fcntl.h getopt.h linux/fs.h sched.h stdio.h stdlib.h string.h sys/ioctl.h sys/mman.h sys/syscall.h sys/types.h unistd.h ])
+
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch b/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch
new file mode 100644
index 000000000000..c9a23e309b66
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0004-filelist-order.cxx-Add-missing-cstdlib-include-for-e.patch
@@ -0,0 +1,22 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From f0f32adfb4eaf26e33fc1655a22a529961257db9 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:38:01 +0000
+Subject: [PATCH 4/6] filelist-order.cxx: Add missing <cstdlib> include for
+ exit()
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -17,6 +17,7 @@
+
+ #include <../config.h>
+
++#include <cstdlib>
+ #include <map>
+ #include <set>
+ #include <iostream>
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch b/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch
new file mode 100644
index 000000000000..7c456001e404
--- /dev/null
+++ b/sys-apps/readahead-list/files/1.20060421.1016/0005-Fix-build-with-modern-C.patch
@@ -0,0 +1,50 @@
+https://github.com/robbat2/readahead-list/pull/1
+
+From 4a22080a30c8906f99eb5899218b9a5f1291b634 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 25 Dec 2022 20:57:43 +0000
+Subject: [PATCH 5/6] Fix build with modern C++
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+```
+filelist-order.cxx: In function ‘void printItem(std::pair<mapkey*, const char*>, std::vector<OrderField*>*)’:
+filelist-order.cxx:276:37: error: unable to find string literal operator ‘operator""fmt’ with ‘const char [3]’, ‘long unsigned int’ arguments
+ 276 | #define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
+ | ^~~~~~~
+```
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/filelist-order.cxx
++++ b/src/filelist-order.cxx
+@@ -15,8 +15,6 @@
+ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ //
+
+-#include <../config.h>
+-
+ #include <cstdlib>
+ #include <map>
+ #include <set>
+@@ -36,6 +34,8 @@
+ #include <fcntl.h>
+ #include <linux/fs.h>
+
++#include <../config.h>
++
+ #ifndef BUFFER_SIZE
+ #define BUFFER_SIZE 2048
+ #endif
+@@ -275,7 +275,7 @@ void printItem(PAIR_COMPLETE_TYPE p,vector <OrderField*> *ofa) {
+ continue;
+ }
+ OrderField of = *ofp;
+-#define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
++#define case_entry(fmt,func) printf("%s" fmt,(first ? "" : " "),func_##func(mk)); break;
+ switch(of.type) {
+ case ST_DEV: case_entry("%lld",ST_DEV);
+ case ST_INO: case_entry("%lld",ST_INO);
+--
+2.39.0
+
diff --git a/sys-apps/readahead-list/files/init.d-readahead-list b/sys-apps/readahead-list/files/init.d-readahead-list
index fa5d7fab8eb5..b9156acb7071 100644
--- a/sys-apps/readahead-list/files/init.d-readahead-list
+++ b/sys-apps/readahead-list/files/init.d-readahead-list
@@ -11,7 +11,7 @@ depend() {
start() {
# force reading
- source /etc/conf.d/readahead-list
+ . /etc/conf.d/readahead-list
f="${READAHEAD_LIST_call_main}"
ebegin "readahead(2): ${f}"
diff --git a/sys-apps/readahead-list/files/init.d-readahead-list-early b/sys-apps/readahead-list/files/init.d-readahead-list-early
index dba700c6d398..3a0ff17f4c14 100644
--- a/sys-apps/readahead-list/files/init.d-readahead-list-early
+++ b/sys-apps/readahead-list/files/init.d-readahead-list-early
@@ -2,7 +2,6 @@
# Copyright 2005 Robin H. Johnson <robbat2@orbis-terrarum.net>
# Distributed under the terms of the GNU General Public License v2
-
depend() {
after checkroot
# this should start as early as possible
@@ -12,7 +11,7 @@ depend() {
start() {
# force reading
- source /etc/conf.d/readahead-list
+ . /etc/conf.d/readahead-list
f="${READAHEAD_LIST_call_early}"
ebegin "readahead(2): ${f}"
/sbin/readahead-list ${f}
diff --git a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch b/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch
deleted file mode 100644
index ccee025dcbf8..000000000000
--- a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc-4.3.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/filelist-order.cxx
-+++ b/src/filelist-order.cxx
-@@ -19,6 +19,7 @@
- #include <iostream>
- #include <fstream>
- #include <vector>
-+#include <cstdlib>
-
- #include <assert.h>
- #include <string.h>
diff --git a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch b/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch
deleted file mode 100644
index a987e4aa767d..000000000000
--- a/sys-apps/readahead-list/files/readahead-list-1.20060421.1016-gcc6.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-filelist-order.cxx:276:37: error: unable to find string literal operator ‘operator""fmt’ with ‘const char [3]’, ‘long unsigned int’ arguments
-
-https://bugs.gentoo.org/594092
-
---- a/src/filelist-order.cxx
-+++ b/src/filelist-order.cxx
-@@ -273,7 +273,7 @@ void printItem(PAIR_COMPLETE_TYPE p,vector <OrderField*> *ofa) {
- continue;
- }
- OrderField of = *ofp;
--#define case_entry(fmt,func) printf("%s"fmt,(first ? "" : " "),func_##func(mk)); break;
-+#define case_entry(fmt,func) printf("%s" fmt,(first ? "" : " "),func_##func(mk)); break;
- switch(of.type) {
- case ST_DEV: case_entry("%lld",ST_DEV);
- case ST_INO: case_entry("%lld",ST_INO);
diff --git a/sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild b/sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild
index f75dd67ab1d3..1c06ff2d1e17 100644
--- a/sys-apps/readahead-list/readahead-list-1.20060421.1016-r3.ebuild
+++ b/sys-apps/readahead-list/readahead-list-1.20060421.1016-r4.ebuild
@@ -1,11 +1,14 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
+
+inherit autotools
DESCRIPTION="Preloads files into the page cache to accelerate program loading"
HOMEPAGE="https://github.com/robbat2/readahead-list"
SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86"
@@ -14,10 +17,16 @@ IUSE="doc"
DEPEND="virtual/os-headers"
PATCHES=(
- "${FILESDIR}/${P}-gcc-4.3.patch"
- "${FILESDIR}/${P}-gcc6.patch"
+ "${FILESDIR}/1.20060421.1016/"
)
+src_prepare() {
+ default
+
+ # Drop once ${P}-modernisation.patch is in a release
+ eautoreconf
+}
+
src_configure() {
econf --sbindir=/sbin
}
@@ -25,33 +34,37 @@ src_configure() {
src_install() {
default
- # init scripts
- #cd "${S}/contrib/init/gentoo/"
+ # Init scripts
+ #cd "${S}/contrib/init/gentoo" || die
+ #newinitd init.d-readahead-list readahead-list
+ #newinitd init.d-readahead-list-early readahead-list-early
+ #newconfd conf.d-readahead-list readahead-list
newinitd "${FILESDIR}"/init.d-readahead-list readahead-list
newinitd "${FILESDIR}"/init.d-readahead-list-early readahead-list-early
newconfd "${FILESDIR}"/conf.d-readahead-list readahead-list
- # default config
+ # Default config
insinto /etc/readahead-list
- cd "${S}/contrib/data"
+ cd "${S}/contrib/data" || die
newins readahead.runlevel-default.list runlevel-default
newins readahead.runlevel-boot.list runlevel-boot
newins readahead._sbin_rc.list exec_sbin_rc
# docs
- cd "${S}"
+ cd "${S}" || die
if use doc; then
docinto scripts
dodoc contrib/scripts/*
fi
- # clean up a bit
- find "${D}/usr/share/doc/${PF}/" -type f -name 'Makefile*' -exec rm -f \{\} \;
+
+ # Clean up a bit
+ find "${ED}/usr/share/doc/${PF}/" -type f -name 'Makefile*' -exec rm -f \{\} \;
}
pkg_postinst() {
einfo "You should add readahead-list to your runlevels:"
einfo " rc-update add readahead-list-early boot"
einfo " rc-update add readahead-list boot"
- einfo "Also consider customizing the lists in /etc/readahead-list"
+ einfo "Also consider customizing the lists in ${EROOT}/etc/readahead-list"
einfo "for maximum performance gain."
}