summaryrefslogtreecommitdiff
path: root/legacy
diff options
context:
space:
mode:
Diffstat (limited to 'legacy')
-rw-r--r--legacy/man-db/APKBUILD44
-rw-r--r--legacy/man-db/man-db-2.8.5-iconv.patch65
-rw-r--r--legacy/man-db/man-db.trigger3
3 files changed, 112 insertions, 0 deletions
diff --git a/legacy/man-db/APKBUILD b/legacy/man-db/APKBUILD
new file mode 100644
index 000000000..136e0720d
--- /dev/null
+++ b/legacy/man-db/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: A. Wilcox <awilfox@adelielinux.org>
+# Maintainer: A. Wilcox <awilfox@adelielinux.org>
+pkgname=man-db
+pkgver=2.9.1
+pkgrel=0
+pkgdesc="The man command and related utilities for examining on-line help files"
+url="https://www.nongnu.org/man-db/"
+arch="all"
+options="!check" # requires //IGNORE in iconv
+license="GPL-2.0+"
+depends="groff gzip less"
+makedepends_host="db-dev libpipeline-dev zlib-dev"
+subpackages="$pkgname-doc $pkgname-lang"
+triggers="man-db.trigger=/usr/share/man"
+source="https://download.savannah.nongnu.org/releases/man-db/man-db-$pkgver.tar.xz
+ man-db-2.8.5-iconv.patch
+ "
+
+build() {
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --localstatedir=/var \
+ --disable-setuid \
+ --with-sections="1 1p 1x 2 2x 3 3p 3x 4 4x 5 5x 6 6x 7 7x 8 8x 9 0p tcl n l p o" \
+ --enable-nls \
+ --with-db=db
+ make
+}
+
+check() {
+ make check
+}
+
+package() {
+ make DESTDIR="$pkgdir" install
+ rm -r "${pkgdir}"/usr/lib/tmpfiles.d # systemd
+}
+
+sha512sums="ae2d1e9f293795c63f5a9a1a765478a9a59cbe5fe6f759647be5057c1ae53f90baee8d5467921f3d0102300f2111a5026eeb25f78401bcb16ce45ad790634977 man-db-2.9.1.tar.xz
+0a68260fc48488408dc11855858aa2569efa3aeefd765c425b8fc988e7fee3e1d42e19eb299e518afc9b2ae54c5d37911176127124a43d5041f1137af0457097 man-db-2.8.5-iconv.patch"
diff --git a/legacy/man-db/man-db-2.8.5-iconv.patch b/legacy/man-db/man-db-2.8.5-iconv.patch
new file mode 100644
index 000000000..c2232920d
--- /dev/null
+++ b/legacy/man-db/man-db-2.8.5-iconv.patch
@@ -0,0 +1,65 @@
+--- man-db-2.8.5/src/man.c 2018-06-18 22:44:35.672743065 -0500
++++ man-db-2.8.5/src/man.c 2018-06-18 22:46:35.032624890 -0500
+@@ -1516,15 +1516,13 @@
+ {
+ debug ("add_output_iconv: source %s, target %s\n", source, target);
+ if (source && target && !STREQ (source, target)) {
+- char *target_translit = xasprintf ("%s//TRANSLIT", target);
+ pipecmd *iconv_cmd;
+ iconv_cmd = pipecmd_new_args
+- ("iconv", "-c", "-f", source, "-t", target_translit,
++ ("iconv", "-c", "-f", source, "-t", target,
+ (void *) 0);
+ pipecmd_pre_exec (iconv_cmd, sandbox_load, sandbox_free,
+ sandbox);
+ pipeline_command (p, iconv_cmd);
+- free (target_translit);
+ }
+ }
+
+--- man-db-2.8.5/src/manconv.c
++++ man-db-2.8.5/src/manconv.c
+@@ -111,6 +111,5 @@ static int try_iconv (pipeline *p, const char *try_from_code, const char *to,
+ iconv_t cd_utf8, cd = NULL;
+- bool to_utf8 = STREQ (try_to_code, "UTF-8") ||
+- STRNEQ (try_to_code, "UTF-8//", 7);
+- const char *utf8_target = last ? "UTF-8//IGNORE" : "UTF-8";
+- bool ignore_errors = (strstr (try_to_code, "//IGNORE") != NULL);
++ bool to_utf8 = STREQ (try_to_code, "UTF-8");
++ const char *utf8_target = "UTF-8";
++ bool ignore_errors = 0;
+ int ret = 0;
+--- man-db-2.8.5/src/manconv_client.c
++++ man-db-2.8.5/src/manconv_client.c
+@@ -102,7 +102,7 @@ void add_manconv (pipeline *p, const char *source, const char *target)
+ codes->from[2] = NULL;
+ name = appendstr (name, "UTF-8:", source, (void *) 0);
+ }
+- codes->to = xasprintf ("%s//IGNORE", target);
++ codes->to = xstrdup (target);
+ /* informational only; no shell quoting concerns */
+ name = appendstr (name, " -t ", codes->to, (void *) 0);
+ if (quiet >= 2)
+--- man-db-2.8.5/src/manconv_main.c
++++ man-db-2.8.5/src/manconv_main.c
+@@ -106,9 +106,6 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state)
+ return 0;
+ case 't':
+ to_code = xstrdup (arg);
+- if (!strstr (to_code, "//"))
+- to_code = appendstr (to_code, "//TRANSLIT",
+- (void *) 0);
+ return 0;
+ case 'd':
+ debug_level = 1;
+--- man-db-2.8.5/src/whatis.c
++++ man-db-2.8.5/src/whatis.c
+@@ -945,7 +945,7 @@ int main (int argc, char *argv[])
+ display_seen = hashtable_create (&null_hashtable_free);
+
+ #ifdef HAVE_ICONV
+- locale_charset = xasprintf ("%s//IGNORE", get_locale_charset ());
++ locale_charset = xstrdup (get_locale_charset ());
+ conv_to_locale = iconv_open (locale_charset, "UTF-8");
+ free (locale_charset);
+ #endif /* HAVE_ICONV */
diff --git a/legacy/man-db/man-db.trigger b/legacy/man-db/man-db.trigger
new file mode 100644
index 000000000..f9de5961c
--- /dev/null
+++ b/legacy/man-db/man-db.trigger
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/bin/mandb /usr/share/man >/dev/null