summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb')
-rw-r--r--meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb130
1 files changed, 130 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb
new file mode 100644
index 000000000..c5268fd2b
--- /dev/null
+++ b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.0.bb
@@ -0,0 +1,130 @@
1DESCRIPTION = "TigerVNC remote display system"
2HOMEPAGE = "http://www.tigervnc.com/"
3LICENSE = "GPL-2.0-or-later"
4SECTION = "x11/utils"
5DEPENDS = "xserver-xorg gnutls jpeg libxtst gettext-native fltk libpam"
6RDEPENDS:${PN} = "coreutils hicolor-icon-theme perl bash xkbcomp"
7
8LIC_FILES_CHKSUM = "file://LICENCE.TXT;md5=75b02c2872421380bbd47781d2bd75d3"
9
10S = "${WORKDIR}/git"
11
12inherit autotools cmake features_check pkgconfig
13
14REQUIRED_DISTRO_FEATURES = "x11 pam"
15
16B = "${S}"
17
18SRCREV = "4a09a96661624dff14662d6e9849e06a6c70ae03"
19
20SRC_URI = "git://github.com/TigerVNC/tigervnc.git;branch=1.14-branch;protocol=https \
21 file://0001-do-not-build-tests-sub-directory.patch \
22 file://0002-add-missing-dynamic-library-to-FLTK_LIBRARIES.patch \
23 file://0003-tigervnc-add-fPIC-option-to-COMPILE_FLAGS.patch \
24"
25
26# Keep sync with xorg-server in oe-core
27XORG_PN ?= "xorg-server"
28XORG_PV ?= "21.1.13"
29SRC_URI += "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${XORG_PV}.tar.xz;name=xorg"
30XORG_S = "${UNPACKDIR}/${XORG_PN}-${XORG_PV}"
31SRC_URI[xorg.sha256sum] = "b45a02d5943f72236a360d3cc97e75134aa4f63039ff88c04686b508a3dc740c"
32
33# It is the directory containing the Xorg source for the
34# machine on which you are building TigerVNC.
35XSERVER_SOURCE_DIR="${S}/unix/xserver"
36
37do_patch[postfuncs] += "do_patch_xserver"
38do_patch_xserver () {
39 subdirs="Xext xkb GL hw/xquartz/bundle hw/xfree86/common man doc"
40 for i in ${subdirs}; do
41 install -d ${XSERVER_SOURCE_DIR}/$i
42 done
43
44 sources="hw/xquartz/bundle/cpprules.in man/Xserver.man doc/smartsched \
45 xserver.ent.in xkb/README.compiled \
46 hw/xfree86/xorgconf.cpp hw/xfree86/Xorg.sh.in"
47 for i in ${sources}; do
48 install -m 0644 ${XORG_S}/$i ${XSERVER_SOURCE_DIR}/$i;
49 done
50
51 cd ${XORG_S}
52 find . -type f | egrep '.*\.(c|h|am|ac|inc|m4|h.in|pc.in|man.pre|pl|txt)$' | \
53 xargs tar cf - | (cd ${XSERVER_SOURCE_DIR} && tar xf -)
54
55 cd ${XSERVER_SOURCE_DIR}
56 xserverpatch="${S}/unix/xserver21.patch"
57 echo "Apply $xserverpatch"
58 patch -p1 -b --suffix .vnc < $xserverpatch
59}
60
61EXTRA_OECONF = "--disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
62 --disable-xwin --disable-xephyr --disable-kdrive --with-pic \
63 --disable-static --disable-xinerama \
64 --with-xkb-output=${localstatedir}/lib/xkb \
65 --disable-glx --disable-dri --disable-dri2 \
66 --disable-config-hal \
67 --disable-config-udev \
68 --without-dtrace \
69 --disable-unit-tests \
70 --disable-devel-docs \
71 --disable-selective-werror \
72 --disable-xshmfence \
73 --disable-config-udev \
74 --disable-dri3 \
75 --disable-libunwind \
76 --without-xmlto \
77 --enable-systemd-logind=no \
78 --disable-xinerama \
79 --disable-xwayland \
80"
81
82EXTRA_OECMAKE += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-DCMAKE_INSTALL_UNITDIR=${systemd_unitdir}', '-DINSTALL_SYSTEMD_UNITS=OFF', d)}"
83
84do_configure:append () {
85 olddir=`pwd`
86 cd ${XSERVER_SOURCE_DIR}
87
88 rm -rf aclocal-copy/
89 rm -f aclocal.m4
90
91 export ACLOCALDIR="${XSERVER_SOURCE_DIR}/aclocal-copy"
92 mkdir -p ${ACLOCALDIR}/
93 if [ -d ${STAGING_DATADIR_NATIVE}/aclocal ]; then
94 cp-noerror ${STAGING_DATADIR_NATIVE}/aclocal/ ${ACLOCALDIR}/
95 fi
96 if [ -d ${STAGING_DATADIR}/aclocal -a "${STAGING_DATADIR_NATIVE}/aclocal" != "${STAGING_DATADIR}/aclocal" ]; then
97 cp-noerror ${STAGING_DATADIR}/aclocal/ ${ACLOCALDIR}/
98 fi
99 ACLOCAL="aclocal --system-acdir=${ACLOCALDIR}/" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed."
100 chmod +x ./configure
101 ${CACHED_CONFIGUREVARS} ./configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
102 cd $olddir
103}
104
105do_compile:append () {
106 olddir=`pwd`
107 cd ${XSERVER_SOURCE_DIR}
108
109 oe_runmake
110
111 cd $olddir
112}
113
114do_install:append() {
115 olddir=`pwd`
116 cd ${XSERVER_SOURCE_DIR}/hw/vnc
117
118 oe_runmake 'DESTDIR=${D}' install
119
120 cd $olddir
121}
122
123FILES:${PN} += " \
124 ${libdir}/xorg/modules/extensions \
125 ${datadir}/icons \
126 ${datadir}/metainfo \
127 ${systemd_unitdir} \
128"
129
130FILES:${PN}-dbg += "${libdir}/xorg/modules/extensions/.debug"