blob: f248d1c472950458c4286771db4cba8b1f3ec2d2 [file] [log] [blame]
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="4"
MY_PV=${PV/_p/ga}
MY_P=${PN}-${MY_PV}
SUB_PV=${PV:0:3}
S=${WORKDIR}
# only the x3270 package installs fonts
FONT_PN="x3270"
FONT_S=${WORKDIR}/${FONT_PN}-${SUB_PV}
inherit eutils font multiprocessing
DESCRIPTION="Complete 3270 access package"
HOMEPAGE="http://x3270.bgp.nu/"
SRC_URI="mirror://sourceforge/x3270/${MY_P}-src.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc s390 sparc x86"
IUSE="cjk doc ncurses ssl tcl X"
RDEPEND="ssl? ( dev-libs/openssl )
X? (
x11-libs/libX11
x11-libs/libXaw
x11-libs/libXmu
x11-libs/libXt
)
ncurses? ( sys-libs/ncurses sys-libs/readline )
tcl? ( dev-lang/tcl:0 )"
DEPEND="${RDEPEND}
X? (
x11-misc/xbitmaps
x11-proto/xproto
app-text/rman
x11-apps/mkfontdir
x11-apps/bdftopcf
)"
suite3270_makelist() {
echo pr3287 s3270 \
$(usex ncurses c3270 '') \
$(usex tcl tcl3270 '') \
$(usex X x3270 '')
}
src_prepare() {
# Some subdirs (like c3270/x3270/s3270) install the same set of data files
# (they have the same contents). Wrap that in a retry to avoid errors.
cat <<-EOF > _install
#!/bin/sh
for n in {1..5}; do
install "\$@" && exit
echo "retrying ..."
done
EOF
chmod a+rx _install
sed -i \
-e "s:@INSTALL@:${S}/_install:" \
*/Makefile.in
sed -i \
-e 's:CPPFunction:rl_completion_func_t:' \
c3270-*/c3270.c || die #503364
}
src_configure() {
local p myconf
# Run configures in parallel!
multijob_init
for p in $(suite3270_makelist) ; do
cd "${S}/${p}-${SUB_PV}"
if [[ ${p} == "x3270" ]] ; then
myconf=(
--without-xmkmf
$(use_with X x)
$(use_with X fontdir "${FONTDIR}")
)
else
myconf=()
fi
multijob_child_init econf \
--cache-file="${S}"/config.cache \
$(use_enable cjk dbcs) \
$(use_enable ssl) \
"${myconf[@]}"
done
sed \
-e "s:@SUBDIRS@:$(suite3270_makelist):" \
-e "s:@VER@:${SUB_PV}:" \
"${FILESDIR}"/Makefile.in > "${S}"/Makefile || die
multijob_finish
}
src_install() {
use X && dodir "${FONTDIR}"
EXTRA_TARGETS='install.man' default
local p
for p in $(suite3270_makelist) ; do
cd "${S}/${p}-${SUB_PV}"
docinto ${p}
local d=$(echo README*)
[[ -n ${d} ]] && dodoc ${d}
use doc && dohtml html/*
done
find "${ED}"/usr/share/man/ -type f -perm /1 -exec chmod a-x {} +
use X && font_src_install
}
pkg_postinst() { use X && font_pkg_postinst ; }
pkg_postrm() { use X && font_pkg_postrm ; }