diff options
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.bb | 130 |
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 @@ | |||
1 | DESCRIPTION = "TigerVNC remote display system" | ||
2 | HOMEPAGE = "http://www.tigervnc.com/" | ||
3 | LICENSE = "GPL-2.0-or-later" | ||
4 | SECTION = "x11/utils" | ||
5 | DEPENDS = "xserver-xorg gnutls jpeg libxtst gettext-native fltk libpam" | ||
6 | RDEPENDS:${PN} = "coreutils hicolor-icon-theme perl bash xkbcomp" | ||
7 | |||
8 | LIC_FILES_CHKSUM = "file://LICENCE.TXT;md5=75b02c2872421380bbd47781d2bd75d3" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | inherit autotools cmake features_check pkgconfig | ||
13 | |||
14 | REQUIRED_DISTRO_FEATURES = "x11 pam" | ||
15 | |||
16 | B = "${S}" | ||
17 | |||
18 | SRCREV = "4a09a96661624dff14662d6e9849e06a6c70ae03" | ||
19 | |||
20 | SRC_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 | ||
27 | XORG_PN ?= "xorg-server" | ||
28 | XORG_PV ?= "21.1.13" | ||
29 | SRC_URI += "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${XORG_PV}.tar.xz;name=xorg" | ||
30 | XORG_S = "${UNPACKDIR}/${XORG_PN}-${XORG_PV}" | ||
31 | SRC_URI[xorg.sha256sum] = "b45a02d5943f72236a360d3cc97e75134aa4f63039ff88c04686b508a3dc740c" | ||
32 | |||
33 | # It is the directory containing the Xorg source for the | ||
34 | # machine on which you are building TigerVNC. | ||
35 | XSERVER_SOURCE_DIR="${S}/unix/xserver" | ||
36 | |||
37 | do_patch[postfuncs] += "do_patch_xserver" | ||
38 | do_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 | |||
61 | EXTRA_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 | |||
82 | EXTRA_OECMAKE += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-DCMAKE_INSTALL_UNITDIR=${systemd_unitdir}', '-DINSTALL_SYSTEMD_UNITS=OFF', d)}" | ||
83 | |||
84 | do_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 | |||
105 | do_compile:append () { | ||
106 | olddir=`pwd` | ||
107 | cd ${XSERVER_SOURCE_DIR} | ||
108 | |||
109 | oe_runmake | ||
110 | |||
111 | cd $olddir | ||
112 | } | ||
113 | |||
114 | do_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 | |||
123 | FILES:${PN} += " \ | ||
124 | ${libdir}/xorg/modules/extensions \ | ||
125 | ${datadir}/icons \ | ||
126 | ${datadir}/metainfo \ | ||
127 | ${systemd_unitdir} \ | ||
128 | " | ||
129 | |||
130 | FILES:${PN}-dbg += "${libdir}/xorg/modules/extensions/.debug" | ||