summaryrefslogtreecommitdiff
path: root/app-text/linuxdoc-tools
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-12-06 15:10:46 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-12-06 15:10:46 +0000
commitee8ad1509f726e8fa598472117e5bbffd241ebab (patch)
tree4ac9a10ae4694145a7287533143f85af923c1954 /app-text/linuxdoc-tools
parent1fe7aef6facf013a94eac853717f4da4d5d3c5b3 (diff)
gentoo auto-resync : 06:12:2022 - 15:10:45
Diffstat (limited to 'app-text/linuxdoc-tools')
-rw-r--r--app-text/linuxdoc-tools/Manifest3
-rw-r--r--app-text/linuxdoc-tools/files/linuxdoc-tools-0.9.82-configure-clang16.patch246
-rw-r--r--app-text/linuxdoc-tools/linuxdoc-tools-0.9.82.ebuild95
3 files changed, 344 insertions, 0 deletions
diff --git a/app-text/linuxdoc-tools/Manifest b/app-text/linuxdoc-tools/Manifest
index 51e46372d282..d18124d91e8c 100644
--- a/app-text/linuxdoc-tools/Manifest
+++ b/app-text/linuxdoc-tools/Manifest
@@ -1,3 +1,6 @@
+AUX linuxdoc-tools-0.9.82-configure-clang16.patch 4677 BLAKE2B 7160430998bd80ca237e537e54c3fd6f0a12f60fb856b70e8b92eebdf2f29b2dd0232c72e10dcd087ae83849365be968c9d48c2fa3990f9c43cf4513ca7fc10e SHA512 11e3c38bd9d5091dc709c3c552b722b917b0b20a92a8b0a8ddf389826410d8533c783db7904b6b8ed8d571f86169cd1620a51331e8702980ee06287f3346db2c
DIST linuxdoc-tools-0.9.73.tar.gz 613971 BLAKE2B e2e04aaa44d5e2cea5af266e38b476381f87a02b9704e03ae5943f7714634d5d214350abd5b193f2efe656a264403c679495af5f954870b30d32b8b799ad7206 SHA512 b26896316e259cf4ef170814d410b1e39e58f61db49b03b4b9c1f767f8459d84214e92d9dcc09ad739508fd9c3c5fe4a2264cbb3c693a11362e59fd221655252
+DIST linuxdoc-tools-0.9.82.tar.bz2 550046 BLAKE2B 3bf9b9680659a3a6873e31116975fca7372167a701e630d762d37fcacf7acb9f1df4031558c4db24769e598a17b206e1c09607e341fc90f91497c15ff0cb05a1 SHA512 82560d9dc4db231e0a2c1fa3732d062bfd6af2cd3c5ffa0960939b2888533882437ddeeb54219e31acc7eaa10fdeee84ba206d32516cc5ed4f3fba2eab1ec0e4
EBUILD linuxdoc-tools-0.9.73-r1.ebuild 1956 BLAKE2B 6434070af0621f3da002e10a83bc38bc3907ef0ba69fcbc9438dbe2320aed950227bb15a5436ba7727aa89519c80ac73ac01610e95707b9c0194442fbbea521b SHA512 a7dc53a87a5f8b1e2ff4d55f1dbfacc84da78fc62e5b11a5bb1d0f2839e351c931204df88debb276587c9c0622f298a421da40f5c61bbfbec5d837a8dd949758
+EBUILD linuxdoc-tools-0.9.82.ebuild 2014 BLAKE2B 6ed6a20bec2f10007dd797553e09943c0f69eed800f0dcd5c03da506cdddd6c2fbc8cc97eefa97377c7bda74c1ebee4cea736f1a524b2d54d214d0d9ac9ca8b5 SHA512 816a38afd491e7ab111cb7903361c4fa904eaf59541e87d56bb62495868e5f71a34a07852874a20428304d52c5631fbfd84ec15a55c6135ce39e1617820843cc
MISC metadata.xml 713 BLAKE2B 5bb40701020a2a88bccfc3293098732f464066af3317724cdff560819de1db44e33a6ef20ef3b09edce61580a50184e8cc5112d60d415ee42cabe6409e94d384 SHA512 10311f69090d7dbe3ccdf8047daf15ad6b86ae3cc58028b11629c581708c5de543c7fa1ab1bdbd173dbf5037e1dd23d68267de8e11d1a9da9e56659034f1316d
diff --git a/app-text/linuxdoc-tools/files/linuxdoc-tools-0.9.82-configure-clang16.patch b/app-text/linuxdoc-tools/files/linuxdoc-tools-0.9.82-configure-clang16.patch
new file mode 100644
index 000000000000..941d7eac1dc6
--- /dev/null
+++ b/app-text/linuxdoc-tools/files/linuxdoc-tools-0.9.82-configure-clang16.patch
@@ -0,0 +1,246 @@
+Patch emailed to upstream.
+
+From 216e770ced47ad0017cd43033ef213c2634fe87a Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Tue, 6 Dec 2022 08:53:14 +0000
+Subject: [PATCH] sgmls-1.1: fix configure script with Clang 16
+
+Clang 16 makes -Wimplicit-function-declaration and -Wimplicit-int errors by default.
+
+Unfortunately, this can lead to misconfiguration or miscompilation of software as configure
+tests may then return the wrong result. In this case, it led to a build failure
+(see https://bugs.gentoo.org/883203).
+
+We also fix -Wstrict-prototypes while here as it's easy to do and it prepares
+us for C23.
+
+For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2],
+or the (new) c-std-porting mailing list [3].
+
+[0] https://lwn.net/Articles/913505/
+[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
+[2] https://wiki.gentoo.org/wiki/Modern_C_porting
+[3] hosted at lists.linux.dev.
+
+Bug: https://bugs.gentoo.org/883203
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/sgmls-1.1/configure
++++ b/sgmls-1.1/configure
+@@ -110,13 +110,14 @@ cat >doit.c <<\EOF
+
+ #include <ctype.h>
+ #include <signal.h>
++#include <stdlib.h>
+
+-static int whoops()
++static void whoops(int signal)
+ {
+ _exit(1);
+ }
+
+-main()
++int main(void)
+ {
+ int c;
+ #ifdef isascii
+@@ -213,9 +214,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdio.h>
++#include <stdlib.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ remove("foo");
+@@ -231,9 +232,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <unistd.h>
++#include <stdlib.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ getopt(argc, argv, "v");
+@@ -249,9 +250,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++#include <unistd.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ access("foo", 4);
+@@ -267,9 +268,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++#include <unistd.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ vfork();
+@@ -285,9 +286,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++#include <sys/wait.h>
++int main(int argc, char **argv)
+ {
+
+ if (argc == 0) {
+@@ -306,10 +307,9 @@ else
+ fi
+
+ cat >doit.c <<\EOF
++#include <stdlib.h>
+ #include <string.h>
+-main(argc, argv)
+-int argc;
+-char **argv;
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ strerror(0);
+@@ -326,9 +326,8 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <strings.h>
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ bcopy((char *)0, (char *)0, 0);
+@@ -340,10 +339,9 @@ if $CC $CFLAGS -o doit doit.c $LIBS >/dev/null 2>&1 && ./doit 2>/dev/null
+ then
+ # Only use BSD_STRINGS if ANSI string functions don't work.
+ cat >doit.c <<\EOF
++#include <stdlib.h>
+ #include <string.h>
+-main(argc, argv)
+-int argc;
+-char **argv;
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ memcpy((char *)0, (char *)0, 0);
+@@ -363,9 +361,8 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <signal.h>
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0)
+ raise(SIGINT);
+@@ -382,9 +379,8 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <stdio.h>
+-main(argc, argv)
+-int argc;
+-char **argv;
++#include <stdlib.h>
++int main(int argc, char **argv)
+ {
+ if (argc == 0) {
+ fpos_t pos;
+@@ -404,12 +400,11 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <unistd.h>
++#include <stdlib.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+
+-main(argc, argv)
+-int argc;
+-char **argv;
++int main(int argc, char **argv)
+ {
+ if (argc == 0) {
+ pid_t pid;
+@@ -436,14 +431,15 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <signal.h>
+
+-static int whoops()
++static void whoops(int signal)
+ {
+ _exit(1);
+ }
+
+-main()
++int main(void)
+ {
+ char buf[30];
+ #ifdef SIGSEGV
+@@ -469,10 +465,9 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <nl_types.h>
++#include <stdlib.h>
+
+-main(argc, argv)
+-int argc;
+-char **argv;
++int main(int argc, char **argv)
+ {
+ if (argc == 0) {
+ nl_catd d = catopen("foo", 0);
+@@ -492,12 +487,11 @@ fi
+
+ cat >doit.c <<\EOF
+ #include <limits.h>
++#include <stdlib.h>
+
+ char c = UCHAR_MAX;
+
+-main(argc, argv)
+-int argc;
+-char **argv;
++int main(int argc, char **argv)
+ {
+ #if CHAR_MIN < 0
+ exit(!(c < 0));
+@@ -512,7 +506,8 @@ then
+ char_signed=
+ else
+ cat >doit.c <<\EOF
+-main()
++#include <stdlib.h>
++int main(void)
+ {
+ int i;
+
+--
+2.38.1
+
diff --git a/app-text/linuxdoc-tools/linuxdoc-tools-0.9.82.ebuild b/app-text/linuxdoc-tools/linuxdoc-tools-0.9.82.ebuild
new file mode 100644
index 000000000000..b4403ab283ff
--- /dev/null
+++ b/app-text/linuxdoc-tools/linuxdoc-tools-0.9.82.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools latex-package perl-functions sgml-catalog-r1 toolchain-funcs
+
+DESCRIPTION="A toolset for processing LinuxDoc DTD SGML files"
+HOMEPAGE="https://gitlab.com/agmartin/linuxdoc-tools"
+SRC_URI="https://gitlab.com/agmartin/linuxdoc-tools/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-3+ MIT SGMLUG"
+SLOT="0"
+KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86"
+IUSE="doc"
+
+RDEPEND="
+ || ( app-text/openjade app-text/opensp )
+ app-text/sgml-common
+ dev-lang/perl:=
+ sys-apps/groff
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-alternatives/awk
+ sys-devel/flex
+ doc? (
+ dev-texlive/texlive-fontsrecommended
+ virtual/latex-base
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.82-configure-clang16.patch
+)
+
+src_prepare() {
+ default
+
+ # Pregenerated configure scripts fail.
+ eautoreconf
+}
+
+src_configure() {
+ perl_set_version
+ tc-export CC
+ local myeconfargs=(
+ --disable-docs
+ --with-texdir="${TEXMF}/tex/latex/${PN}"
+ --with-perllibdir="${VENDOR_ARCH}"
+ --with-installed-iso-entities
+ )
+ use doc && myeconfargs+=(--enable-docs="txt pdf html")
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Prevent access violations from bitmap font files generation.
+ use doc && export VARTEXFONTS="${T}/fonts"
+
+ default
+}
+
+src_install() {
+ # Makefile ignores docdir configuration option.
+ emake DESTDIR="${D}" docdir="${EPREFIX}/usr/share/doc/${PF}" install
+ dodoc ChangeLog README
+
+ insinto /etc/sgml
+ newins - linuxdoc.cat <<-EOF
+ CATALOG "${EPREFIX}/usr/share/linuxdoc-tools/linuxdoc-tools.catalog"
+ EOF
+}
+
+pkg_preinst() {
+ # work around sgml-catalog.eclass removing it
+ cp "${ED}"/etc/sgml/linuxdoc.cat "${T}" || die
+}
+
+pkg_postinst() {
+ local backup=${T}/linuxdoc.cat
+ local real=${EROOT}/etc/sgml/linuxdoc.cat
+ if ! cmp -s "${backup}" "${real}"; then
+ cp "${backup}" "${real}" || die
+ fi
+
+ latex-package_pkg_postinst
+ sgml-catalog-r1_pkg_postinst
+}
+
+pkg_postrm() {
+ latex-package_pkg_postrm
+ sgml-catalog-r1_pkg_postrm
+}