public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Lars Wendler" <polynomial-c@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-text/mandoc/, app-text/mandoc/files/
Date: Fri, 11 Dec 2020 12:22:22 +0000 (UTC)	[thread overview]
Message-ID: <1607689338.21fccd433a95f545ac5407c0f58020bd010a38c6.polynomial-c@gentoo> (raw)

commit:     21fccd433a95f545ac5407c0f58020bd010a38c6
Author:     epsilonKNOT <gentoo <AT> aisha <DOT> cc>
AuthorDate: Sun Nov 29 01:47:52 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Dec 11 12:22:18 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21fccd43

app-text/mandoc: allow mandoc as default man provider

only supports using gzip

Add musl patch from
Wolfgang Mueller <wolf+gentoo <AT> oriole.systems>

Closes: https://bugs.gentoo.org/616776

Package-Manager: Portage-3.0.10, Repoman-3.0.2
Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 .../files/mandoc-1.14.5-r1-www-install.patch       |  19 ++++
 app-text/mandoc/files/mandoc.cron-r0               |   6 ++
 app-text/mandoc/mandoc-1.14.5-r1.ebuild            | 118 +++++++++++++++++++++
 app-text/mandoc/metadata.xml                       |   4 +
 4 files changed, 147 insertions(+)

diff --git a/app-text/mandoc/files/mandoc-1.14.5-r1-www-install.patch b/app-text/mandoc/files/mandoc-1.14.5-r1-www-install.patch
new file mode 100644
index 00000000000..2395f1ce66b
--- /dev/null
+++ b/app-text/mandoc/files/mandoc-1.14.5-r1-www-install.patch
@@ -0,0 +1,19 @@
+diff --git a/Makefile b/Makefile
+index f4e2954..191c7e2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -535,9 +535,11 @@ soelim: $(SOELIM_OBJS)
+ # --- maintainer targets ---
+ 
+ www-install: www
+-	$(INSTALL_DATA) mandoc.css $(HTDOCDIR)
+-	$(INSTALL_DATA) $(WWW_MANS) $(HTDOCDIR)/man
+-	$(INSTALL_DATA) $(WWW_INCS) $(HTDOCDIR)/includes
++	mkdir -p $(DESTDIR)$(HTDOCDIR)/man
++	mkdir -p $(DESTDIR)$(HTDOCDIR)/includes
++	$(INSTALL_DATA) mandoc.css $(DESTDIR)$(HTDOCDIR)
++	$(INSTALL_DATA) $(WWW_MANS) $(DESTDIR)$(HTDOCDIR)/man
++	$(INSTALL_DATA) $(WWW_INCS) $(DESTDIR)$(HTDOCDIR)/includes
+ 
+ depend: config.h
+ 	mkdep -f Makefile.depend $(CFLAGS) $(SRCS)

diff --git a/app-text/mandoc/files/mandoc.cron-r0 b/app-text/mandoc/files/mandoc.cron-r0
new file mode 100644
index 00000000000..78556490176
--- /dev/null
+++ b/app-text/mandoc/files/mandoc.cron-r0
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+# need MANPATH
+. /etc/profile.env
+
+exec nice makewhatis -T utf8 2>/dev/null

