diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2017-07-27 04:44:22 -0400 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2017-08-13 13:19:41 +0200 |
commit | 3d87b6643c74e59b850c7bdc13171eee480e6e19 (patch) | |
tree | 8355d57a45d3756d3d94d58aa42b85915702fc6e /meta-oe/recipes-graphics | |
parent | 888970ac7cd10c779542fb5000f784bca8f61d1e (diff) | |
download | meta-openembedded-3d87b6643c74e59b850c7bdc13171eee480e6e19.tar.gz |
tigervnc: add recipe 1.8.0
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-graphics')
5 files changed, 300 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/tigervnc/files/0001-tigervnc-remove-includedir.patch b/meta-oe/recipes-graphics/tigervnc/files/0001-tigervnc-remove-includedir.patch new file mode 100644 index 000000000..12c437629 --- /dev/null +++ b/meta-oe/recipes-graphics/tigervnc/files/0001-tigervnc-remove-includedir.patch | |||
@@ -0,0 +1,50 @@ | |||
1 | From 4b423cd2e5e4296abca3be553bf64d8cc287180a Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 20 Jul 2017 17:09:05 +0800 | ||
4 | Subject: [PATCH 1/4] tigervnc: remove includedir | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | Signed-off-by: Chong Lu <Chong.Lu@windriver.com> | ||
9 | |||
10 | It fixes host contamination | ||
11 | |||
12 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
13 | --- | ||
14 | unix/xserver/hw/vnc/Makefile.am | 6 +++--- | ||
15 | 1 file changed, 3 insertions(+), 3 deletions(-) | ||
16 | |||
17 | diff --git a/unix/xserver/hw/vnc/Makefile.am b/unix/xserver/hw/vnc/Makefile.am | ||
18 | index 0d6a4ac..854f078 100644 | ||
19 | --- a/unix/xserver/hw/vnc/Makefile.am | ||
20 | +++ b/unix/xserver/hw/vnc/Makefile.am | ||
21 | @@ -22,7 +22,7 @@ libvnccommon_la_SOURCES = $(HDRS) \ | ||
22 | |||
23 | libvnccommon_la_CPPFLAGS = -DVENDOR_RELEASE="$(VENDOR_RELEASE)" \ | ||
24 | -DVENDOR_STRING="\"$(VENDOR_STRING)\"" -I$(TIGERVNC_SRCDIR)/common -UHAVE_CONFIG_H \ | ||
25 | - -I$(TIGERVNC_SRCDIR)/unix/vncconfig $(XVNC_CPPFLAGS) ${XSERVERLIBS_CFLAGS} -I$(includedir) \ | ||
26 | + -I$(TIGERVNC_SRCDIR)/unix/vncconfig $(XVNC_CPPFLAGS) ${XSERVERLIBS_CFLAGS} \ | ||
27 | -I$(top_srcdir)/include | ||
28 | |||
29 | bin_PROGRAMS = Xvnc | ||
30 | @@ -42,7 +42,7 @@ Xvnc_CPPFLAGS = $(XVNC_CPPFLAGS) -DTIGERVNC -DNO_MODULE_EXTS \ | ||
31 | -UHAVE_CONFIG_H \ | ||
32 | -DXFree86Server -DVENDOR_RELEASE="$(VENDOR_RELEASE)" \ | ||
33 | -DVENDOR_STRING="\"$(VENDOR_STRING)\"" -I$(TIGERVNC_SRCDIR)/common \ | ||
34 | - -I$(top_srcdir)/include ${XSERVERLIBS_CFLAGS} -I$(includedir) | ||
35 | + -I$(top_srcdir)/include ${XSERVERLIBS_CFLAGS} | ||
36 | |||
37 | Xvnc_LDADD = $(XVNC_LIBS) libvnccommon.la $(COMMON_LIBS) \ | ||
38 | $(XSERVER_LIBS) $(XSERVER_SYS_LIBS) $(XVNC_SYS_LIBS) -lX11 | ||
39 | @@ -62,7 +62,7 @@ libvnc_la_CPPFLAGS = $(XVNC_CPPFLAGS) -I$(TIGERVNC_SRCDIR)/common -UHAVE_CONFIG_ | ||
40 | -I$(top_srcdir)/hw/xfree86/os-support \ | ||
41 | -I$(top_srcdir)/hw/xfree86/os-support/bus \ | ||
42 | -I$(top_srcdir)/include \ | ||
43 | - ${XSERVERLIBS_CFLAGS} -I$(includedir) | ||
44 | + ${XSERVERLIBS_CFLAGS} | ||
45 | |||
46 | libvnc_la_LDFLAGS = -module -avoid-version -Wl,-z,now | ||
47 | |||
48 | -- | ||
49 | 2.7.4 | ||
50 | |||
diff --git a/meta-oe/recipes-graphics/tigervnc/files/0002-do-not-build-tests-sub-directory.patch b/meta-oe/recipes-graphics/tigervnc/files/0002-do-not-build-tests-sub-directory.patch new file mode 100644 index 000000000..4e875ba82 --- /dev/null +++ b/meta-oe/recipes-graphics/tigervnc/files/0002-do-not-build-tests-sub-directory.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | From c3460d63f0b6cd50b9a64265f420f0439e12a1d5 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Tue, 25 Apr 2017 01:36:44 -0400 | ||
4 | Subject: [PATCH 2/4] do not build tests sub directory | ||
5 | |||
6 | Upstream-Status: Inappropriate [oe specific] | ||
7 | |||
8 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
9 | --- | ||
10 | CMakeLists.txt | 3 --- | ||
11 | 1 file changed, 3 deletions(-) | ||
12 | |||
13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
14 | index 94ec2ef..fb72a00 100644 | ||
15 | --- a/CMakeLists.txt | ||
16 | +++ b/CMakeLists.txt | ||
17 | @@ -300,9 +300,6 @@ if(BUILD_VIEWER) | ||
18 | add_subdirectory(media) | ||
19 | endif() | ||
20 | |||
21 | -add_subdirectory(tests) | ||
22 | - | ||
23 | - | ||
24 | include(cmake/BuildPackages.cmake) | ||
25 | |||
26 | # uninstall | ||
27 | -- | ||
28 | 2.7.4 | ||
29 | |||
diff --git a/meta-oe/recipes-graphics/tigervnc/files/0003-add-missing-dynamic-library-to-FLTK_LIBRARIES.patch b/meta-oe/recipes-graphics/tigervnc/files/0003-add-missing-dynamic-library-to-FLTK_LIBRARIES.patch new file mode 100644 index 000000000..cfb84ac14 --- /dev/null +++ b/meta-oe/recipes-graphics/tigervnc/files/0003-add-missing-dynamic-library-to-FLTK_LIBRARIES.patch | |||
@@ -0,0 +1,28 @@ | |||
1 | From 6369a5be2af2ed1fa443f40f48deaf318d22713e Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 20 Jul 2017 05:06:00 -0400 | ||
4 | Subject: [PATCH 3/4] add missing dynamic library to FLTK_LIBRARIES | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
9 | --- | ||
10 | CMakeLists.txt | 2 ++ | ||
11 | 1 file changed, 2 insertions(+) | ||
12 | |||
13 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
14 | index fb72a00..5732dc8 100644 | ||
15 | --- a/CMakeLists.txt | ||
16 | +++ b/CMakeLists.txt | ||
17 | @@ -246,6 +246,8 @@ if(UNIX AND NOT APPLE) | ||
18 | endif() | ||
19 | endif() | ||
20 | |||
21 | +set(FLTK_LIBRARIES ${FLTK_LIBRARIES} -lm -ldl -lpng -ljpeg) | ||
22 | + | ||
23 | # Check for GNUTLS library | ||
24 | option(ENABLE_GNUTLS "Enable protocol encryption and advanced authentication" ON) | ||
25 | if(ENABLE_GNUTLS) | ||
26 | -- | ||
27 | 2.7.4 | ||
28 | |||
diff --git a/meta-oe/recipes-graphics/tigervnc/files/0004-tigervnc-add-fPIC-option-to-COMPILE_FLAGS.patch b/meta-oe/recipes-graphics/tigervnc/files/0004-tigervnc-add-fPIC-option-to-COMPILE_FLAGS.patch new file mode 100644 index 000000000..97b0a388a --- /dev/null +++ b/meta-oe/recipes-graphics/tigervnc/files/0004-tigervnc-add-fPIC-option-to-COMPILE_FLAGS.patch | |||
@@ -0,0 +1,62 @@ | |||
1 | From 9563b69640227da2220ee0c39077afb736cc96d1 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Thu, 20 Jul 2017 17:12:17 +0800 | ||
4 | Subject: [PATCH 4/4] tigervnc: add fPIC option to COMPILE_FLAGS | ||
5 | |||
6 | The static libraries in Xregion/network/rdr/rfb were linked by shared | ||
7 | library libvnc.so, so we should add fPIC option to COMPILE_FLAGS to fix | ||
8 | relocation issue. | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
13 | --- | ||
14 | common/Xregion/CMakeLists.txt | 1 + | ||
15 | common/network/CMakeLists.txt | 1 + | ||
16 | common/rdr/CMakeLists.txt | 1 + | ||
17 | common/rfb/CMakeLists.txt | 1 + | ||
18 | 4 files changed, 4 insertions(+) | ||
19 | |||
20 | diff --git a/common/Xregion/CMakeLists.txt b/common/Xregion/CMakeLists.txt | ||
21 | index 40ca97e..9411328 100644 | ||
22 | --- a/common/Xregion/CMakeLists.txt | ||
23 | +++ b/common/Xregion/CMakeLists.txt | ||
24 | @@ -3,4 +3,5 @@ add_library(Xregion STATIC | ||
25 | |||
26 | if(UNIX) | ||
27 | libtool_create_control_file(Xregion) | ||
28 | + set_target_properties(Xregion PROPERTIES COMPILE_FLAGS -fPIC) | ||
29 | endif() | ||
30 | diff --git a/common/network/CMakeLists.txt b/common/network/CMakeLists.txt | ||
31 | index b624c8e..6c06ec9 100644 | ||
32 | --- a/common/network/CMakeLists.txt | ||
33 | +++ b/common/network/CMakeLists.txt | ||
34 | @@ -9,4 +9,5 @@ endif() | ||
35 | |||
36 | if(UNIX) | ||
37 | libtool_create_control_file(network) | ||
38 | + set_target_properties(network PROPERTIES COMPILE_FLAGS -fPIC) | ||
39 | endif() | ||
40 | diff --git a/common/rdr/CMakeLists.txt b/common/rdr/CMakeLists.txt | ||
41 | index 989ba2f..20f6489 100644 | ||
42 | --- a/common/rdr/CMakeLists.txt | ||
43 | +++ b/common/rdr/CMakeLists.txt | ||
44 | @@ -27,4 +27,5 @@ target_link_libraries(rdr ${RDR_LIBRARIES}) | ||
45 | |||
46 | if(UNIX) | ||
47 | libtool_create_control_file(rdr) | ||
48 | + set_target_properties(rdr PROPERTIES COMPILE_FLAGS -fPIC) | ||
49 | endif() | ||
50 | diff --git a/common/rfb/CMakeLists.txt b/common/rfb/CMakeLists.txt | ||
51 | index 5047e5e..88838ab 100644 | ||
52 | --- a/common/rfb/CMakeLists.txt | ||
53 | +++ b/common/rfb/CMakeLists.txt | ||
54 | @@ -98,4 +98,5 @@ target_link_libraries(rfb ${RFB_LIBRARIES}) | ||
55 | |||
56 | if(UNIX) | ||
57 | libtool_create_control_file(rfb) | ||
58 | + set_target_properties(rfb PROPERTIES COMPILE_FLAGS -fPIC) | ||
59 | endif() | ||
60 | -- | ||
61 | 2.7.4 | ||
62 | |||
diff --git a/meta-oe/recipes-graphics/tigervnc/tigervnc_1.8.0.bb b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.8.0.bb new file mode 100644 index 000000000..d15bc9e25 --- /dev/null +++ b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.8.0.bb | |||
@@ -0,0 +1,131 @@ | |||
1 | DESCRIPTION = "TigerVNC remote display system" | ||
2 | HOMEPAGE = "http://www.tigervnc.com/" | ||
3 | LICENSE = "GPLv2+" | ||
4 | SECTION = "x11/utils" | ||
5 | DEPENDS = "xserver-xorg gnutls jpeg libxtst gettext-native fltk" | ||
6 | RDEPENDS_${PN} = "chkconfig coreutils hicolor-icon-theme" | ||
7 | |||
8 | LIC_FILES_CHKSUM = "file://LICENCE.TXT;md5=75b02c2872421380bbd47781d2bd75d3" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | inherit distro_features_check | ||
13 | REQUIRED_DISTRO_FEATURES = "x11" | ||
14 | |||
15 | inherit autotools cmake | ||
16 | B = "${S}" | ||
17 | |||
18 | SRCREV = "4d6e1b8306a8cca8ad5e15ff8201f6ea24459cfd" | ||
19 | |||
20 | SRC_URI = "git://github.com/TigerVNC/tigervnc.git;branch=1.8-branch \ | ||
21 | file://0001-tigervnc-remove-includedir.patch \ | ||
22 | file://0002-do-not-build-tests-sub-directory.patch \ | ||
23 | file://0003-add-missing-dynamic-library-to-FLTK_LIBRARIES.patch \ | ||
24 | file://0004-tigervnc-add-fPIC-option-to-COMPILE_FLAGS.patch \ | ||
25 | " | ||
26 | |||
27 | # Keep sync with xorg-server in oe-core | ||
28 | XORG_PN ?= "xorg-server" | ||
29 | XORG_PV ?= "1.19.3" | ||
30 | SRC_URI += "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${XORG_PV}.tar.bz2;name=xorg" | ||
31 | XORG_S = "${WORKDIR}/${XORG_PN}-${XORG_PV}" | ||
32 | SRC_URI[xorg.md5sum] = "015d2fc4b9f2bfe7a626edb63a62c65e" | ||
33 | SRC_URI[xorg.sha256sum] = "677a8166e03474719238dfe396ce673c4234735464d6dadf2959b600d20e5a98" | ||
34 | |||
35 | # It is the directory containing the Xorg source for the | ||
36 | # machine on which you are building TigerVNC. | ||
37 | XSERVER_SOURCE_DIR="${S}/unix/xserver" | ||
38 | |||
39 | do_patch[postfuncs] += "do_patch_xserver" | ||
40 | do_patch_xserver () { | ||
41 | for subdir in Xext xkb GL hw/xquartz/bundle hw/xfree86/common; do | ||
42 | install -d ${XSERVER_SOURCE_DIR}/$subdir | ||
43 | done | ||
44 | |||
45 | for subdir in hw/dmx/doc man doc hw/dmx/doxygen; do | ||
46 | install -d ${XSERVER_SOURCE_DIR}/$subdir | ||
47 | done | ||
48 | |||
49 | sources="hw/xquartz/bundle/cpprules.in man/Xserver.man doc/smartsched \ | ||
50 | hw/dmx/doxygen/doxygen.conf.in xserver.ent.in xkb/README.compiled \ | ||
51 | hw/xfree86/xorgconf.cpp hw/xfree86/Xorg.sh.in" | ||
52 | for i in ${sources}; do | ||
53 | install -m 0644 ${XORG_S}/$i ${XSERVER_SOURCE_DIR}/$i; | ||
54 | done | ||
55 | |||
56 | cd ${XORG_S} | ||
57 | find . -type f | egrep '.*\.(c|h|am|ac|inc|m4|h.in|pc.in|man.pre|pl|txt)$' | \ | ||
58 | xargs tar cf - | (cd ${XSERVER_SOURCE_DIR} && tar xf -) | ||
59 | |||
60 | cd ${XSERVER_SOURCE_DIR} | ||
61 | xserverpatch="${S}/unix/xserver119.patch" | ||
62 | echo "Apply $xserverpatch" | ||
63 | patch -p1 -b --suffix .vnc < $xserverpatch | ||
64 | } | ||
65 | |||
66 | EXTRA_OECONF = "--disable-xorg --disable-xnest --disable-xvfb --disable-dmx \ | ||
67 | --disable-xwin --disable-xephyr --disable-kdrive --with-pic \ | ||
68 | --disable-static --disable-xinerama \ | ||
69 | --with-xkb-output=${localstatedir}/lib/xkb \ | ||
70 | --disable-glx --disable-dri --disable-dri2 \ | ||
71 | --disable-config-hal \ | ||
72 | --disable-config-udev \ | ||
73 | --without-dtrace \ | ||
74 | --disable-unit-tests \ | ||
75 | --disable-devel-docs \ | ||
76 | --disable-selective-werror \ | ||
77 | --disable-xshmfence \ | ||
78 | --disable-config-udev \ | ||
79 | --disable-dri3 \ | ||
80 | --disable-libunwind \ | ||
81 | --without-xmlto \ | ||
82 | --enable-systemd-logind=no \ | ||
83 | --disable-xinerama \ | ||
84 | --disable-xwayland \ | ||
85 | " | ||
86 | |||
87 | do_configure_append () { | ||
88 | olddir=`pwd` | ||
89 | cd ${XSERVER_SOURCE_DIR} | ||
90 | |||
91 | rm -rf aclocal-copy/ | ||
92 | rm -f aclocal.m4 | ||
93 | |||
94 | export ACLOCALDIR="${XSERVER_SOURCE_DIR}/aclocal-copy" | ||
95 | mkdir -p ${ACLOCALDIR}/ | ||
96 | if [ -d ${STAGING_DATADIR_NATIVE}/aclocal ]; then | ||
97 | cp-noerror ${STAGING_DATADIR_NATIVE}/aclocal/ ${ACLOCALDIR}/ | ||
98 | fi | ||
99 | if [ -d ${STAGING_DATADIR}/aclocal -a "${STAGING_DATADIR_NATIVE}/aclocal" != "${STAGING_DATADIR}/aclocal" ]; then | ||
100 | cp-noerror ${STAGING_DATADIR}/aclocal/ ${ACLOCALDIR}/ | ||
101 | fi | ||
102 | ACLOCAL="aclocal --system-acdir=${ACLOCALDIR}/" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || bbfatal "autoreconf execution failed." | ||
103 | chmod +x ./configure | ||
104 | ${CACHED_CONFIGUREVARS} ./configure ${CONFIGUREOPTS} ${EXTRA_OECONF} | ||
105 | cd $olddir | ||
106 | } | ||
107 | |||
108 | do_compile_append () { | ||
109 | olddir=`pwd` | ||
110 | cd ${XSERVER_SOURCE_DIR} | ||
111 | |||
112 | oe_runmake | ||
113 | |||
114 | cd $olddir | ||
115 | } | ||
116 | |||
117 | do_install_append() { | ||
118 | olddir=`pwd` | ||
119 | cd ${XSERVER_SOURCE_DIR}/hw/vnc | ||
120 | |||
121 | oe_runmake 'DESTDIR=${D}' install | ||
122 | |||
123 | cd $olddir | ||
124 | } | ||
125 | |||
126 | FILES_${PN} += " \ | ||
127 | ${libdir}/xorg/modules/extensions \ | ||
128 | ${datadir}/icons \ | ||
129 | " | ||
130 | |||
131 | FILES_${PN}-dbg += "${libdir}/xorg/modules/extensions/.debug" | ||