mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
net-dialup/mgetty: update EAPI 7 -> 8
Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
This commit is contained in:
181
net-dialup/mgetty/mgetty-1.2.1-r4.ebuild
Normal file
181
net-dialup/mgetty/mgetty-1.2.1-r4.ebuild
Normal file
@@ -0,0 +1,181 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
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 -riscv ~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"
|
||||
}
|
||||
Reference in New Issue
Block a user