summaryrefslogtreecommitdiff
path: root/app-text/opensp
diff options
context:
space:
mode:
Diffstat (limited to 'app-text/opensp')
-rw-r--r--app-text/opensp/Manifest2
-rw-r--r--app-text/opensp/files/opensp-1.5.2-configure-clang16.patch198
-rw-r--r--app-text/opensp/opensp-1.5.2-r10.ebuild85
3 files changed, 285 insertions, 0 deletions
diff --git a/app-text/opensp/Manifest b/app-text/opensp/Manifest
index 33b3809d01f4..5a1087aa7663 100644
--- a/app-text/opensp/Manifest
+++ b/app-text/opensp/Manifest
@@ -1,5 +1,7 @@
AUX opensp-1.5.2-c11-using.patch 2626 BLAKE2B 16ff8ba1701831fa0c87e0788f8b420f1d96bf5b2f645d2d6706e82ae1767a99fed8f6ca4bd4f1abbc24bf80c4fa00d848f03056b01ac98f5b8a74d3a78c4467 SHA512 dea5fe17ea2662150b201ab6011bb01ba0f0c07689d267ec4086a914cefef3e91967f8db4be0258bac87d3cd73a9b05eb1f879415860552d9853e66e98e16e11
+AUX opensp-1.5.2-configure-clang16.patch 4027 BLAKE2B 089c16ecbe47dc7e69b42e6be91db548e6cd785f8c96de6f9ef3fb675fc2ce2ccdf435fbec26276a9d0c124ff0f776541ce33101e28bbddf949b48834074fad0 SHA512 191d5c61eeb73b4040be06b7de197f25a0599286dcd6077e942bc2cc1d4400e70e8af69a08563713036c1225e41adf6ee2f4dba3d264ffcf3ca6a35b7c37e087
AUX opensp-1.5.2-fix-segfault.patch 747 BLAKE2B 544dbb8a638d2fc8fed5c7426e828d1524f4756e6882ac837b4cf3deab4e039a0b66564431b1849d9067f6071955f82b8057cde5168094da70b1419844b000fe SHA512 e0c72df8e8b191c6cecabcac550cc52918bbff7c2fddf8099ff4403de0fe817c1f3f5deb44b4c33e9d135a97a4fd8978c4090f6740c99dbadc6f9b06e24c41cf
DIST OpenSP-1.5.2.tar.gz 1521390 BLAKE2B 2c6f8dfc721c77ab223aa67e90c8dfb45855b74fdd382ac98303c6fb23af08019ca96b5430bcdb87b9e86fc333114bd8b2e5f243c87f2cf84ee04c880c8c309b SHA512 a7dcc246ba7f58969ecd6d107c7b82dede811e65f375b7aa3e683621f2c6ff3e7dccefdd79098fcadad6cca8bb94c2933c63f4701be2c002f9a56f1bbe6b047e
+EBUILD opensp-1.5.2-r10.ebuild 2213 BLAKE2B fba33dad53760b1870a17e642670b92eb4c3e66419171e3beb0508e5747b35af838c4dc28293f5add3022880e6b8462458b7852fadf25bf5c27ba7a2c74e431b SHA512 eba835db45305c760f7e392cc5e53e3492473f78a16c0ae74371d78312a448731e13d47c01b255b77a2f047a618a2f8e79dd761867a0ebdcf1b047cebb80be8e
EBUILD opensp-1.5.2-r9.ebuild 2161 BLAKE2B c74553892ab3339340bd07124a3a2cf90d9e7df6e0cb0d8f2e4f5f49aa6d55d260ad8f23ff043f2dc3713cb3411be2f5794baf84d6017ceaf40f471d5afd7ffb SHA512 4e30775bcc7c6a940702e20bd8784c8f60b604f6ea0381de9057726ae9717182047cc4a57c3ac06b91bf4ea2a850b9faf4296b37700eafa261042dda5f6c6858
MISC metadata.xml 321 BLAKE2B 5571226bba817c3d5cc47e0bd7d67e82399403e24e7773104f33b13bf40d95113da9613db2bd77408557e6793b9efb6d435402a7b680d07e1e3e6952614bdedd SHA512 95c0d6759a91874b81b707e479eee48bf67ba762584587b4027b583e42d63a83018a3243fe81b6649090d1e0167ab825b591dfccbd3a8db9078b1a80f729de15
diff --git a/app-text/opensp/files/opensp-1.5.2-configure-clang16.patch b/app-text/opensp/files/opensp-1.5.2-configure-clang16.patch
new file mode 100644
index 000000000000..6e6832957679
--- /dev/null
+++ b/app-text/opensp/files/opensp-1.5.2-configure-clang16.patch
@@ -0,0 +1,198 @@
+https://bugs.gentoo.org/889600
+https://src.fedoraproject.org/rpms/opensp/blob/ad3afd1f07f600aa21cd6a3f1960db5570682e47/f/opensp-configure-c99.patch
+
+Avoid implicit function declarations because they have been removed
+from C in 1999. Future compilers are likely to reject them by
+default.
+
+No need to upstream this because the aclocal.m4 file is not checked
+into the repository since:
+
+------------------------------------------------------------------------
+r412 | clasen | 1999-11-06 14:10:34 +0100 (Sat, 06 Nov 1999) | 3 lines
+Changed paths:
+ M /trunk/sp/Makefile.in
+ D /trunk/sp/config/aclocal.m4
+ D /trunk/sp/config/configure.in
+ M /trunk/sp/configure
+ A /trunk/sp/configure.in
+
+Install headers in $(includedir)/OpenSP, move configure.in to toplevel,
+remove generated file aclocal.m4.
+
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -833,10 +833,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -850,7 +846,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }]
+ EOF
+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+--- a/configure
++++ b/configure
+@@ -2917,7 +2917,7 @@ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ for ac_declaration in \
+- '' \
++ '#include <stdlib.h>' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+@@ -5186,8 +5186,8 @@ main ()
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+- exit(2);
+- exit (0);
++ return 2;
++ return 0;
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
+@@ -9508,10 +9508,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -9525,7 +9521,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -9606,10 +9602,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -9623,7 +9615,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -13321,10 +13313,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -13338,7 +13326,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -13419,10 +13407,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -13436,7 +13420,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -19110,10 +19094,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -19127,7 +19107,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -19208,10 +19188,6 @@ else
+ # endif
+ #endif
+
+-#ifdef __cplusplus
+-extern "C" void exit (int);
+-#endif
+-
+ void fnord() { int i=42;}
+ int main ()
+ {
+@@ -19225,7 +19201,7 @@ int main ()
+ /* dlclose (self); */
+ }
+
+- exit (status);
++ return status;
+ }
+ EOF
+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+@@ -27450,8 +27426,8 @@ main ()
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+- exit(2);
+- exit (0);
++ return 2;
++ return 0;
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
+
diff --git a/app-text/opensp/opensp-1.5.2-r10.ebuild b/app-text/opensp/opensp-1.5.2-r10.ebuild
new file mode 100644
index 000000000000..de279d310010
--- /dev/null
+++ b/app-text/opensp/opensp-1.5.2-r10.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+MY_P=${P/opensp/OpenSP}
+DESCRIPTION="A free, object-oriented toolkit for SGML parsing and entity management"
+HOMEPAGE="https://openjade.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/project/openjade/opensp/${PV}/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc nls static-libs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="elibc_glibc? ( net-libs/libnsl:0= )"
+DEPEND="${RDEPEND}"
+BDEPEND="nls? ( sys-devel/gettext )
+ doc? (
+ app-text/xmlto
+ app-text/docbook-xml-dtd:4.1.2
+ )
+ test? (
+ app-text/docbook-xml-dtd:4.5
+ app-text/openjade
+ app-text/sgml-common
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-segfault.patch
+ "${FILESDIR}"/${P}-c11-using.patch
+ "${FILESDIR}"/${P}-configure-clang16.patch
+)
+
+src_prepare() {
+ default
+ use prefix && eautoreconf
+}
+
+src_configure() {
+ export CONFIG_SHELL=${BASH} # configure needs bash
+
+ # The following filters are taken from openjade's ebuild. See bug #100828.
+ # Please note! Opts are disabled. If you know what you're doing
+ # feel free to remove this line. It may cause problems with
+ # docbook-sgml-utils among other things.
+ #ALLOWED_FLAGS="-O -O1 -O2 -pipe -g -march"
+ strip-flags
+
+ append-cxxflags -std=gnu++11
+
+ econf \
+ --enable-http \
+ --enable-default-catalog="${EPREFIX}"/etc/sgml/catalog \
+ --enable-default-search-path="${EPREFIX}"/usr/share/sgml \
+ --datadir="${EPREFIX}"/usr/share/sgml/${P} \
+ $(use_enable nls) \
+ $(use_enable doc doc-build) \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ emake pkgdocdir="${EPREFIX}"/usr/share/doc/${PF}
+}
+
+src_test() {
+ # Skipping tests known not to work
+ emake SHOWSTOPPERS= check
+ SANDBOX_PREDICT="${SANDBOX_PREDICT%:/}"
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ pkgdocdir="${EPREFIX}"/usr/share/doc/${PF} \
+ install
+
+ find "${ED}" -name '*.la' -delete || die
+
+ dodoc AUTHORS BUGS ChangeLog NEWS README
+}