summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorConrad Kostecki <conikost@gentoo.org>2021-02-28 21:51:43 +0100
committerConrad Kostecki <conikost@gentoo.org>2021-02-28 21:51:43 +0100
commiteb8a4f413735a6fa810fd89793a45ad387aac1c0 (patch)
tree0e98082d73183cd49fb4071be996da7f1fdab7d9 /net-dialup/mgetty
parentnet-libs/nodejs: remove old (diff)
downloadgentoo-eb8a4f413735a6fa810fd89793a45ad387aac1c0.tar.gz
gentoo-eb8a4f413735a6fa810fd89793a45ad387aac1c0.tar.bz2
gentoo-eb8a4f413735a6fa810fd89793a45ad387aac1c0.zip
net-dialup/mgetty: add systemd unit
Also added missing patch for arm64. Closes: https://bugs.gentoo.org/546610 Package-Manager: Portage-3.0.16, Repoman-3.0.2 Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
Diffstat (limited to 'net-dialup/mgetty')
-rw-r--r--net-dialup/mgetty/files/mgetty-1.2.1-aarch64.patch11
-rw-r--r--net-dialup/mgetty/mgetty-1.2.1-r3.ebuild181
2 files changed, 192 insertions, 0 deletions
diff --git a/net-dialup/mgetty/files/mgetty-1.2.1-aarch64.patch b/net-dialup/mgetty/files/mgetty-1.2.1-aarch64.patch
new file mode 100644
index 000000000000..9d3b9cbc9633
--- /dev/null
+++ b/net-dialup/mgetty/files/mgetty-1.2.1-aarch64.patch
@@ -0,0 +1,11 @@
+diff -U3 -r a/mgetty.h b/mgetty.h
+--- a/mgetty.h 2006-01-01 12:13:18.000000000 -0500
++++ b/mgetty.h 2018-01-13 12:53:00.337516215 -0500
+@@ -198,7 +198,7 @@
+ */
+ #if defined(__alpha__) || defined(__sparc64__) || \
+ defined(__ia64__) || defined(__s390x__) || defined(__x86_64__) || \
+- defined(__powerpc64__)
++ defined(__powerpc64__) || defined(__aarch64__)
+ # define PTR_IS_LONG
+ #endif
diff --git a/net-dialup/mgetty/mgetty-1.2.1-r3.ebuild b/net-dialup/mgetty/mgetty-1.2.1-r3.ebuild
new file mode 100644
index 000000000000..4f812a8d3984
--- /dev/null
+++ b/net-dialup/mgetty/mgetty-1.2.1-r3.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic systemd toolchain-funcs
+
+DESCRIPTION="A programm for sending and receiving fax and voice"
+HOMEPAGE="http://mgetty.greenie.net/"
+SRC_URI="ftp://mgetty.greenie.net/pub/mgetty/source/$(ver_cut 1-2)/${P}.tar.gz"
+
+DEPEND="
+ dev-lang/perl
+ sys-apps/groff
+ sys-apps/texinfo
+ virtual/awk
+ fax? ( !net-misc/efax )
+"
+
+RDEPEND="
+ ${DEPEND}
+ acct-group/fax
+ acct-user/fax
+ fax? (
+ app-text/ghostscript-gpl
+ media-libs/netpbm
+ )
+"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="+fax fidonet split-usr"
+
+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
+ "${FILESDIR}"/${PN}-1.2.1-aarch64.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
+
+ systemd_newunit "${FILESDIR}"/mgetty.service mgetty@.service
+}
+
+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"
+}