Magellan Linux

Contents of /branches/magellan-next/extras/tigervnc/tigervnc-1.1.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9206 - (show annotations) (download)
Tue Nov 8 19:11:56 2011 UTC (12 years, 6 months ago) by niro
File size: 9224 byte(s)
-fixed SRC_URI
1 # $Id$
2
3 PNAME="tigervnc"
4 PVER="1.1.0"
5 PBUILD="r1"
6
7 PCATEGORIE="net-misc"
8
9 DESCRIPTION="TigerVNC is a suite of VNC servers and clients that have a focus on performance and remote display functionality."
10 HOMEPAGE="http://www.tigervnc.com/"
11
12 SRCFILE="${PNAME}-${PVER}.tar.gz"
13 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
14
15 XORG_PVER="1.11.2"
16 XORG="xorg-server-${XORG_PVER}.tar.bz2"
17 XORGSDIR="${BUILDDIR}/xorg-server-${XORG_PVER}"
18 XORGDDIR="${SRCDIR}/unix/xserver"
19
20 COMMON_DEPEND=">= x11-libs/libX11-1.4
21 >= x11-libs/libXext-1.3
22 >= x11-libs/libSM-1.2
23 >= x11-libs/libXtst-1.2
24 >= x11-libs/libXi-1.4
25 >= sys-libs/zlib-1.2.5
26 >= app-crypt/gnutls-2.8"
27
28 COMMON_FONTS_DEPEND=">= media-fonts/font-adobe-100dpi-1
29 >= media-fonts/font-adobe-75dpi-1
30 >= media-fonts/font-alias-1
31 >= media-fonts/font-cursor-misc-1
32 >= media-fonts/font-misc-misc-1"
33
34 SERVER_DEPEND=">= x11-libs/libXfont-1.4.0
35 >= x11-libs/libxkbfile-1.0.7
36 >= x11-libs/pixman-0.24
37 >= media-libs/freetype-2.4
38 >= x11-apps/xauth-1.0.6
39 >= x11-apps/xsetroot-1.1
40 >= x11-misc/xkeyboard-config-2.4
41 >= sys-fs/udev-171"
42
43 MODULE_DEPEND="== x11-base/xorg-server-${XORG_PVER}"
44
45 APPLET_DEPEND=">= virtual/java"
46
47 SDEPEND="${COMMON_DEPEND}
48 ${COMMON_FONTS_DEPEND}
49 ${SERVER_DEPEND}
50 ${MODULE_DEPEND}
51 ${APPLET_DEPEND}
52 >= dev-util/desktop-file-utils-0.15
53 >= dev-lang/nasm-2
54 >= x11-proto/xextproto-7.2
55 >= x11-proto/inputproto-2
56 >= x11-proto/bigreqsproto-1.1
57 >= x11-proto/compositeproto-0.4
58 >= x11-proto/damageproto-1.2
59 >= x11-proto/dri2proto-2.3
60 >= x11-proto/fixesproto-5
61 >= x11-proto/fontsproto-2.1
62 >= x11-proto/randrproto-1.3
63 >= x11-proto/resourceproto-1.2
64 >= x11-proto/scrnsaverproto-1.2
65 >= x11-proto/videoproto-2.3
66 >= x11-proto/xcmiscproto-1.2
67 >= x11-proto/xineramaproto-1.2
68 >= x11-proto/xf86bigfontproto-1.2
69 >= x11-proto/xf86dgaproto-2.1
70 >= x11-proto/xf86driproto-2.1
71 >= x11-proto/xf86miscproto-0.9.3
72 >= x11-proto/xf86vidmodeproto-2.3
73 >= x11-proto/glproto-1.4.12
74 >= x11-proto/renderproto-0.11
75 >= x11-libs/libpciaccess-0.12
76 >= virtual/java-jdk"
77
78 sminclude xorg xdg mtools cleanutils
79
80 SPLIT_PACKAGES="tigervnc-common tigervnc-server tigervnc-xserver-module tigervnc-server-applet tigervnc"
81
82 SRC_URI=(
83 http://mesh.dl.sourceforge.net/project/${PNAME}/${PNAME}/${PVER}/${SRCFILE}
84 sourceforge://${PNAME}/${SRCFILE}
85 mirror://${PNAME}/${SRCFILE}
86 http://ftp.x.org/pub/individual/xserver/${XORG}
87 mirror://xorg-server/${XORG}
88 mirror://${PNAME}/tigervnc_48.png
89 mirror://${PNAME}/${PNAME}-1.0.90-102434.patch
90 mirror://${PNAME}/${PNAME}-1.0.90-cookie.patch
91 mirror://${PNAME}/${PNAME}-0.0.90-viewer-reparent.patch
92 mirror://${PNAME}/${PNAME}-1.0.90-ldnow.patch
93 mirror://${PNAME}/${PNAME}-${PVER}-gethomedir.patch
94 mirror://${PNAME}/${PNAME}-${PVER}-rh692048.patch
95 mirror://${PNAME}/${PNAME}-${PVER}-xserver110.patch
96 mirror://${PNAME}/${PNAME}-${PVER}-xserver111.patch
97 )
98
99 UP2DATE="updatecmd_sourceforge ${PNAME}"
100
101 split_info_tigervnc-common()
102 {
103 DESCRIPTION="Common TigerVNC libs and utils."
104 DEPEND="${COMMON_DEPEND}"
105 }
106
107 split_info_tigervnc-server()
108 {
109 DESCRIPTION="TigerVNC VNC server."
110 DEPEND="== net-misc/tigervnc-common-${PVER}
111 ${COMMON_DEPEND}
112 ${COMMON_FONTS_DEPEND}
113 ${SERVER_DEPEND}"
114 }
115
116 split_info_tigervnc-xserver-module()
117 {
118 DESCRIPTION="TigerVNC Xorg server module."
119 DEPEND="== net-misc/tigervnc-common-${PVER}
120 ${COMMON_FONTS_DEPEND}
121 ${MODULE_DEPEND}"
122 }
123
124 split_info_tigervnc-server-applet()
125 {
126 DESCRIPTION="TigerVNC VNC server."
127 DEPEND="${APPLET_DEPEND}"
128 }
129
130 split_info_tigervnc()
131 {
132 DESCRIPTION="TigerVNC is a suite of VNC servers and clients that have a focus on performance and remote display functionality."
133 DEPEND="== net-misc/tigervnc-common-${PVER}
134 == net-misc/tigervnc-server-${PVER}
135 == net-misc/tigervnc-xserver-module-${PVER}
136 == net-misc/tigervnc-server-applet-${PVER}"
137
138 PKGTYPE="virtual"
139 NOPKGBUILD="true"
140
141 # drop everything we don't need in the meta package:
142 INHERITS=""
143 SPECIAL_VARS=""
144 SPECIAL_FUNCTIONS=""
145 SDEPEND=""
146 PROVIDE=""
147 unset -f preinstall
148 unset -f postinstall
149 unset -f preremove
150 unset -f postremove
151 }
152
153 src_prepare()
154 {
155 munpack ${SRCFILE} || die
156 munpack ${XORG} || die
157 cp -r ${XORGSDIR}/* ${XORGDDIR} || die
158 cd ${SRCDIR}
159
160 # patchwork
161 # force vncviewer to read password from stdin
162 mpatch ${PNAME}-1.0.90-102434.patch || die
163 # create X server cookie via mcookie
164 mpatch ${PNAME}-1.0.90-cookie.patch || die
165 # add reparent support for x window
166 mpatch ${PNAME}-0.0.90-viewer-reparent.patch || die
167 # link libvnc.so "now" to catch "undefined symbol" errors during Xorg startup
168 mpatch ${PNAME}-1.0.90-ldnow.patch || die
169
170 mpatch ${PNAME}-${PVER}-gethomedir.patch || die
171 mpatch ${PNAME}-${PVER}-rh692048.patch || die
172 cd ${XORGDDIR}
173 mpatch ${PNAME}-${PVER}-xserver110.patch || die
174 cd ${SRCDIR}
175 mpatch ${PNAME}-${PVER}-xserver111.patch || die
176
177 # applied above
178 # # apply the included xorg patch
179 # cd ${XORGDDIR}
180 # local xorg_patch_ver="${XORG_PVER%.*}"
181 # xorg_patch_ver="${xorg_patch_ver//.}"
182 # patch -Np1 -i ../xserver${xorg_patch_ver}.patch || die
183
184 # reconfigure everything
185 cd ${XORGDDIR}
186 libtoolize --copy --force || die
187 autoreconf --verbose --install --force || die
188
189 cd ${SRCDIR}
190 libtoolize --copy --force || die
191 autoreconf --verbose --install --force || die
192 }
193
194 src_compile()
195 {
196 cd ${SRCDIR}
197 mconfigure --disable-static || die
198 mmake || die
199
200 # fix build issues
201 export CFLAGS="$(pkg-config --cflags libdrm)"
202
203 # build the x11 module
204 cd ${XORGDDIR}
205 mconfigure \
206 --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
207 --with-fontdir=/usr/share/fonts \
208 --with-rgb-path=/usr/share/X11/rgb.txt \
209 --with-xkb-output=/usr/share/X11/xkb \
210 --with-module-dir=/usr/$(mlibdir)/xorg/modules \
211 --with-dri-driver-path=/usr/$(mlibdir)/dri \
212 --with-pic \
213 --without-dtrace \
214 --disable-xorg \
215 --disable-composite \
216 --enable-xtrap \
217 --enable-glx \
218 --disable-xnest \
219 --disable-xvfb \
220 --disable-dmx \
221 --disable-xwin \
222 --disable-xephyr \
223 --disable-kdrive \
224 --disable-xorgcfg \
225 --disable-xprint \
226 --disable-static \
227 --disable-xevie \
228 --disable-dri \
229 --enable-dri2 \
230 --disable-config-dbus \
231 --disable-config-hal \
232 --disable-config-udev \
233 --enable-install-libxf86config \
234 --disable-unit-tests \
235 || die
236
237 mmake || die
238
239 # build icons
240 cd ${SRCDIR}/media
241 mmake -j1 || die
242
243 # build the java applet
244 cd ${SRCDIR}/java/src/com/tigervnc/vncviewer
245 mmake -j1 || die
246 }
247
248 src_install_tigervnc-common()
249 {
250 cd ${SRCDIR}
251 mmake DESTDIR=${BINDIR} install || die
252
253 # cleanup
254 zapmost ${BINDIR} usr/bin/vncpasswd usr/bin/vncviewer usr/share/locale || die
255
256 # install man pages
257 cp ${SRCDIR}/unix/vncviewer/vncviewer.{man,1} || die
258 cp ${SRCDIR}/unix/vncpasswd/vncpasswd.{man,1} || die
259 minstallman ${SRCDIR}/unix/vncviewer/vncviewer.1 || die
260 minstallman ${SRCDIR}/unix/vncpasswd/vncpasswd.1 || die
261
262 # desktop icon
263 minstallpixmap media/icons/tigervnc_48.png vncviewer.png || die
264 minstall_desktop_icon \
265 --name "TigerVNC Viewer" \
266 --file "vncviewer" \
267 --comment "Connect to VNC server and display remote desktop" \
268 --exec /usr/bin/vncviewer \
269 --icon vncviewer.png \
270 --categories "Application,Network" \
271 || die
272
273 # docs
274 minstalldocs README LICENCE.TXT || die
275 }
276
277 src_install_tigervnc-server()
278 {
279 cd ${SRCDIR}
280 mmake DESTDIR=${BINDIR} install || die
281
282 # install server module and binaries
283 cd ${XORGDDIR}/hw/vnc
284 mmake DESTDIR=${BINDIR} install || die
285
286 # cleanup
287 rm ${BINDIR}/usr/bin/vncpasswd || die
288 rm ${BINDIR}/usr/bin/vncviewer || die
289 rm -r ${BINDIR}/usr/share/man || die
290 rm -r ${BINDIR}/usr/$(mlibdir) || die
291
292 # install man pages
293 cp ${SRCDIR}/unix/vncconfig/vncconfig.{man,1} || die
294 cp ${SRCDIR}/unix/vncserver.{man,1} || die
295 cp ${SRCDIR}/unix/x0vncserver/x0vncserver.{man,1} || die
296 cp ${XORGDDIR}/hw/vnc/Xvnc.{man,1} || die
297 minstallman ${SRCDIR}/unix/vncconfig/vncconfig.1 || die
298 minstallman ${SRCDIR}/unix/vncserver.1 || die
299 minstallman ${SRCDIR}/unix/x0vncserver/x0vncserver.1 || die
300 minstallman ${XORGDDIR}/hw/vnc/Xvnc.1 || die
301 }
302
303 src_install_tigervnc-xserver-module()
304 {
305 # install server module and binaries
306 cd ${XORGDDIR}/hw/vnc
307 mmake DESTDIR=${BINDIR} install || die
308
309 # cleanup
310 zapmost ${BINDIR} usr/$(mlibdir) || die
311
312 # not needed
313 rm ${BINDIR}/usr/$(mlibdir)/xorg/modules/extensions/libvnc.la || die
314 }
315
316 src_install_tightvnc-server-applet()
317 {
318 cd ${SRCDIR}/java/src/com/tigervnc/vncviewer
319 minstalldir ${BINDIR}/usr/share/vnc/classes || die
320 minstallexec VncViewer.jar ${BINDIR}/usr/share/vnc/classes || die
321 minstallfile index.vnc ${BINDIR}/usr/share/vnc/classes || die
322 }
323
324 postinstall_tigervnc-xserver-module()
325 {
326 echo
327 echo 'Add following to /etc/X11/xorg.conf for native X display support:'
328 echo ' Section "Module"'
329 echo ' ...'
330 echo ' Load "vnc"'
331 echo ' EndSection'
332 echo
333 echo 'To enable VNC password authentification use the vncpasswd program:'
334 echo ' 'vncpasswd''
335 echo
336 echo 'You will also need to tell the VNC module where the password is stored:'
337 echo ' Section "Screen"'
338 echo ' ...'
339 echo ' Option "SecurityTypes" "VncAuth"'
340 echo ' Option "UserPasswdVerifier" "VncAuth"'
341 echo ' Option "PasswordFile" "/root/.vnc/passwd"'
342 echo ' EndSection'
343 echo
344 }