Contents of /trunk/extras/tigervnc/tigervnc-1.8.0-r1.smage2
Parent Directory | Revision Log
Revision 29256 -
(show annotations)
(download)
Wed May 31 12:37:41 2017 UTC (7 years ago) by niro
File size: 9383 byte(s)
Wed May 31 12:37:41 2017 UTC (7 years ago) by niro
File size: 9383 byte(s)
auto added: ver bump to 1.8.0-r1
1 | # $Id$ |
2 | |
3 | PNAME="tigervnc" |
4 | PVER="1.8.0" |
5 | PBUILD="r1" |
6 | |
7 | # enable java=1, disable java=0 |
8 | ENABLE_JAVA_APPLET=1 |
9 | |
10 | SPLIT_PACKAGES="tigervnc-common tigervnc-server tigervnc-xserver-module" |
11 | if [[ ${ENABLE_JAVA_APPLET} = 1 ]] |
12 | then |
13 | SPLIT_PACKAGES+=" tigervnc-server-applet" |
14 | fi |
15 | SPLIT_PACKAGES+=" tigervnc" |
16 | |
17 | PCAT="net-misc" |
18 | HOMEPAGE="http://www.tigervnc.com/" |
19 | |
20 | SRCFILE="v${PVER}.tar.gz" |
21 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
22 | |
23 | XORG_PVER="1.19.3" |
24 | XORG="xorg-server-${XORG_PVER}.tar.bz2" |
25 | XORGSDIR="${BUILDDIR}/xorg-server-${XORG_PVER}" |
26 | XORGDDIR="${SRCDIR}/unix/xserver" |
27 | |
28 | COMMON_DEPEND=">= x11-libs/libX11-1.6 |
29 | >= x11-libs/libXext-1.3 |
30 | >= x11-libs/libSM-1.2 |
31 | >= x11-libs/libXtst-1.2 |
32 | >= x11-libs/libXi-1.7 |
33 | >= x11-libs/fltk-1.3 |
34 | >= sys-libs/zlib-1.2.5 |
35 | >= sys-libs/libstdc++-6.3 |
36 | >= virtual/libjpeg |
37 | >= app-crypt/gnutls-3.5" |
38 | |
39 | COMMON_FONTS_DEPEND=">= media-fonts/font-adobe-100dpi-1 |
40 | >= media-fonts/font-adobe-75dpi-1 |
41 | >= media-fonts/font-alias-1 |
42 | >= media-fonts/font-cursor-misc-1 |
43 | >= media-fonts/font-misc-misc-1" |
44 | |
45 | SERVER_DEPEND=">= x11-libs/libXfont-1.4 |
46 | >= x11-libs/libxkbfile-1.0.8 |
47 | >= x11-libs/pixman-0.34 |
48 | >= media-libs/freetype-2.7 |
49 | >= x11-apps/xauth-1.0.7 |
50 | >= x11-apps/xsetroot-1.1 |
51 | >= x11-misc/xkeyboard-config-2.8 |
52 | >= sys-fs/udev-230" |
53 | |
54 | MODULE_DEPEND=">= virtual/X-ABI-EXTENSION-10.0 |
55 | >= virtual/X-ABI-VIDEODRV-23 |
56 | >= virtual/X-ABI-XINPUT-24.1" |
57 | |
58 | if [[ ${ENABLE_JAVA_APPLET} = 1 ]] |
59 | then |
60 | APPLET_DEPEND=">= virtual/java" |
61 | else |
62 | APPLET_DEPEND="" |
63 | fi |
64 | |
65 | SDEPEND="${COMMON_DEPEND} |
66 | ${COMMON_FONTS_DEPEND} |
67 | ${SERVER_DEPEND} |
68 | ${MODULE_DEPEND} |
69 | ${APPLET_DEPEND} |
70 | >= dev-util/desktop-file-utils-0.15 |
71 | >= dev-lang/nasm-2 |
72 | == x11-proto/xorg-protos-7.7.${XORG_PVER} |
73 | >= x11-libs/libpciaccess-0.13 |
74 | >= media-fonts/font-util-1.3 |
75 | >= virtual/java-jdk |
76 | >= gnome-base/librsvg-2.40 |
77 | >= media-gfx/imagemagick-6.8" |
78 | |
79 | msetfeature "!check" |
80 | sminclude cmake xorg xdg mtools cleanutils |
81 | |
82 | SRC_URI=( |
83 | https://github.com/TigerVNC/${PNAME}/archive/${SRCFILE} |
84 | mirror://${PNAME}/${SRCFILE} |
85 | http://ftp.x.org/pub/individual/xserver/${XORG} |
86 | mirror://xorg-server/${XORG} |
87 | mirror://${PNAME}/tigervnc_48.png |
88 | mirror://${PNAME}/${PNAME}-1.1.0-gethomedir.patch |
89 | mirror://${PNAME}/${PNAME}-1.3.0-shebang.patch |
90 | mirror://${PNAME}/${PNAME}-1.4.2-getmaster.patch |
91 | mirror://${PNAME}/${PNAME}-1.7.0-xorg119.patch |
92 | mirror://${PNAME}/${PNAME}-1.7.0-xserver119.patch |
93 | ) |
94 | |
95 | UP2SEPERATOR="v" |
96 | UP2DATE="updatecmd https://github.com/TigerVNC/${PNAME}/releases | highesttarball gz" |
97 | |
98 | split_info_tigervnc-common() |
99 | { |
100 | DESCRIPTION="Common TigerVNC libs and utils." |
101 | DEPEND="${COMMON_DEPEND}" |
102 | PROVIDE="virtual/vnc-client" |
103 | } |
104 | |
105 | split_info_tigervnc-server() |
106 | { |
107 | DESCRIPTION="TigerVNC VNC server." |
108 | DEPEND="== net-misc/tigervnc-common-${PVER} |
109 | ${COMMON_DEPEND} |
110 | ${COMMON_FONTS_DEPEND} |
111 | ${SERVER_DEPEND}" |
112 | PROVIDE="virtual/vnc" |
113 | } |
114 | |
115 | split_info_tigervnc-xserver-module() |
116 | { |
117 | DESCRIPTION="TigerVNC Xorg server module." |
118 | DEPEND="== net-misc/tigervnc-common-${PVER} |
119 | ${COMMON_FONTS_DEPEND} |
120 | ${MODULE_DEPEND}" |
121 | PROVIDE="virtual/vnc-x11" |
122 | } |
123 | |
124 | split_info_tigervnc-server-applet() |
125 | { |
126 | DESCRIPTION="TigerVNC VNC server." |
127 | DEPEND="${APPLET_DEPEND}" |
128 | PROVIDE="virtual/vnc-java" |
129 | } |
130 | |
131 | split_info_tigervnc() |
132 | { |
133 | DESCRIPTION="TigerVNC is a suite of VNC servers and clients that have a focus on performance and remote display functionality." |
134 | DEPEND="== net-misc/tigervnc-common-${PVER} |
135 | == net-misc/tigervnc-server-${PVER} |
136 | == net-misc/tigervnc-xserver-module-${PVER}" |
137 | if [[ ${ENABLE_JAVA_APPLET} = 1 ]] |
138 | then |
139 | DEPEND="${DEPEND} |
140 | == net-misc/tigervnc-server-applet-${PVER}" |
141 | fi |
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 needs a suffix |
160 | tar xvf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${BUILDDIR} || die |
161 | munpack ${XORG} || die |
162 | cp -r ${XORGSDIR}/* ${XORGDDIR} || die |
163 | cd ${SRCDIR} |
164 | |
165 | # patchwork |
166 | # create X server cookie via mcookie |
167 | mpatch ${PNAME}-1.1.0-gethomedir.patch || die |
168 | |
169 | # libvnc.so: don't use unexported GetMaster function |
170 | #mpatch ${PNAME}-1.4.2-getmaster.patch || die |
171 | |
172 | # don't use shebang in vncserver script. |
173 | mpatch ${PNAME}-1.3.0-shebang.patch || die |
174 | |
175 | # xorg-1.19 support patch |
176 | mpatch ${PNAME}-1.7.0-xorg119.patch || die |
177 | |
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 | mpatch -Np1 ${PNAME}-1.7.0-xserver119.patch || die |
184 | |
185 | # reconfigure xorg |
186 | cd ${XORGDDIR} |
187 | mautoreconf || die |
188 | } |
189 | |
190 | src_compile() |
191 | { |
192 | cd ${SRCDIR} |
193 | cmake_configure || die |
194 | mmake || die |
195 | |
196 | # build the x11 module |
197 | cd ${XORGDDIR} |
198 | mconfigure \ |
199 | --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \ |
200 | --with-fontdir=/usr/share/fonts \ |
201 | --with-rgb-path=/usr/share/X11/rgb.txt \ |
202 | --with-xkb-output=/usr/share/X11/xkb \ |
203 | --with-module-dir=/usr/$(mlibdir)/xorg/modules \ |
204 | --with-dri-driver-path=/usr/$(mlibdir)/dri \ |
205 | --with-pic \ |
206 | --without-dtrace \ |
207 | --disable-xorg \ |
208 | --disable-composite \ |
209 | --enable-xtrap \ |
210 | --disable-xinerama \ |
211 | --enable-glx \ |
212 | --disable-xnest \ |
213 | --disable-xvfb \ |
214 | --disable-dmx \ |
215 | --disable-xwin \ |
216 | --disable-xephyr \ |
217 | --disable-kdrive \ |
218 | --disable-static \ |
219 | --disable-dri \ |
220 | --enable-dri2 \ |
221 | --disable-dri3 \ |
222 | --disable-present \ |
223 | --disable-config-dbus \ |
224 | --disable-config-hal \ |
225 | --disable-config-udev \ |
226 | --enable-install-libxf86config \ |
227 | --disable-unit-tests \ |
228 | --disable-devel-docs \ |
229 | --disable-selective-werror \ |
230 | || die |
231 | |
232 | mmake || die |
233 | |
234 | # build icons |
235 | cd ${SRCDIR}/media |
236 | mmake -j1 || die |
237 | |
238 | if [[ ${ENABLE_JAVA_APPLET} = 1 ]] |
239 | then |
240 | # build the java applet |
241 | cd ${SRCDIR}/java |
242 | |
243 | # cmake_configure does not work because of LIBDIR definition |
244 | cmake \ |
245 | -DCMAKE_VERBOSE_MAKEFILE=ON \ |
246 | -DCMAKE_BUILD_TYPE=Release \ |
247 | -DCMAKE_INSTALL_PREFIX=/usr \ |
248 | ${SRCDIR}/java \ |
249 | || die |
250 | |
251 | mmake -j1 || die |
252 | fi |
253 | } |
254 | |
255 | src_install_tigervnc-common() |
256 | { |
257 | cd ${SRCDIR} |
258 | mmake DESTDIR=${BINDIR} install || die |
259 | |
260 | # cleanup |
261 | zapmost ${BINDIR} usr/bin/vncpasswd usr/bin/vncviewer usr/share/locale || die |
262 | |
263 | # install man pages |
264 | cp ${SRCDIR}/vncviewer/vncviewer.{man,1} || die |
265 | cp ${SRCDIR}/unix/vncpasswd/vncpasswd.{man,1} || die |
266 | minstallman ${SRCDIR}/vncviewer/vncviewer.1 || die |
267 | minstallman ${SRCDIR}/unix/vncpasswd/vncpasswd.1 || die |
268 | |
269 | # desktop icon |
270 | minstallpixmap media/icons/tigervnc_48.png vncviewer.png || die |
271 | minstall_desktop_icon \ |
272 | --name "TigerVNC Viewer" \ |
273 | --file "vncviewer" \ |
274 | --comment "Connect to VNC server and display remote desktop" \ |
275 | --exec /usr/bin/vncviewer \ |
276 | --icon vncviewer.png \ |
277 | --categories "Application,Network" \ |
278 | || die |
279 | |
280 | # docs |
281 | minstalldocs README LICENCE.TXT || die |
282 | } |
283 | |
284 | src_install_tigervnc-server() |
285 | { |
286 | cd ${SRCDIR} |
287 | mmake DESTDIR=${BINDIR} install || die |
288 | |
289 | # install server module and binaries |
290 | cd ${XORGDDIR}/hw/vnc |
291 | mmake DESTDIR=${BINDIR} install || die |
292 | |
293 | # cleanup |
294 | rm ${BINDIR}/usr/bin/vncpasswd || die |
295 | rm ${BINDIR}/usr/bin/vncviewer || die |
296 | rm -r ${BINDIR}/usr/share/man || die |
297 | rm -r ${BINDIR}/usr/$(mlibdir) || die |
298 | |
299 | # install man pages |
300 | cp ${SRCDIR}/unix/vncconfig/vncconfig.{man,1} || die |
301 | cp ${SRCDIR}/unix/vncserver.{man,1} || die |
302 | cp ${SRCDIR}/unix/x0vncserver/x0vncserver.{man,1} || die |
303 | cp ${XORGDDIR}/hw/vnc/Xvnc.{man,1} || die |
304 | minstallman ${SRCDIR}/unix/vncconfig/vncconfig.1 || die |
305 | minstallman ${SRCDIR}/unix/vncserver.1 || die |
306 | minstallman ${SRCDIR}/unix/x0vncserver/x0vncserver.1 || die |
307 | minstallman ${XORGDDIR}/hw/vnc/Xvnc.1 || die |
308 | } |
309 | |
310 | src_install_tigervnc-xserver-module() |
311 | { |
312 | # install server module and binaries |
313 | cd ${XORGDDIR}/hw/vnc |
314 | mmake DESTDIR=${BINDIR} install || die |
315 | |
316 | # cleanup |
317 | zapmost ${BINDIR} usr/$(mlibdir) || die |
318 | |
319 | # not needed |
320 | rm ${BINDIR}/usr/$(mlibdir)/xorg/modules/extensions/libvnc.la || die |
321 | |
322 | # create a example config |
323 | minstalldir /etc/X11/xorg.conf.d || die |
324 | MCONFIG=/etc/X11/xorg.conf.d/20-vnc.conf |
325 | mclearconfig |
326 | maddconfig '# Example vnc module configuration' |
327 | maddconfig '# Uncomment these entries and set a password with the vncpasswd program' |
328 | maddconfig |
329 | maddconfig 'Section "Module"' |
330 | maddconfig ' Load "vnc"' |
331 | maddconfig 'EndSection' |
332 | maddconfig |
333 | maddconfig 'Section "Screen"' |
334 | maddconfig ' Identifier "Screen0"' |
335 | maddconfig ' Option "SecurityTypes" "VncAuth"' |
336 | maddconfig ' Option "UserPasswdVerifier" "VncAuth"' |
337 | maddconfig ' Option "PasswordFile" "/root/.vnc/passwd"' |
338 | maddconfig 'EndSection' |
339 | } |
340 | |
341 | src_install_tigervnc-server-applet() |
342 | { |
343 | cd ${SRCDIR}/java |
344 | minstalldir /usr/share/vnc/classes || die |
345 | minstallexec VncViewer.jar /usr/share/vnc/classes || die |
346 | minstallfile com/tigervnc/vncviewer/index.vnc /usr/share/vnc/classes || die |
347 | } |
348 | |
349 | postinstall_tigervnc-xserver-module() |
350 | { |
351 | echo |
352 | echo 'Add following to /etc/X11/xorg.conf.d/20-vnc.conf for native X display support:' |
353 | echo ' Section "Module"' |
354 | echo ' ...' |
355 | echo ' Load "vnc"' |
356 | echo ' EndSection' |
357 | echo |
358 | echo 'To enable VNC password authentification use the vncpasswd program:' |
359 | echo ' "vncpasswd"' |
360 | echo |
361 | echo 'You will also need to tell the VNC module where the password is stored:' |
362 | echo ' Section "Screen"' |
363 | echo ' ...' |
364 | echo ' Option "SecurityTypes" "VncAuth"' |
365 | echo ' Option "UserPasswdVerifier" "VncAuth"' |
366 | echo ' Option "PasswordFile" "/root/.vnc/passwd"' |
367 | echo ' EndSection' |
368 | echo |
369 | } |