diff options
| author | Ross Burton <ross.burton@arm.com> | 2025-02-25 17:57:29 +0000 |
|---|---|---|
| committer | Ross Burton <ross.burton@arm.com> | 2025-02-27 20:28:17 +0000 |
| commit | c6a91f32ccb8e2734a23de1ae007e5232178d516 (patch) | |
| tree | 0927482ed8ae91fd640000e5a8f2221cdcc5b94a /meta-oe/recipes-graphics/tigervnc | |
| parent | e5643c6ba5af912fcab7bab90c8178e59ccb3f4f (diff) | |
| download | meta-openembedded-c6a91f32ccb8e2734a23de1ae007e5232178d516.tar.gz | |
tigervnc: simplify xserver unpack and build
When unpacking, just use cp to hardlink the xserver source tree into the
tigervnc source tree.
When configuring, instead of replicating complicated logic, we can
simply set the variable AUTOTOOLS_SCRIPT_PATH and just call
autotools_do_configure. Some of the options passed to the xserver
configure are obsolete so remove them.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Diffstat (limited to 'meta-oe/recipes-graphics/tigervnc')
| -rw-r--r-- | meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.1.bb | 59 |
1 files changed, 8 insertions, 51 deletions
diff --git a/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.1.bb b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.1.bb index 6e4d4a7b0c..ab9edd9ee0 100644 --- a/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.1.bb +++ b/meta-oe/recipes-graphics/tigervnc/tigervnc_1.14.1.bb | |||
| @@ -33,32 +33,17 @@ SRC_URI[xorg.sha256sum] = "841c82901282902725762df03adbbcd68153d4cdfb0d61df0cfd7 | |||
| 33 | # It is the directory containing the Xorg source for the | 33 | # It is the directory containing the Xorg source for the |
| 34 | # machine on which you are building TigerVNC. | 34 | # machine on which you are building TigerVNC. |
| 35 | XSERVER_SOURCE_DIR="${S}/unix/xserver" | 35 | XSERVER_SOURCE_DIR="${S}/unix/xserver" |
| 36 | AUTOTOOLS_SCRIPT_PATH = "${XSERVER_SOURCE_DIR}" | ||
| 36 | 37 | ||
| 37 | do_patch[postfuncs] += "do_patch_xserver" | 38 | do_patch[postfuncs] += "do_patch_xserver" |
| 38 | do_patch_xserver () { | 39 | do_patch_xserver () { |
| 39 | subdirs="Xext xkb GL hw/xquartz/bundle hw/xfree86/common man doc" | 40 | # Put the xserver source in the right place in the tigervnc source tree |
| 40 | for i in ${subdirs}; do | 41 | cp -rfl ${XORG_S}/* ${XSERVER_SOURCE_DIR} |
| 41 | install -d ${XSERVER_SOURCE_DIR}/$i | 42 | # Apply the patch to integrate the vnc server |
| 42 | done | 43 | patch -p1 -b --suffix .vnc --directory ${XSERVER_SOURCE_DIR} <${S}/unix/xserver21.patch |
| 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 | } | 44 | } |
| 60 | 45 | ||
| 61 | EXTRA_OECONF = "--disable-xorg --disable-xnest --disable-xvfb --disable-dmx \ | 46 | EXTRA_OECONF = "--disable-xorg --disable-xnest --disable-xvfb \ |
| 62 | --disable-xwin --disable-xephyr --disable-kdrive --with-pic \ | 47 | --disable-xwin --disable-xephyr --disable-kdrive --with-pic \ |
| 63 | --disable-static --disable-xinerama \ | 48 | --disable-static --disable-xinerama \ |
| 64 | --with-xkb-output=${localstatedir}/lib/xkb \ | 49 | --with-xkb-output=${localstatedir}/lib/xkb \ |
| @@ -76,48 +61,20 @@ EXTRA_OECONF = "--disable-xorg --disable-xnest --disable-xvfb --disable-dmx \ | |||
| 76 | --without-xmlto \ | 61 | --without-xmlto \ |
| 77 | --enable-systemd-logind=no \ | 62 | --enable-systemd-logind=no \ |
| 78 | --disable-xinerama \ | 63 | --disable-xinerama \ |
| 79 | --disable-xwayland \ | ||
| 80 | " | 64 | " |
| 81 | 65 | ||
| 82 | EXTRA_OECMAKE += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-DCMAKE_INSTALL_UNITDIR=${systemd_system_unitdir}', '-DINSTALL_SYSTEMD_UNITS=OFF', d)}" | 66 | EXTRA_OECMAKE += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-DCMAKE_INSTALL_UNITDIR=${systemd_system_unitdir}', '-DINSTALL_SYSTEMD_UNITS=OFF', d)}" |
| 83 | 67 | ||
| 84 | do_configure:append () { | 68 | do_configure:append () { |
| 85 | olddir=`pwd` | 69 | autotools_do_configure |
| 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 --aclocal-path=${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 | } | 70 | } |
| 104 | 71 | ||
| 105 | do_compile:append () { | 72 | do_compile:append () { |
| 106 | olddir=`pwd` | ||
| 107 | cd ${XSERVER_SOURCE_DIR} | ||
| 108 | |||
| 109 | oe_runmake | 73 | oe_runmake |
| 110 | |||
| 111 | cd $olddir | ||
| 112 | } | 74 | } |
| 113 | 75 | ||
| 114 | do_install:append() { | 76 | do_install:append() { |
| 115 | olddir=`pwd` | 77 | oe_runmake -C ${B}/hw/vnc 'DESTDIR=${D}' install |
| 116 | cd ${XSERVER_SOURCE_DIR}/hw/vnc | ||
| 117 | |||
| 118 | oe_runmake 'DESTDIR=${D}' install | ||
| 119 | |||
| 120 | cd $olddir | ||
| 121 | } | 78 | } |
| 122 | 79 | ||
| 123 | FILES:${PN} += " \ | 80 | FILES:${PN} += " \ |
