1 |
# Copyright 1999-2009 Gentoo Foundation |
2 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
# $Header: /var/cvsroot/gentoo-x86/net-misc/tightvnc/tightvnc-1.3.9-r2.ebuild,v 1.10 2009/02/21 10:56:46 armin76 Exp $ |
4 |
|
5 |
inherit eutils toolchain-funcs java-pkg-opt-2 |
6 |
|
7 |
IUSE="java tcpd server" |
8 |
|
9 |
S="${WORKDIR}/vnc_unixsrc" |
10 |
DESCRIPTION="A great client/server software package allowing remote network access to graphical desktops." |
11 |
SRC_URI="mirror://sourceforge/vnc-tight/${P}_unixsrc.tar.bz2 |
12 |
java? ( mirror://sourceforge/vnc-tight/${P}_javasrc.tar.gz )" |
13 |
HOMEPAGE="http://www.tightvnc.com/" |
14 |
|
15 |
KEYWORDS="alpha amd64 arm hppa ~mips ppc sh sparc x86 ~x86-fbsd" |
16 |
LICENSE="GPL-2" |
17 |
SLOT="0" |
18 |
|
19 |
CDEPEND="~media-libs/jpeg-6b |
20 |
server? ( |
21 |
media-fonts/font-misc-misc |
22 |
media-fonts/font-cursor-misc |
23 |
x11-apps/rgb |
24 |
x11-apps/xauth |
25 |
x11-apps/xsetroot |
26 |
) |
27 |
x11-libs/libX11 |
28 |
x11-libs/libXaw |
29 |
x11-libs/libXmu |
30 |
x11-libs/libXp |
31 |
x11-libs/libXt |
32 |
tcpd? ( >=sys-apps/tcp-wrappers-7.6-r2 )" |
33 |
RDEPEND="${CDEPEND} |
34 |
java? ( >=virtual/jre-1.4 )" |
35 |
DEPEND="${CDEPEND} |
36 |
java? ( >=virtual/jdk-1.4 ) |
37 |
x11-proto/xextproto |
38 |
x11-proto/xproto |
39 |
server? ( |
40 |
x11-proto/inputproto |
41 |
x11-proto/kbproto |
42 |
x11-proto/printproto |
43 |
) |
44 |
>=x11-misc/imake-1 |
45 |
x11-misc/gccmakedep |
46 |
x11-misc/makedepend |
47 |
!net-misc/vnc" |
48 |
|
49 |
src_unpack() { |
50 |
|
51 |
if ! use server; |
52 |
then |
53 |
echo |
54 |
einfo "The 'server' USE flag will build tightvnc's server." |
55 |
einfo "If '-server' is chosen only the client is built to save space." |
56 |
einfo "Stop the build now if you need to add 'server' to USE flags.\n" |
57 |
ebeep |
58 |
epause 5 |
59 |
fi |
60 |
|
61 |
unpack ${A} |
62 |
cd "${S}" |
63 |
|
64 |
epatch "${FILESDIR}/${PN}-1.3.8-pathfixes.patch" # fixes bug 78385 and 146099 |
65 |
epatch "${FILESDIR}/${PN}-1.3.8-imake-tmpdir.patch" # fixes bug 23483 |
66 |
epatch "${FILESDIR}/${PN}-1.3.8-darwin.patch" # fixes bug 89908 |
67 |
epatch "${FILESDIR}/${PN}-1.3.8-mips.patch" |
68 |
epatch "${FILESDIR}"/server-CVE-2007-1003.patch |
69 |
epatch "${FILESDIR}"/server-CVE-2007-1351-1352.patch |
70 |
epatch "${FILESDIR}"/${PV}-fbsd.patch |
71 |
epatch "${FILESDIR}"/${PV}-arm.patch |
72 |
epatch "${FILESDIR}"/${PV}-sh.patch |
73 |
|
74 |
if use java; then |
75 |
cd "${WORKDIR}" |
76 |
epatch "${FILESDIR}/${P}-java-build.patch" |
77 |
fi |
78 |
} |
79 |
|
80 |
src_compile() { |
81 |
xmkmf -a || die "xmkmf failed" |
82 |
|
83 |
make CDEBUGFLAGS="${CFLAGS}" World || die |
84 |
|
85 |
if use server; then |
86 |
cd Xvnc && ./configure || die "Configure failed." |
87 |
if use tcpd; then |
88 |
local myextra="-lwrap" |
89 |
make EXTRA_LIBRARIES="${myextra}" \ |
90 |
CDEBUGFLAGS="${CFLAGS}" \ |
91 |
EXTRA_DEFINES="-DUSE_LIBWRAP=1" || die |
92 |
else |
93 |
make CDEBUGFLAGS="${CFLAGS}" || die |
94 |
fi |
95 |
fi |
96 |
if use java; then |
97 |
cd "${WORKDIR}/vnc_javasrc" || die |
98 |
make JAVACFLAGS="$(java-pkg_javac-args)" all || die |
99 |
fi |
100 |
|
101 |
} |
102 |
|
103 |
src_install() { |
104 |
# the web based interface and the java viewer need the java class files |
105 |
if use java; then |
106 |
java-pkg_newjar "${WORKDIR}/vnc_javasrc/VncViewer.jar" |
107 |
java-pkg_dolauncher "${PN}-java" |
108 |
fi |
109 |
|
110 |
dodir /usr/share/man/man1 /usr/bin |
111 |
./vncinstall "${D}"/usr/bin "${D}"/usr/share/man || die "vncinstall failed" |
112 |
|
113 |
if use server; then |
114 |
newconfd "${FILESDIR}"/tightvnc.confd vnc |
115 |
newinitd "${FILESDIR}"/tightvnc.initd vnc |
116 |
else |
117 |
rm -f "${D}"/usr/bin/vncserver |
118 |
rm -f "${D}"/usr/share/man/man1/{Xvnc,vncserver}* |
119 |
fi |
120 |
|
121 |
doicon "${FILESDIR}"/vncviewer.png |
122 |
make_desktop_entry vncviewer vncviewer vncviewer Network |
123 |
|
124 |
dodoc ChangeLog README WhatsNew |
125 |
use java && dodoc "${FILESDIR}"/README.JavaViewer |
126 |
newdoc vncviewer/README README.vncviewer |
127 |
} |