commit:     0dbb5a6b28d23592e42e3060caea924973dc6aab
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Wed Feb  5 19:38:56 2020 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Wed Feb  5 19:39:13 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0dbb5a6b

app-text/vilistextum-2.8.0.20191023: version bump

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 app-text/vilistextum/Manifest                      |   1 +
 .../files/vilistextum-2.8.0-blockquote.patch       | 120 +++++++++++++++++++++
 .../files/vilistextum-2.8.0-gentoo.patch           |  11 ++
 .../files/vilistextum-2.8.0-prefix.patch           |  27 +++++
 .../files/vilistextum-2.8.0-towlower.patch         |  12 +++
 .../vilistextum/vilistextum-2.8.0.20191023.ebuild  |  80 ++++++++++++++
 6 files changed, 251 insertions(+)

diff --git a/app-text/vilistextum/Manifest b/app-text/vilistextum/Manifest
index 485ac7c4b75..b14c6c710cf 100644
--- a/app-text/vilistextum/Manifest
+++ b/app-text/vilistextum/Manifest
@@ -1 +1,2 @@
 DIST vilistextum-2.6.9.tar.bz2 147743 BLAKE2B 
1cf6f187cb277271ddd9946984afb4d59336ea0cd446e62df3593070ccc63b3510a107e2b7e7b8dc757c63e4f5caf3790c7d998b6be325f4d22d2a6b9fea3432
 SHA512 
ce76a4061b766e4544d1a86986333314a3b6959439ba6995a2977c10b01b0142c524d4b215c3272a1dcfcc4f5b6fda03210de95d65cedecfc6a1c940cedf487d
+DIST vilistextum-2.8.0.20191023.tar.gz 219266 BLAKE2B 
b94f3179f9181711fd6fe2a8240c7654917f7f93f161495b3380c840bff687714862116d15dfd3f1817a521f0c2d2730221084b6fbe7d1242d4285b2fe21b18b
 SHA512 
a68410993e1b9d3d9dbdfb5677941bf2e95805573d210c510f65be5ebad00cb09f50ef5e592f25a34e535b32a44fc23265e839195316d0ac3c8c8c3b626bfe98