diff --git a/app-text/mandoc/mandoc-1.14.5-r1.ebuild b/app-text/mandoc/mandoc-1.14.5-r1.ebuild
new file mode 100644
index 00000000000..f138ef991ac
--- /dev/null
+++ b/app-text/mandoc/mandoc-1.14.5-r1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Suite of tools compiling mdoc and man"
+HOMEPAGE="https://mdocml.bsd.lv/"
+SRC_URI="https://mdocml.bsd.lv/snapshots/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="cgi system-man"
+
+RDEPEND="sys-libs/zlib
+	system-man? ( !sys-apps/man-db )
+"
+DEPEND="${RDEPEND}
+	cgi? ( sys-libs/zlib[static-libs] )
+"
+BDEPEND="
+	cgi? ( app-text/highlight )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.14.5-r1-www-install.patch )
+
+pkg_pretend() {
+	if use system-man ; then
+		# only support uncompressed and gzip
+		[[ -n ${PORTAGE_COMPRESS+unset} ]] && \
+		[[ "${PORTAGE_COMPRESS}" == "gzip" || "${PORTAGE_COMPRESS}" == "" ]] || \
+		ewarn "only PORTAGE_COMPRESS=gzip or '' is supported, man pages will not be indexed"
+	fi
+}
+
+src_prepare() {
+	default
+
+	# The db-install change is to support parallel installs.
+	sed -i \
+		-e '/ar rs/s:ar:$(AR):' \
+		-e '/^db-install:/s:$: base-install:' \
+		Makefile || die
+
+	# make-4.3 doesn't like the CC line (bug #706024)
+	# and "echo -n" is not portable
+	sed \
+		-e "s@^\(CC=\).*\$@\1\"$(tc-getCC)\"@" \
+		-e 's@echo -n@printf@g' \
+		-i configure || die
+
+	cat <<-EOF > "configure.local"
+		PREFIX="${EPREFIX}/usr"
+		BINDIR="${EPREFIX}/usr/bin"
+		SBINDIR="${EPREFIX}/usr/sbin"
+		LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+		MANDIR="${EPREFIX}/usr/share/man"
+		INCLUDEDIR="${EPREFIX}/usr/include/mandoc"
+		EXAMPLEDIR="${EPREFIX}/usr/share/examples/mandoc"
+		MANPATH_DEFAULT="${EPREFIX}/usr/man:${EPREFIX}/usr/share/man:${EPREFIX}/usr/local/man:${EPREFIX}/usr/local/share/man"
+
+		CFLAGS="${CFLAGS} ${CPPFLAGS}"
+		LDFLAGS="${LDFLAGS}"
+		AR="$(tc-getAR)"
+		CC="$(tc-getCC)"
+		# The STATIC variable is only used by man.cgi.
+		STATIC=
+
+		# conflicts with sys-apps/groff
+		BINM_SOELIM=msoelim
+		MANM_ROFF=mandoc_roff
+		# conflicts with sys-apps/man-pages
+		MANM_MAN=mandoc_man
+
+		# fix utf-8 locale on musl
+		$(usex elibc_musl UTF8_LOCALE=C.UTF-8 '')
+	EOF
+	use system-man || cat <<-EOF >> "configure.local"
+		BINM_MAN=mman
+		BINM_APROPOS=mapropos
+		BINM_WHATIS=mwhatis
+		BINM_MAKEWHATIS=mmakewhatis
+		MANM_MDOC=mandoc_mdoc
+		MANM_EQN=mandoc_eqn
+		MANM_TBL=mandoc_tbl
+		MANM_MANCONF=mman.conf
+	EOF
+	if use cgi; then
+		cp cgi.h{.example,} || die
+	fi
+	if [[ -n "${MANDOC_CGI_H}" ]]; then
+		cp "${MANDOC_CGI_H}" cgi.h || die
+	fi
+}
+
+src_compile() {
+	default
+	use cgi && emake man.cgi
+}
+
+src_install() {
+	emake DESTDIR="${D}" install
+	use cgi && emake DESTDIR="${D}" cgi-install www-install
+
+	if use system-man ; then
+		exeinto /etc/cron.daily
+		newexe "${FILESDIR}"/mandoc.cron-r0 mandoc
+	fi
+}
+
+pkg_postinst() {
+	if use system-man ; then
+		elog "Generating mandoc database"
+		makewhatis || die
+	fi
+}

diff --git a/app-text/mandoc/metadata.xml b/app-text/mandoc/metadata.xml
index aebca33be17..814b35c6240 100644
--- a/app-text/mandoc/metadata.xml
+++ b/app-text/mandoc/metadata.xml
@@ -4,4 +4,8 @@
 <maintainer type="project">
 	<email>base-system@gentoo.org</email>
 </maintainer>
+	<use>
+		<flag name="cgi">build man.cgi web plugin for viewing man pages</flag>  
+		<flag name="system-man">set as the default man provider</flag>
+	</use>
 </pkgmetadata>


             reply	other threads:[~2020-12-11 12:22 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-11 12:22 Lars Wendler [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-01-03  9:58 [gentoo-commits] repo/gentoo:master commit in: app-text/mandoc/, app-text/mandoc/files/ Sergei Trofimovich
2022-04-17 17:06 Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1607689338.21fccd433a95f545ac5407c0f58020bd010a38c6.polynomial-c@gentoo \
    --to=polynomial-c@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox