From 032f54df1ef7a27bb5e86e823c65c8bf68b3f789 Mon Sep 17 00:00:00 2001 From: Alexander Tsoy Date: Thu, 1 Aug 2019 01:01:02 +0300 Subject: [PATCH] net-dialup/mgetty: add support for /usr merge Closes: https://bugs.gentoo.org/690362 Package-Manager: Portage-2.3.66, Repoman-2.3.11 Signed-off-by: Alexander Tsoy Closes: https://github.com/gentoo/gentoo/pull/12493 Signed-off-by: Joonas Niilola --- net-dialup/mgetty/mgetty-1.2.1-r1.ebuild | 178 +++++++++++++++++++++++ 1 file changed, 178 insertions(+) create mode 100644 net-dialup/mgetty/mgetty-1.2.1-r1.ebuild diff --git a/net-dialup/mgetty/mgetty-1.2.1-r1.ebuild b/net-dialup/mgetty/mgetty-1.2.1-r1.ebuild new file mode 100644 index 000000000000..a188806c1cfd --- /dev/null +++ b/net-dialup/mgetty/mgetty-1.2.1-r1.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit flag-o-matic toolchain-funcs user + +DESCRIPTION="fax and voice modem programs" +HOMEPAGE="http://mgetty.greenie.net/" +SRC_URI="ftp://mgetty.greenie.net/pub/mgetty/source/1.2/${P}.tar.gz" + +DEPEND=" + dev-lang/perl + sys-apps/groff + sys-apps/texinfo + virtual/awk + fax? ( + !net-misc/efax + !net-misc/hylafax + ) +" +RDEPEND="${DEPEND} + fax? ( media-libs/netpbm app-text/ghostscript-gpl ) +" + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="+fax fidonet split-usr" + +pkg_setup() { + enewgroup fax + enewuser fax -1 -1 /dev/null fax +} + +PATCHES=( + "${FILESDIR}"/${PN}-1.1.36-callback.patch + "${FILESDIR}"/${PN}-1.1.36-tmpfile.patch + "${FILESDIR}"/${PN}-1.1.37-qa-fixes.patch + "${FILESDIR}"/${PN}-1.2.1-Lucent.c.patch + "${FILESDIR}"/${PN}-1.2.1-gentoo.patch +) + +src_prepare() { + default + + chmod +x mkidirs || die + + # don't install fax related files - bug #195467 + use fax || eapply "${FILESDIR}/${PN}-1.1.37-nofax.patch" + + sed -i -e 's:/usr/local/lib/mgetty+sendfax:/etc/mgetty+sendfax:' faxrunq.config || die 'changing mgetty config dir failed' + sed -i -e 's:/usr/local/bin/g3cat:/usr/bin/g3cat:' faxrunq.config fax/faxspool.rules || die 'changing g3cat path failed' + + sed -e "/^doc-all:/s/mgetty.asc mgetty.info mgetty.dvi mgetty.ps/mgetty.info/" \ + -i doc/Makefile || die 'first sed on doc/Makefile failed' + + sed -i \ + -e 's:^CC=:CC?=:g' \ + -e 's:^CFLAGS=:CFLAGS?=:g' \ + {,*/}Makefile || die + sed -i \ + -e 's:^AR=:AR?=:g' \ + -e 's:^CFLAGS=:CFLAGS+= -I..:g' \ + -e 's:^RANLIB=:RANLIB?=:g' \ + */Makefile || die +} + +src_configure() { + tc-export AR CC RANLIB + use fidonet && append-cppflags "-DFIDO" + append-cppflags "-DAUTO_PPP" + + sed -e 's:var/log/mgetty:var/log/mgetty/mgetty:' \ + -e 's:var/log/sendfax:var/log/mgetty/sendfax:' \ + -e 's:\/\* \(\#define CNDFILE "dialin.config"\) \*\/:\1:' \ + -e 's:\(\#define FAX_NOTIFY_PROGRAM\).*:\1 "/etc/mgetty+sendfax/new_fax":' \ + policy.h-dist > policy.h || die 'creating policy.h failed' + + sed -i \ + -e "s/\$(CFLAGS) -o newslock/${CFLAGS} ${LDFLAGS} -Wall -o newslock/" \ + -e "s/\$(LDLAGS)/${LDFLAGS}/" \ + {,fax/}Makefile || die +} + +src_compile() { + local target + for target in mgetty sedscript all vgetty;do + VARTEXFONTS="${T}"/fonts emake prefix=/usr \ + CONFDIR=/etc/mgetty+sendfax \ + CFLAGS="${CFLAGS} ${CPPFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + ${target} + done +} + +src_install () { + # parallelization issue: vgetty-install target fails if install target + # isn't finished + local target + for target in install "vgetty-install install-callback"; do + emake prefix="${D}/usr" \ + INFODIR="${D}/usr/share/info" \ + CONFDIR="${D}/etc/mgetty+sendfax" \ + MAN1DIR="${D}/usr/share/man/man1" \ + MAN4DIR="${D}/usr/share/man/man4" \ + MAN5DIR="${D}/usr/share/man/man5" \ + MAN8DIR="${D}/usr/share/man/man8" \ + SBINDIR="${D}/usr/sbin" \ + BINDIR="${D}/usr/bin" \ + VOICE_DIR="${D}/var/spool/voice" \ + PHONE_GROUP=fax \ + PHONE_PERMS=755 \ + spool="${D}/var/spool" \ + ${target} + done + + keepdir /var/log/mgetty + + #Install mgetty into /sbin (#119078) + if use split-usr; then + dodir /sbin + mv "${D}"/usr/sbin/mgetty "${D}"/sbin || die + dosym ../../sbin/mgetty /usr/sbin/mgetty + fi + + #Don't install ct (#106337) + rm "${D}"/usr/bin/ct || die "failed to remove useless ct program" + + dodoc BUGS ChangeLog README.1st Recommend THANKS TODO \ + doc/*.txt doc/modems.db + doinfo doc/mgetty.info + + docinto vgetty + dodoc voice/{Readme,Announce,ChangeLog,Credits} + + docinto vgetty/doc + dodoc voice/doc/* + + if use fax; then + mv samples/new_fax.all samples_new_fax.all || die "move failed." + docinto samples + dodoc samples/* + + docinto samples/new_fax + dodoc samples_new_fax.all/* + fi + + if ! use fax; then + insinto /usr/share/${PN}/frontends + doins -r frontends/{voice,network} + else + insinto /usr/share/${PN} + doins -r frontends + fi + insinto /usr/share/${PN} + doins -r patches + insinto /usr/share/${PN}/voice + doins -r voice/{contrib,Perl,scripts} + + diropts -m 0750 -o fax -g fax + dodir /var/spool/voice + keepdir /var/spool/voice/incoming + keepdir /var/spool/voice/messages + if use fax; then + dodir /var/spool/fax + dodir /var/spool/fax/outgoing + keepdir /var/spool/fax/outgoing/locks + keepdir /var/spool/fax/incoming + fi +} + +pkg_postinst() { + elog "Users who wish to use the fax or voicemail capabilities must be members" + elog "of the group fax in order to access files" + elog + elog "If you want to grab voice messages from a remote location, you must save" + elog "the password in /var/spool/voice/.code file" +} -- 2.26.2