diff --git a/app-text/vilistextum/files/vilistextum-2.8.0-blockquote.patch 
b/app-text/vilistextum/files/vilistextum-2.8.0-blockquote.patch
new file mode 100644
index 00000000000..74d44309669
--- /dev/null
+++ b/app-text/vilistextum/files/vilistextum-2.8.0-blockquote.patch
@@ -0,0 +1,120 @@
+Many clients seem to use blockquote tags to flag quotes these days, so
+write them out as quotes, so they remain readable.
+
+--- a/src/html_tags.c  2019-10-23 16:25:27.000000000 +0200
++++ b/src/html_tags.c  2020-02-05 20:11:57.308596941 +0100
+@@ -261,6 +261,7 @@
+               line_break();
+       } else {
+               start_p();
++              quote++;
+       }
+ } /* html_pre */
+ 
+@@ -271,6 +272,7 @@
+               line_break();
+       } else {
+               paragraphen_ende();
++              quote -= quote != 0;
+       }
+ } /* html_pre_end */
+ 
+--- a/src/multibyte.h  2020-02-05 20:08:43.863715764 +0100
++++ b/src/multibyte.h  2020-02-05 20:12:34.401382354 +0100
+@@ -18,6 +18,7 @@
+  #define ATOI(n) wcstoi(n)
+ 
+  #define ONESPACE L" "
++ #define QUOTE L">"
+  #define WORT_PLUS_STRING(str) wort_plus_string(L##str)
+ 
+  #define STRSTR(haystack, needle) wcsstr(haystack, L##needle)
+@@ -43,6 +44,7 @@
+  #define ATOI(n) atoi(n)
+ 
+  #define ONESPACE " "
++ #define QUOTE ">"
+  #define WORT_PLUS_STRING(str) wort_plus_string(str)
+ 
+  #define STRSTR(haystack, needle) strstr(haystack, needle)
+--- a/src/text.c       2019-10-23 16:25:27.000000000 +0200
++++ b/src/text.c       2020-02-05 20:16:04.852164539 +0100
+@@ -28,6 +28,7 @@
+ int breite=76,
+       hr_breite=76,
+       paragraph=0,
++      quote=0,
+ 
+       tab=4,         /* tabulator */
+       spaces=0,      /* spaces at beginning of line */
+@@ -378,6 +379,12 @@
+                       printf(" z0: zeilen_pos: %d\n",zeilen_pos);
+ #endif
+                       print_zeile();
++                      if (quote > 0)
++                      {
++                              i=0;
++                              while (i<quote) { zeile_plus_wort(QUOTE,1,1); 
i++; }
++                              zeile_plus_wort(ONESPACE,1,1);
++                      }
+                       i=0;
+                       while (i<spaces) { zeile_plus_wort(ONESPACE,1,1); i++; }
+                       if (orderedlist>0) { zeile_plus_wort(ONESPACE,1,1); }
+@@ -398,6 +405,12 @@
+                       printf(" z2: zeilen_len: %d\n",zeilen_len);
+                       printf(" z2: zeilen_pos: %d\n",zeilen_pos);
+ #endif
++                      if (quote > 0)
++                      {
++                              i=0;
++                              while (i<quote) { zeile_plus_wort(QUOTE,1,1); 
i++; }
++                              zeile_plus_wort(ONESPACE,1,1);
++                      }
+                       i=0;
+                       while (i<spaces) { zeile_plus_wort(ONESPACE,1,1); i++; }
+                       if (orderedlist>0) { zeile_plus_wort(ONESPACE,1,1); }
+--- a/src/text.h       2019-10-23 16:25:27.000000000 +0200
++++ b/src/text.h       2020-02-05 20:18:40.792261818 +0100
+@@ -26,6 +26,7 @@
+ 
+ int tab;
+ int spaces;
++int quote;
+ 
+ void print_zeile();
+ int is_zeile_empty();
+--- a/tests/test_functions
++++ b/tests/test_functions
+@@ -12,6 +12,9 @@
+   rm -f testcases/$prefix.output.test
+   ../src/vilistextum 2>/dev/null $args testcases/$prefix.html 
testcases/$output_prefix.output.test
+ 
++  # remove (block)quotes
++  sed -i -e 's/^>\+ //' testcases/$output_prefix.output.test
++
+   diff >/dev/null testcases/$output_prefix.output 
testcases/$output_prefix.output.test
+   retval=$?
+   if [ $retval -ne 0 ]; then
+--- a/tests/testcases/utf-8-sampler.output
++++ b/tests/testcases/utf-8-sampler.output.test
+@@ -100,8 +100,8 @@
+ ვეპხის ტყაოსანი შოთა რუსთაველი
+ 
+ ღმერთსი შემვედრე, ნუთუ კვლა დამხსნას სოფლისა შრომასა, ცეცხლს, წყალსა და
+-მიწასა, ჰაერთა თანა მრომასა; მომცნეს ფრთენი და აღვფრინდე, მივჰხვდე მას ჩემსა
+-ნდომასა, დღისით და ღამით ვჰხედვიდე მზისა ელვათა კრთომაასა.
++მიწასა, ჰაერთა თანა მრომასა; მომცნეს ფრთენი და აღვფრინდე, მივჰხვდე მას
++ჩემსა ნდომასა, დღისით და ღამით ვჰხედვიდე მზისა ელვათა კრთომაასა.
+ 
+ Tamil poetry of Cupiramaniya Paarathiyar: சுப்ரமணிய பாரதியார் (1882-1921)
+ 
+@@ -446,7 +446,8 @@
+ д, п, and/or т:
+ 
+  Bulgarian:    [ бгдпт ]    [ бгдпт ]     Мога да ям стъкло и не ме боли.
+- Russian:  [ бгдпт ]    [ бгдпт ]    Я могу есть стекло, это мне не вредит.
++ Russian:  [ бгдпт ]    [ бгдпт ]    Я могу есть стекло, это мне не
++вредит.
+  Serbian:  [ бгдпт ]    [ бгдпт ]     Могу јести стакло а да ми не шкоди.
+ 
+   ------------------------------------------------------------------------

diff --git a/app-text/vilistextum/files/vilistextum-2.8.0-gentoo.patch 
b/app-text/vilistextum/files/vilistextum-2.8.0-gentoo.patch
new file mode 100644
index 00000000000..a26ae717818
--- /dev/null
+++ b/app-text/vilistextum/files/vilistextum-2.8.0-gentoo.patch
@@ -0,0 +1,11 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -6,7 +6,7 @@
+                                                                               
        main.c main.h util.c util.h \
+                                                                               
        multibyte.h unicode_entities.c unicode_entities.h
+ 
+-AM_CFLAGS = -Wall -O2 -ansi
++AM_CFLAGS = -Wall -ansi
+ AM_LDFLAGS = $(STATIC)
+ 
+ EXTRA_DIST = kilistextum.kaptn

