From 871d28c0bae4e9332c106455dfeb18187e67b957 Mon Sep 17 00:00:00 2001 From: Ivan Max <60917834+Maxython@users.noreply.github.com> Date: Sat, 2 Oct 2021 14:41:13 +0300 Subject: [PATCH] new package: groff (#7617) Conflicts with "man" for now. --- packages/groff/Makefile.in.patch | 195 ++++++++++++++++++++++++ packages/groff/build.sh | 11 ++ packages/groff/math_config.h.patch | 11 ++ packages/groff/vasnprintf_android.patch | 13 ++ 4 files changed, 230 insertions(+) create mode 100644 packages/groff/Makefile.in.patch create mode 100644 packages/groff/build.sh create mode 100644 packages/groff/math_config.h.patch create mode 100644 packages/groff/vasnprintf_android.patch diff --git a/packages/groff/Makefile.in.patch b/packages/groff/Makefile.in.patch new file mode 100644 index 0000000000..8a38cf9f11 --- /dev/null +++ b/packages/groff/Makefile.in.patch @@ -0,0 +1,195 @@ +diff -uNr groff-1.22.4/Makefile.in groff-1.22.4.mod/Makefile.in +--- groff-1.22.4/Makefile.in 2018-12-23 17:34:27.000000000 +0300 ++++ groff-1.22.4.mod/Makefile.in 2021-10-01 14:02:32.215489825 +0300 +@@ -1680,7 +1680,7 @@ + "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chempicdir)" \ + "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devlj4fontgendir)" \ + "$(DESTDIR)$(devpsfontdir)" "$(DESTDIR)$(devpsgendir)" \ +- "$(DESTDIR)$(docexamplesdir)" "$(DESTDIR)$(glilyponddir)" \ ++ "$(DESTDIR)$(glilyponddir)" \ + "$(DESTDIR)$(gpinyindir)" "$(DESTDIR)$(grogdir)" \ + "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(localtmacdir)" \ + "$(DESTDIR)$(mmdir)" "$(DESTDIR)$(mmexampledir)" \ +@@ -1692,7 +1692,7 @@ + "$(DESTDIR)$(htmlpicdir)" "$(DESTDIR)$(momhtmldir)" \ + "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chemexample122dir)" \ + "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devpsfontdir)" \ +- "$(DESTDIR)$(docexamplesdir)" "$(DESTDIR)$(docpdfdocdir)" \ ++ "$(DESTDIR)$(docpdfdocdir)" \ + "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(htmlexamplesdir)" \ + "$(DESTDIR)$(mdocdir)" "$(DESTDIR)$(momprocessedexampledir)" \ + "$(DESTDIR)$(otherdocdir)" "$(DESTDIR)$(pdfmarkpdfdocdir)" \ +@@ -3907,7 +3907,7 @@ + lib/uniwidth.h-t lib/wchar.h lib/wchar.h-t lib/wctype.h \ + lib/wctype.h-t shdeps.sed $(CHEM_GENEXAMPLES) \ + $(nodist_chemexample122_DATA) contrib/chem/README $(ROFF2MAN) \ +- $(HDTBLGENFILES) $(HDTBLPROCESSEDEXAMPLEFILES) \ ++ $(HDTBLGENFILES) \ + $(HDTBLSTRIPFILES) $(am__append_6) $(am__append_9) \ + $(MOMPROCESSEDEXAMPLEFILES) penguin.ps penguin.pdf \ + $(am__append_10) $(am__append_12) $(am__append_14) \ +@@ -4441,8 +4441,6 @@ + hdtbltmac_DATA = $(HDTBLSTRIPFILES) + + # Files installed in $(exampledir)/hdtbl. HDTBLEXAMPLEFILES are +-# located in the source tree, while HDTBLPROCESSEDEXAMPLEFILES are +-# generated in the build tree. + + # These files are handled by the '.in.roff' rule. + HDTBLGENFILES = \ +@@ -4461,24 +4459,10 @@ + contrib/hdtbl/examples/rainbow.roff \ + contrib/hdtbl/examples/short_reference.roff + +-HDTBLPROCESSEDEXAMPLEFILES = \ +- contrib/hdtbl/examples/chess_board.ps \ +- contrib/hdtbl/examples/color_boxes.ps \ +- contrib/hdtbl/examples/color_nested_tables.ps \ +- contrib/hdtbl/examples/color_table_cells.ps \ +- contrib/hdtbl/examples/color_transitions.ps \ +- contrib/hdtbl/examples/col_rowspan_colors.ps \ +- contrib/hdtbl/examples/fonts_n.ps \ +- contrib/hdtbl/examples/fonts_x.ps \ +- contrib/hdtbl/examples/mixed_pickles.ps \ +- contrib/hdtbl/examples/rainbow.ps \ +- contrib/hdtbl/examples/short_reference.ps +- + hdtblexampledir = $(exampledir)/hdtbl + @BUILD_EXAMPLES_TRUE@dist_hdtblexample_DATA = $(HDTBLEXAMPLEFILES) + @BUILD_EXAMPLES_TRUE@nodist_hdtblexample_DATA = \ + @BUILD_EXAMPLES_TRUE@ $(HDTBLGENFILES) \ +-@BUILD_EXAMPLES_TRUE@ $(HDTBLPROCESSEDEXAMPLEFILES) \ + @BUILD_EXAMPLES_TRUE@ gnu.eps + + @BUILD_EXAMPLES_TRUE@hdtbl_TESTS = contrib/hdtbl/examples/test-hdtbl.sh +@@ -4643,13 +4627,6 @@ + @BUILD_OTHERDOC_TRUE@ doc/meintro_fr.me \ + @BUILD_OTHERDOC_TRUE@ doc/pic.ms + +-# Files generated in the build tree +-@BUILD_OTHERDOC_TRUE@PROCESSEDDOCFILES = \ +-@BUILD_OTHERDOC_TRUE@ doc/meref.ps \ +-@BUILD_OTHERDOC_TRUE@ doc/meintro.ps \ +-@BUILD_OTHERDOC_TRUE@ doc/meintro_fr.ps \ +-@BUILD_OTHERDOC_TRUE@ doc/pic.ps +- + @BUILD_OTHERDOC_TRUE@otherdocdir = $(docdir) + @BUILD_OTHERDOC_TRUE@dist_otherdoc_DATA = $(DOCFILES) + @BUILD_OTHERDOC_TRUE@nodist_otherdoc_DATA = $(PROCESSEDDOCFILES) +@@ -4676,12 +4653,6 @@ + doc/grnexmpl.me + + +-# Generated in the build tree +-@BUILD_EXAMPLES_TRUE@PROCESSEDEXAMPLEFILES = \ +-@BUILD_EXAMPLES_TRUE@ doc/webpage.ps \ +-@BUILD_EXAMPLES_TRUE@ doc/grnexmpl.ps +- +-@BUILD_EXAMPLES_TRUE@docexamplesdir = $(exampledir) + @BUILD_EXAMPLES_TRUE@dist_docexamples_DATA = $(EXAMPLEFILES) + @BUILD_EXAMPLES_TRUE@nodist_docexamples_DATA = $(PROCESSEDEXAMPLEFILES) + +@@ -8676,27 +8647,7 @@ + @list='$(dist_devpsgen_DATA)'; test -n "$(devpsgendir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(devpsgendir)'; $(am__uninstall_files_from_dir) +-install-dist_docexamplesDATA: $(dist_docexamples_DATA) +- @$(NORMAL_INSTALL) +- @list='$(dist_docexamples_DATA)'; test -n "$(docexamplesdir)" || list=; \ +- if test -n "$$list"; then \ +- echo " $(MKDIR_P) '$(DESTDIR)$(docexamplesdir)'"; \ +- $(MKDIR_P) "$(DESTDIR)$(docexamplesdir)" || exit 1; \ +- fi; \ +- for p in $$list; do \ +- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ +- echo "$$d$$p"; \ +- done | $(am__base_list) | \ +- while read files; do \ +- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docexamplesdir)'"; \ +- $(INSTALL_DATA) $$files "$(DESTDIR)$(docexamplesdir)" || exit $$?; \ +- done + +-uninstall-dist_docexamplesDATA: +- @$(NORMAL_UNINSTALL) +- @list='$(dist_docexamples_DATA)'; test -n "$(docexamplesdir)" || list=; \ +- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ +- dir='$(DESTDIR)$(docexamplesdir)'; $(am__uninstall_files_from_dir) + install-dist_glilypondDATA: $(dist_glilypond_DATA) + @$(NORMAL_INSTALL) + @list='$(dist_glilypond_DATA)'; test -n "$(glilyponddir)" || list=; \ +@@ -9180,27 +9131,7 @@ + @list='$(nodist_devpsfont_DATA)'; test -n "$(devpsfontdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(devpsfontdir)'; $(am__uninstall_files_from_dir) +-install-nodist_docexamplesDATA: $(nodist_docexamples_DATA) +- @$(NORMAL_INSTALL) +- @list='$(nodist_docexamples_DATA)'; test -n "$(docexamplesdir)" || list=; \ +- if test -n "$$list"; then \ +- echo " $(MKDIR_P) '$(DESTDIR)$(docexamplesdir)'"; \ +- $(MKDIR_P) "$(DESTDIR)$(docexamplesdir)" || exit 1; \ +- fi; \ +- for p in $$list; do \ +- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ +- echo "$$d$$p"; \ +- done | $(am__base_list) | \ +- while read files; do \ +- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docexamplesdir)'"; \ +- $(INSTALL_DATA) $$files "$(DESTDIR)$(docexamplesdir)" || exit $$?; \ +- done + +-uninstall-nodist_docexamplesDATA: +- @$(NORMAL_UNINSTALL) +- @list='$(nodist_docexamples_DATA)'; test -n "$(docexamplesdir)" || list=; \ +- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ +- dir='$(DESTDIR)$(docexamplesdir)'; $(am__uninstall_files_from_dir) + install-nodist_docpdfdocDATA: $(nodist_docpdfdoc_DATA) + @$(NORMAL_INSTALL) + @list='$(nodist_docpdfdoc_DATA)'; test -n "$(docpdfdocdir)" || list=; \ +@@ -9783,7 +9714,7 @@ + all-am: Makefile $(PROGRAMS) $(LIBRARIES) $(SCRIPTS) $(MANS) $(DATA) \ + $(HEADERS) + installdirs: +- for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(prefixexecbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(prefixexecbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(devX10012fontdir)" "$(DESTDIR)$(devX100fontdir)" "$(DESTDIR)$(devX7512fontdir)" "$(DESTDIR)$(devX75fontdir)" "$(DESTDIR)$(devasciifontdir)" "$(DESTDIR)$(devcp1047fontdir)" "$(DESTDIR)$(devdvifontdir)" "$(DESTDIR)$(devdvigendir)" "$(DESTDIR)$(devhtmlfontdir)" "$(DESTDIR)$(devlatin1fontdir)" "$(DESTDIR)$(devlbpfontdir)" "$(DESTDIR)$(devpdffontdir)" "$(DESTDIR)$(devpdffontencdir)" "$(DESTDIR)$(devpdffontmapdir)" "$(DESTDIR)$(devutf8fontdir)" "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chempicdir)" "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devlj4fontgendir)" "$(DESTDIR)$(devpsfontdir)" "$(DESTDIR)$(devpsgendir)" "$(DESTDIR)$(docexamplesdir)" "$(DESTDIR)$(glilyponddir)" "$(DESTDIR)$(gpinyindir)" "$(DESTDIR)$(grogdir)" "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(localtmacdir)" "$(DESTDIR)$(mmdir)" "$(DESTDIR)$(mmexampledir)" "$(DESTDIR)$(momexampledir)" "$(DESTDIR)$(momtmacdir)" "$(DESTDIR)$(olddevpsfontdir)" "$(DESTDIR)$(otherdocdir)" "$(DESTDIR)$(pdfmarktmacdir)" "$(DESTDIR)$(tmacdir)" "$(DESTDIR)$(tmacmmdir)" "$(DESTDIR)$(grofferdir)" "$(DESTDIR)$(groffoptsdir)" "$(DESTDIR)$(hdtbltmacdir)" "$(DESTDIR)$(htmlpicdir)" "$(DESTDIR)$(momhtmldir)" "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chemexample122dir)" "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devpsfontdir)" "$(DESTDIR)$(docexamplesdir)" "$(DESTDIR)$(docpdfdocdir)" "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(htmlexamplesdir)" "$(DESTDIR)$(mdocdir)" "$(DESTDIR)$(momprocessedexampledir)" "$(DESTDIR)$(otherdocdir)" "$(DESTDIR)$(pdfmarkpdfdocdir)" "$(DESTDIR)$(tmacdir)"; do \ ++ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(prefixexecbindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(prefixexecbindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man7dir)" "$(DESTDIR)$(devX10012fontdir)" "$(DESTDIR)$(devX100fontdir)" "$(DESTDIR)$(devX7512fontdir)" "$(DESTDIR)$(devX75fontdir)" "$(DESTDIR)$(devasciifontdir)" "$(DESTDIR)$(devcp1047fontdir)" "$(DESTDIR)$(devdvifontdir)" "$(DESTDIR)$(devdvigendir)" "$(DESTDIR)$(devhtmlfontdir)" "$(DESTDIR)$(devlatin1fontdir)" "$(DESTDIR)$(devlbpfontdir)" "$(DESTDIR)$(devpdffontdir)" "$(DESTDIR)$(devpdffontencdir)" "$(DESTDIR)$(devpdffontmapdir)" "$(DESTDIR)$(devutf8fontdir)" "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chempicdir)" "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devlj4fontgendir)" "$(DESTDIR)$(devpsfontdir)" "$(DESTDIR)$(devpsgendir)" "$(DESTDIR)$(glilyponddir)" "$(DESTDIR)$(gpinyindir)" "$(DESTDIR)$(grogdir)" "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(localtmacdir)" "$(DESTDIR)$(mmdir)" "$(DESTDIR)$(mmexampledir)" "$(DESTDIR)$(momexampledir)" "$(DESTDIR)$(momtmacdir)" "$(DESTDIR)$(olddevpsfontdir)" "$(DESTDIR)$(otherdocdir)" "$(DESTDIR)$(pdfmarktmacdir)" "$(DESTDIR)$(tmacdir)" "$(DESTDIR)$(tmacmmdir)" "$(DESTDIR)$(grofferdir)" "$(DESTDIR)$(groffoptsdir)" "$(DESTDIR)$(hdtbltmacdir)" "$(DESTDIR)$(htmlpicdir)" "$(DESTDIR)$(momhtmldir)" "$(DESTDIR)$(chemexampledir)" "$(DESTDIR)$(chemexample122dir)" "$(DESTDIR)$(devlj4fontdir)" "$(DESTDIR)$(devpsfontdir)" "$(DESTDIR)$(docpdfdocdir)" "$(DESTDIR)$(hdtblexampledir)" "$(DESTDIR)$(htmlexamplesdir)" "$(DESTDIR)$(mdocdir)" "$(DESTDIR)$(momprocessedexampledir)" "$(DESTDIR)$(otherdocdir)" "$(DESTDIR)$(pdfmarkpdfdocdir)" "$(DESTDIR)$(tmacdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done + install: $(BUILT_SOURCES) +@@ -11528,7 +11459,6 @@ + # vim: set filetype=automake textwidth=72: + $(hdtblexample_DATA): $(HDTBLSTRIPFILES) + @BUILD_EXAMPLES_TRUE@contrib/hdtbl/examples/test-hdtbl.sh: $(top_builddir)/config.status \ +-@BUILD_EXAMPLES_TRUE@ $(HDTBLPROCESSEDEXAMPLEFILES) $(top_srcdir)/contrib/hdtbl/examples/test-hdtbl.sh.in + @BUILD_EXAMPLES_TRUE@ sed -e "s|[@]abs_top_builddir[@]|$(abs_top_builddir)|g" \ + @BUILD_EXAMPLES_TRUE@ -e "s|[@]GHOSTSCRIPT[@]|$(GHOSTSCRIPT)|g" \ + @BUILD_EXAMPLES_TRUE@ $(top_srcdir)/contrib/hdtbl/examples/test-hdtbl.sh.in > $@ +@@ -11545,9 +11475,6 @@ + && sed -e "s|[@]fontdir[@]|$(fontdir)|" \ + -e "s|[@]EGREP[@]|$(EGREP)|" $< >$@ + +-$(HDTBLPROCESSEDEXAMPLEFILES): gnu.eps groff troff pic tbl \ +- contrib/hdtbl/examples/common.roff +- + $(HDTBLSTRIPFILES): $(top_srcdir)/tmac/strip.sed + @$(MKDIR_P) `dirname $@` + sed -f $(top_srcdir)/tmac/strip.sed $(hdtbl_srcdir)/`basename $@`-u > $@; +@@ -11838,20 +11765,6 @@ + @BUILD_HTMLEXAMPLES_TRUE@ $(DESTDIR)$(exampleimagedir) + + uninstall-hook: uninstall_doc_examples uninstall_doc_htmldoc uninstall_mom +-uninstall_doc_examples: +-@BUILD_EXAMPLES_TRUE@ $(RM) -f $(DESTDIR)$(exampledir)/gnu.eps +-@BUILD_HTMLEXAMPLES_TRUE@ -test -d $(DESTDIR)$(docexamplesdir) && \ +-@BUILD_HTMLEXAMPLES_TRUE@ cd $(DESTDIR)$(docexamplesdir) && \ +-@BUILD_HTMLEXAMPLES_TRUE@ for f in $(HTMLEXAMPLEFILESALL); do \ +-@BUILD_HTMLEXAMPLES_TRUE@ $(RM) $$f; \ +-@BUILD_HTMLEXAMPLES_TRUE@ done +-@BUILD_HTMLEXAMPLES_TRUE@ -test -d $(DESTDIR)$(docexamplesdir)/$(imagedir) && \ +-@BUILD_HTMLEXAMPLES_TRUE@ cd $(DESTDIR)$(docexamplesdir)/$(imagedir) && \ +-@BUILD_HTMLEXAMPLES_TRUE@ for f in $(HTMLEXAMPLEIMAGEFILES); do \ +-@BUILD_HTMLEXAMPLES_TRUE@ $(RM) $$f; \ +-@BUILD_HTMLEXAMPLES_TRUE@ done +-@BUILD_HTMLEXAMPLES_TRUE@ -rmdir $(DESTDIR)$(docexamplesdir)/$(imagedir) +-@BUILD_HTMLEXAMPLES_TRUE@ -rmdir $(DESTDIR)$(docexamplesdir) + + uninstall_doc_htmldoc: + @BUILD_HTML_TRUE@ -test -d $(DESTDIR)$(htmldocdir) && \ diff --git a/packages/groff/build.sh b/packages/groff/build.sh new file mode 100644 index 0000000000..4143519118 --- /dev/null +++ b/packages/groff/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://www.gnu.org/software/groff/ +TERMUX_PKG_DESCRIPTION="typesetting system that reads plain text mixed with formatting commands and produces formatted output" +TERMUX_PKG_LICENSE="GPL-3.0" +TERMUX_PKG_MAINTAINER="@termux" +TERMUX_PKG_VERSION=1.22.4 +TERMUX_PKG_SRCURL=https://ftp.gnu.org/gnu/groff/groff-${TERMUX_PKG_VERSION}.tar.gz +TERMUX_PKG_SHA256=e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293 +TERMUX_PKG_DEPENDS="perl" +TERMUX_PKG_CONFLICTS="man" +TERMUX_PKG_GROUPS="base-devel" +TERMUX_PKG_BUILD_IN_SRC=true diff --git a/packages/groff/math_config.h.patch b/packages/groff/math_config.h.patch new file mode 100644 index 0000000000..c6f0cd4b36 --- /dev/null +++ b/packages/groff/math_config.h.patch @@ -0,0 +1,11 @@ +diff -uNr groff-1.22.4/lib/math.in.h groff-1.22.4.mod/lib/math.in.h +--- groff-1.22.4/lib/math.in.h 2018-12-23 17:34:15.000000000 +0300 ++++ groff-1.22.4.mod/lib/math.in.h 2021-09-30 15:36:00.887961530 +0300 +@@ -33,6 +33,7 @@ + # include + #endif + ++#include + #ifndef _GL_INLINE_HEADER_BEGIN + #error "Please include config.h first." + #endif diff --git a/packages/groff/vasnprintf_android.patch b/packages/groff/vasnprintf_android.patch new file mode 100644 index 0000000000..feb902bf8b --- /dev/null +++ b/packages/groff/vasnprintf_android.patch @@ -0,0 +1,13 @@ +diff -uNr groff-1.22.4/lib/vasnprintf.c groff-1.22.4.mod/lib/vasnprintf.c +--- groff-1.22.4/lib/vasnprintf.c 2018-12-23 17:34:16.000000000 +0300 ++++ groff-1.22.4.mod/lib/vasnprintf.c 2021-09-30 20:22:47.817441906 +0300 +@@ -4874,7 +4874,8 @@ + # if ! (((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) \ + && !defined __UCLIBC__) \ + || (defined __APPLE__ && defined __MACH__) \ +- || (defined _WIN32 && ! defined __CYGWIN__)) ++ || (defined _WIN32 && ! defined __CYGWIN__) \ ++ || defined(__ANDROID__)) + fbp[1] = '%'; + fbp[2] = 'n'; + fbp[3] = '\0';