diff options
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 0000000000..12c437629d --- /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 0000000000..4e875ba82b --- /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 0000000000..cfb84ac141 --- /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 0000000000..97b0a388a2 --- /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 0000000000..d15bc9e25a --- /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" | ||
