blob: 4edb98885fd02d87492e4b6ddd8032339e9660ab (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools flag-o-matic multilib
DESCRIPTION="A package of programs that fit together to form a morse code tutor program"
HOMEPAGE="http://unixcw.sourceforge.net"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ppc ~x86"
IUSE="alsa ncurses pulseaudio suid test qt5"
RESTRICT="!test? ( test )"
RDEPEND="ncurses? ( sys-libs/ncurses:= )
qt5? ( dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5 )
alsa? ( media-libs/alsa-lib )
pulseaudio? ( media-sound/pulseaudio )"
DEPEND="${RDEPEND}
virtual/pkgconfig
sys-devel/libtool"
src_prepare() {
append-cflags -std=gnu11
append-cxxflags -std=gnu++11
eapply -p0 "${FILESDIR}"/$PN-3.5-tinfo.patch \
"${FILESDIR}"/$PN-tests.patch
eapply_user
eautoreconf
}
src_configure() {
econf --libdir=/usr/$(get_libdir) \
$(use_enable pulseaudio ) \
$(use_enable alsa ) \
$(use_enable ncurses cwcp ) \
$(use_enable qt5 xcwcp ) \
--disable-static
}
src_install() {
emake DESTDIR="${D}" install
find "${D}" -name '*.la' -type f -delete || die
dodoc ChangeLog NEWS README
if ! use suid ; then
fperms 711 /usr/bin/cw
if use ncurses ; then
fperms 711 /usr/bin/cwcp
fi
if use qt5 ; then
fperms 711 /usr/bin/xcwcp
fi
fi
}
pkg_postinst() {
if use suid ; then
ewarn "You have choosen to install 'cw', 'cwcp' and 'xcwcp' setuid"
ewarn "by setting USE=suid."
ewarn "Be aware that this is a security risk and not recommended."
ewarn ""
ewarn "These files do only need root access if you want to use the"
ewarn "PC speaker for morse sidetone output. You can alternativly"
ewarn "drop USE=suid and use sudo."
else
elog "Be aware that 'cw', 'cwcp' and 'xcwcp' needs root access if"
elog "you want to use the PC speaker for morse sidetone output."
elog "You can call the programs via sudo for that (see 'man sudo')."
fi
}
|