summaryrefslogtreecommitdiff
blob: bc12360305eec8debba6fbbf5e13107a7484e79a (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
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-libs/slang/slang-1.4.9-r2.ebuild,v 1.20 2008/02/09 06:38:09 drac Exp $

inherit eutils toolchain-funcs

# Patches are taken from http://www.suse.de/~nadvornik/slang/
# They were originally Red Hat and Debian's patches

DESCRIPTION="Console display library used by most text viewer"
HOMEPAGE="http://www.s-lang.org/"
SRC_URI="ftp://space.mit.edu/pub/davis/slang/v1.4/${P}.tar.bz2
	mirror://gentoo/${P}-patches.tar.gz"

LICENSE="|| ( GPL-2 Artistic )"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
IUSE="cjk unicode"

DEPEND=">=sys-libs/ncurses-5.2-r2"

src_unpack() {
	unpack ${A}
	cd "${S}"

	epatch "${WORKDIR}"/${P}.patch
	use userland_BSD || epatch "${WORKDIR}"/${P}-fsuid.patch
	epatch "${WORKDIR}"/${P}-autoconf.patch
	if use unicode ; then
		epatch "${WORKDIR}"/slang-debian-utf8.patch
		epatch "${WORKDIR}"/slang-utf8-acs.patch
		epatch "${WORKDIR}"/slang-utf8-fix.patch
		epatch "${WORKDIR}"/slang-utf8-fix2.patch
	fi

	epatch "${FILESDIR}"/${P}-fbsdlink.patch

	if use cjk ; then
		sed -i \
			-e "/SLANG_HAS_KANJI_SUPPORT/s/0/1/" \
			src/sl-feat.h
	fi
}

src_compile() {
	export LANG=C
	export LC_ALL=C
	econf || die "econf failed"
	sed -i -e "/^ELF_LINK/s:gcc:$(tc-getCC):" src/Makefile || die
	emake CC="$(tc-getCC)" ELF_CC="$(tc-getCC)" -j1 all elf || die "make failed"
}

src_install() {
	make install install-elf DESTDIR="${D}" || die "make install failed"
	chmod a+rx "${D}"/usr/$(get_libdir)/libslang*$(get_libname)* || die "chmod failed"

	if use unicode ; then
		for i in "${D}"/usr/$(get_libdir)/libslang-utf8* ; do
			local libslang=${i/${D}/}
			dosym ${libslang} ${libslang/-utf8/}
		done
		dosym /usr/$(get_libdir)/libslang{-utf8,}.a
	fi

	rm -rf "${D}"/usr/doc
	dodoc NEWS README *.txt
	dodoc doc/*.txt doc/internal/*.txt doc/text/*.txt
	dohtml doc/*.html
}