Magellan Linux

Contents of /branches/R11-stable/extras/tigervnc/tigervnc-1.2.80_svn5043-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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