diff --git a/app-text/vilistextum/files/vilistextum-2.8.0-prefix.patch 
b/app-text/vilistextum/files/vilistextum-2.8.0-prefix.patch
new file mode 100644
index 00000000000..e5cb3ba2a18
--- /dev/null
+++ b/app-text/vilistextum/files/vilistextum-2.8.0-prefix.patch
@@ -0,0 +1,27 @@
+* don't look in /usr/local
+* try to hack around not being able to use AM_ICONV
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -21,10 +21,6 @@
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(getopt.h)    
+ 
+-dnl add /usr/local
+-CFLAGS="$CFLAGS -I/usr/local/include"
+-LDFLAGS="$LDFLAGS -L/usr/local/lib"
+-
+ dnl checking for options
+ AC_MSG_CHECKING(if --enable-multibyte specified)
+ AC_ARG_ENABLE(multibyte,
+@@ -41,7 +37,9 @@
+ AC_CHECK_HEADERS(iconv.h,,
+                       AC_MSG_ERROR(Need libiconv or iconv.h for multibyte 
support))
+ 
+-AC_CHECK_LIB(iconv, iconv,,
++dnl iconv_open_into is implemented only in GNU libiconv and not in other
++dnl iconv implementations
++AC_CHECK_LIB(iconv, libiconv_open_into,,
+                       AC_MSG_WARN([Generic iconv found but not libiconv. See 
INSTALL for details]))
+ 
+ dnl setting INTERNAL_LOCALE

diff --git a/app-text/vilistextum/files/vilistextum-2.8.0-towlower.patch 
b/app-text/vilistextum/files/vilistextum-2.8.0-towlower.patch
new file mode 100644
index 00000000000..a9c8a96a752
--- /dev/null
+++ b/app-text/vilistextum/files/vilistextum-2.8.0-towlower.patch
@@ -0,0 +1,12 @@
+towlower is defined by wctype.h
+
+--- a/src/multibyte.h
++++ b/src/multibyte.h
+@@ -2,6 +2,7 @@
+ 
+ #ifdef MULTIBYTE
+ #include <wchar.h>
++#include <wctype.h>
+  #define CHAR wchar_t
+  #define STRLEN(s) wcslen(s)
+  #define CPYSS(dest, src) wcscpy(dest, src) /* copy str to str */

diff --git a/app-text/vilistextum/vilistextum-2.8.0.20191023.ebuild 
b/app-text/vilistextum/vilistextum-2.8.0.20191023.ebuild
new file mode 100644
index 00000000000..d77ae962a94
--- /dev/null
+++ b/app-text/vilistextum/vilistextum-2.8.0.20191023.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic
+
+GITID="f299bb5e5f661c345c4b85a3e8de9ad8615ad17a"
+DESCRIPTION="HTML to ASCII converter programmed to handle incorrect html"
+HOMEPAGE="https://bhaak.net/vilistextum/";
+SRC_URI="https://github.com/bhaak/vilistextum/tarball/${GITID} -> ${P}.tar.gz"
+S="${WORKDIR}/bhaak-${PN}-${GITID:0:7}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
+IUSE="unicode"
+
+DEPEND="virtual/libiconv"
+RDEPEND=""
+
+src_prepare() {
+       eapply "${FILESDIR}/${PN}-2.8.0-gentoo.patch"
+       eapply "${FILESDIR}/${PN}-2.8.0-prefix.patch"
+       eapply "${FILESDIR}/${PN}-2.8.0-blockquote.patch"
+       eapply "${FILESDIR}/${PN}-2.8.0-towlower.patch"
+
+       eapply_user
+       eautoreconf
+
+       # wcscasecmp needs extensions, which aren't enabled
+       export ac_cv_func_wcscasecmp=no
+}
+
+get_locale() {
+       locale -a | grep -i "$1\.utf.*8\$"
+}
+
+find_locale() {
+       local l t
+
+       # we basically prefer to find en_US.UTF-8, but it may not always be
+       # available, in which case it is better not to hardcode to use it
+       l=$(get_locale en_US)
+       if [[ -z ${l} ]] ; then
+               for t in "en_GB" "en_.*" ".*" ; do
+                       l=$(get_locale ${t})
+                       if [[ -n ${l} ]] ; then
+                               l=${l%%$'\n'*}
+                               break;
+                       fi
+               done
+       fi
+       [[ -z ${l} ]] && die "Failed to find a unicode locale"
+       echo "${l}"
+}
+
+src_configure() {
+       # need hardwired locale simply because locale -a | grep -i utf-8 | head 
-n1
+       # isn't always returning the most sensical (and working) locale
+       econf \
+               $(use_enable unicode multibyte) \
+               $(use_with unicode unicode-locale $(find_locale))
+}
+
+src_test() {
+       if $(locale -a | grep -iq "en_US\.utf.*8"); then
+               emake -j1 check
+       else
+               ewarn "If you like to run the test,"
+               ewarn "please make sure en_US.UTF-8 is installed."
+               die "en_US.UTF-8 locale is missing"
+       fi
+}
+
+src_install() {
+       default
+       doman doc/${PN}.1
+       dodoc doc/changes.xhtml doc/htmlmail.xhtml
+}

Reply via email to