From 0bc27a0f57289b3ec6c7efd1105e246f7966ac3d Mon Sep 17 00:00:00 2001 From: Leonid Pliushch Date: Sun, 17 Nov 2019 17:41:03 +0200 Subject: [PATCH] x11 dependencies for TK and ImLib2 --- packages/libx11/build.sh | 16 ++++ packages/libx11/src-CrGlCur.c.patch | 12 +++ packages/libx11/src-XlibInt.c.patch | 12 +++ packages/libxau/build.sh | 9 ++ packages/libxau/libXau-1.0.8_AuLock.c.patch | 12 +++ packages/libxcb/build.sh | 11 +++ packages/libxcb/libxcb-1.12_configure.patch | 11 +++ .../libxcb/libxcb-1.12_src_xcb_util.c.patch | 12 +++ packages/libxdmcp/build.sh | 9 ++ packages/libxext/build.sh | 11 +++ packages/libxft/build.sh | 9 ++ packages/libxrender/build.sh | 11 +++ packages/libxss/build.sh | 11 +++ packages/xcb-proto/build.sh | 11 +++ packages/xorg-util-macros/build.sh | 14 +++ ...util-macros-1.19.1_xorg-macros.m4.in.patch | 21 +++++ packages/xorgproto/build.sh | 28 ++++++ packages/xorgproto/include-x11-Xos_r.h.patch | 25 ++++++ .../xorgproto/include-x11-Xpoll.h.in.patch | 16 ++++ packages/xorgproto/meson.build.patch | 21 +++++ packages/xtrans/build.sh | 15 ++++ .../xtrans/xtrans-1.3.5_Xtransutil.c.patch | 85 +++++++++++++++++++ .../xtrans/xtrans-1.4.0_Xtranslcl.c.patch | 57 +++++++++++++ .../xtrans/xtrans-1.4.0_Xtranssock.c.patch | 32 +++++++ 24 files changed, 471 insertions(+) create mode 100644 packages/libx11/build.sh create mode 100644 packages/libx11/src-CrGlCur.c.patch create mode 100644 packages/libx11/src-XlibInt.c.patch create mode 100644 packages/libxau/build.sh create mode 100644 packages/libxau/libXau-1.0.8_AuLock.c.patch create mode 100644 packages/libxcb/build.sh create mode 100644 packages/libxcb/libxcb-1.12_configure.patch create mode 100644 packages/libxcb/libxcb-1.12_src_xcb_util.c.patch create mode 100644 packages/libxdmcp/build.sh create mode 100644 packages/libxext/build.sh create mode 100644 packages/libxft/build.sh create mode 100644 packages/libxrender/build.sh create mode 100644 packages/libxss/build.sh create mode 100644 packages/xcb-proto/build.sh create mode 100644 packages/xorg-util-macros/build.sh create mode 100644 packages/xorg-util-macros/util-macros-1.19.1_xorg-macros.m4.in.patch create mode 100644 packages/xorgproto/build.sh create mode 100644 packages/xorgproto/include-x11-Xos_r.h.patch create mode 100644 packages/xorgproto/include-x11-Xpoll.h.in.patch create mode 100644 packages/xorgproto/meson.build.patch create mode 100644 packages/xtrans/build.sh create mode 100644 packages/xtrans/xtrans-1.3.5_Xtransutil.c.patch create mode 100644 packages/xtrans/xtrans-1.4.0_Xtranslcl.c.patch create mode 100644 packages/xtrans/xtrans-1.4.0_Xtranssock.c.patch diff --git a/packages/libx11/build.sh b/packages/libx11/build.sh new file mode 100644 index 000000000..9af464ac5 --- /dev/null +++ b/packages/libx11/build.sh @@ -0,0 +1,16 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 client-side library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.6.9 +TERMUX_PKG_REVISION=2 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libX11-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=9cc7e8d000d6193fa5af580d50d689380b8287052270f5bb26a5fb6b58b2bed1 +TERMUX_PKG_DEPENDS="libandroid-support, libxcb" +TERMUX_PKG_BUILD_DEPENDS="xorgproto, xorg-util-macros, xtrans" +TERMUX_PKG_RECOMMENDS="xorg-xauth" +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-malloc0returnsnull" + +termux_step_post_make_install() { + ln -sfr "${TERMUX_PREFIX}/lib/libX11.so" "${TERMUX_PREFIX}/lib/libX11.so.6" +} diff --git a/packages/libx11/src-CrGlCur.c.patch b/packages/libx11/src-CrGlCur.c.patch new file mode 100644 index 000000000..409b1e317 --- /dev/null +++ b/packages/libx11/src-CrGlCur.c.patch @@ -0,0 +1,12 @@ +diff -uNr libX11-1.6.7/src/CrGlCur.c libX11-1.6.7.mod/src/CrGlCur.c +--- libX11-1.6.7/src/CrGlCur.c 2018-10-09 17:27:08.000000000 +0300 ++++ libX11-1.6.7.mod/src/CrGlCur.c 2018-11-28 19:31:06.941489053 +0200 +@@ -55,7 +55,7 @@ + #endif + + #ifndef LIBXCURSOR +-#define LIBXCURSOR "libXcursor.so.1" ++#define LIBXCURSOR "libXcursor.so" + #endif + + static char libraryName[] = LIBXCURSOR; diff --git a/packages/libx11/src-XlibInt.c.patch b/packages/libx11/src-XlibInt.c.patch new file mode 100644 index 000000000..03dff6429 --- /dev/null +++ b/packages/libx11/src-XlibInt.c.patch @@ -0,0 +1,12 @@ +diff -uNr libX11-1.6.8/src/XlibInt.c libX11-1.6.8.mod/src/XlibInt.c +--- libX11-1.6.8/src/XlibInt.c 2019-06-17 17:47:35.000000000 +0300 ++++ libX11-1.6.8.mod/src/XlibInt.c 2019-06-29 22:13:06.054460413 +0300 +@@ -1263,7 +1263,7 @@ + WSASetLastError(last_error); + #else + last_error = errno; +- ioctl(ConnectionNumber(dpy), FIONREAD, &bytes); ++ ioctl(ConnectionNumber(dpy), /* FIONREAD */ 0x541B, &bytes); + errno = last_error; + #endif + return bytes; diff --git a/packages/libxau/build.sh b/packages/libxau/build.sh new file mode 100644 index 000000000..aad37c9d2 --- /dev/null +++ b/packages/libxau/build.sh @@ -0,0 +1,9 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 authorisation library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.0.9 +TERMUX_PKG_REVISION=6 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libXau-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=ccf8cbf0dbf676faa2ea0a6d64bcc3b6746064722b606c8c52917ed00dcb73ec +TERMUX_PKG_BUILD_DEPENDS="xorgproto" diff --git a/packages/libxau/libXau-1.0.8_AuLock.c.patch b/packages/libxau/libXau-1.0.8_AuLock.c.patch new file mode 100644 index 000000000..601fd89e3 --- /dev/null +++ b/packages/libxau/libXau-1.0.8_AuLock.c.patch @@ -0,0 +1,12 @@ +diff -uNr libXau-1.0.8/AuLock.c libXau-1.0.8.mod/AuLock.c +--- libXau-1.0.8/AuLock.c 2013-05-25 01:04:09.000000000 +0300 ++++ libXau-1.0.8.mod/AuLock.c 2017-11-23 14:08:52.004479977 +0200 +@@ -91,7 +91,7 @@ + } else + #endif + { +- if (link (creat_name, link_name) != -1) ++ if (symlink (creat_name, link_name) != -1) + return LOCK_SUCCESS; + if (errno == ENOENT) { + creat_fd = -1; /* force re-creat next time around */ diff --git a/packages/libxcb/build.sh b/packages/libxcb/build.sh new file mode 100644 index 000000000..36c86737a --- /dev/null +++ b/packages/libxcb/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://xcb.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 client-side library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.13.1 +TERMUX_PKG_REVISION=8 +TERMUX_PKG_SRCURL=https://xcb.freedesktop.org/dist/libxcb-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=a89fb7af7a11f43d2ce84a844a4b38df688c092bf4b67683aef179cdf2a647c4 +TERMUX_PKG_DEPENDS="libxau, libxdmcp" +TERMUX_PKG_BUILD_DEPENDS="xcb-proto, xorg-util-macros" +TERMUX_PKG_RECOMMENDS="xorg-xauth" diff --git a/packages/libxcb/libxcb-1.12_configure.patch b/packages/libxcb/libxcb-1.12_configure.patch new file mode 100644 index 000000000..7cbb933af --- /dev/null +++ b/packages/libxcb/libxcb-1.12_configure.patch @@ -0,0 +1,11 @@ +--- ./configure 2016-05-18 22:14:50.000000000 +0530 ++++ ../configure 2017-02-08 22:48:44.459892477 +0530 +@@ -19666,7 +19666,7 @@ + $as_echo "yes" >&6; } + + fi +-NEEDED="pthread-stubs xau >= 0.99.2" ++NEEDED="xau >= 0.99.2" + + pkg_failed=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for NEEDED" >&5 diff --git a/packages/libxcb/libxcb-1.12_src_xcb_util.c.patch b/packages/libxcb/libxcb-1.12_src_xcb_util.c.patch new file mode 100644 index 000000000..78c01661b --- /dev/null +++ b/packages/libxcb/libxcb-1.12_src_xcb_util.c.patch @@ -0,0 +1,12 @@ +diff -uNr libxcb-1.12/src/xcb_util.c libxcb-1.12.mod/src/xcb_util.c +--- libxcb-1.12/src/xcb_util.c 2016-05-09 19:10:55.000000000 +0300 ++++ libxcb-1.12.mod/src/xcb_util.c 2017-11-22 00:13:51.337058457 +0200 +@@ -229,7 +229,7 @@ + #ifdef __hpux + static const char unix_base[] = "/usr/spool/sockets/X11/"; + #else +- static const char unix_base[] = "/tmp/.X11-unix/X"; ++ static const char unix_base[] = "/data/data/com.termux/files/usr/tmp/.X11-unix/X"; + #endif + const char *base = unix_base; + size_t filelen; diff --git a/packages/libxdmcp/build.sh b/packages/libxdmcp/build.sh new file mode 100644 index 000000000..7cb22885c --- /dev/null +++ b/packages/libxdmcp/build.sh @@ -0,0 +1,9 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 Display Manager Control Protocol library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.1.3 +TERMUX_PKG_REVISION=6 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/archive/individual/lib/libXdmcp-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=20523b44aaa513e17c009e873ad7bbc301507a3224c232610ce2e099011c6529 +TERMUX_PKG_BUILD_DEPENDS="xorg-util-macros" diff --git a/packages/libxext/build.sh b/packages/libxext/build.sh new file mode 100644 index 000000000..2f91943a0 --- /dev/null +++ b/packages/libxext/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 miscellaneous extensions library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.3.4 +TERMUX_PKG_REVISION=5 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libXext-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=59ad6fcce98deaecc14d39a672cf218ca37aba617c9a0f691cac3bcd28edf82b +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-malloc0returnsnull" +TERMUX_PKG_DEPENDS="libx11, libxau, libxcb, libxdmcp" +TERMUX_PKG_BUILD_DEPENDS="xorgproto, xorg-util-macros" diff --git a/packages/libxft/build.sh b/packages/libxft/build.sh new file mode 100644 index 000000000..83c5a83cc --- /dev/null +++ b/packages/libxft/build.sh @@ -0,0 +1,9 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="FreeType-based font drawing library for X" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=2.3.3 +TERMUX_PKG_REVISION=5 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libXft-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216 +TERMUX_PKG_DEPENDS="fontconfig, freetype, libbz2, liblzma, libpng, libuuid, libx11, libxau, libxcb, libxdmcp, libxml2, libxrender" diff --git a/packages/libxrender/build.sh b/packages/libxrender/build.sh new file mode 100644 index 000000000..357fbc484 --- /dev/null +++ b/packages/libxrender/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X Rendering Extension client library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=0.9.10 +TERMUX_PKG_REVISION=10 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libXrender-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949 +TERMUX_PKG_DEPENDS="libx11" +TERMUX_PKG_BUILD_DEPENDS="xorgproto" +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-malloc0returnsnull" diff --git a/packages/libxss/build.sh b/packages/libxss/build.sh new file mode 100644 index 000000000..b888b0d9f --- /dev/null +++ b/packages/libxss/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X11 Screen Saver extension library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.2.3 +TERMUX_PKG_REVISION=8 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/libXScrnSaver-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=f917075a1b7b5a38d67a8b0238eaab14acd2557679835b154cf2bca576e89bf8 +TERMUX_PKG_DEPENDS="libx11, libxau, libxcb, libxdmcp, libxext" +TERMUX_PKG_BUILD_DEPENDS="xorgproto, xorg-util-macros" +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-malloc0returnsnull" diff --git a/packages/xcb-proto/build.sh b/packages/xcb-proto/build.sh new file mode 100644 index 000000000..e510b04b6 --- /dev/null +++ b/packages/xcb-proto/build.sh @@ -0,0 +1,11 @@ +TERMUX_PKG_HOMEPAGE=https://xcb.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="XML-XCB protocol descriptions" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.13 +TERMUX_PKG_REVISION=9 +TERMUX_PKG_SRCURL=https://xcb.freedesktop.org/dist/xcb-proto-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=7b98721e669be80284e9bbfeab02d2d0d54cd11172b72271e47a2fe875e2bde1 +TERMUX_PKG_PLATFORM_INDEPENDENT=true +TERMUX_PKG_CONFLICTS="xcbproto" +TERMUX_PKG_REPLACES="xcbproto" diff --git a/packages/xorg-util-macros/build.sh b/packages/xorg-util-macros/build.sh new file mode 100644 index 000000000..b6d80295d --- /dev/null +++ b/packages/xorg-util-macros/build.sh @@ -0,0 +1,14 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X.Org Autotools macros" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.19.2 +TERMUX_PKG_REVISION=5 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/util/util-macros-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=d7e43376ad220411499a79735020f9d145fdc159284867e99467e0d771f3e712 +TERMUX_PKG_PLATFORM_INDEPENDENT=true + +termux_step_post_make_install() { + mkdir -p ${TERMUX_PREFIX}/lib/pkgconfig + mv ${TERMUX_PREFIX}/share/pkgconfig/xorg-macros.pc ${TERMUX_PREFIX}/lib/pkgconfig/ +} diff --git a/packages/xorg-util-macros/util-macros-1.19.1_xorg-macros.m4.in.patch b/packages/xorg-util-macros/util-macros-1.19.1_xorg-macros.m4.in.patch new file mode 100644 index 000000000..afe036790 --- /dev/null +++ b/packages/xorg-util-macros/util-macros-1.19.1_xorg-macros.m4.in.patch @@ -0,0 +1,21 @@ +diff -uNr util-macros-1.19.1/xorg-macros.m4.in util-macros-1.19.1.mod/xorg-macros.m4.in +--- util-macros-1.19.1/xorg-macros.m4.in 2017-01-29 21:22:45.000000000 +0200 ++++ util-macros-1.19.1.mod/xorg-macros.m4.in 2017-11-24 13:21:36.220629554 +0200 +@@ -58,7 +58,7 @@ + AC_DEFUN([XORG_PROG_RAWCPP],[ + AC_REQUIRE([AC_PROG_CPP]) + AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], +- [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) ++ [$PATH:/data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/lib:/usr/bin:/usr/lib:/bin:/lib]) + + # Check for flag to avoid builtin definitions - assumes unix is predefined, + # which is not the best choice for supporting other OS'es, but covers most +@@ -917,7 +917,7 @@ + [[$ac_path_M4 -I. /dev/null > /dev/null 2>&1 && \ + ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]], + [AC_MSG_ERROR([could not find m4 that supports -I option])], +- [$PATH:/usr/gnu/bin])]) ++ [$PATH:/data/data/com.termux/files/usr/bin:/usr/bin:/bin])]) + + AC_SUBST([M4], [$ac_cv_path_M4]) + ]) # XORG_WITH_M4 diff --git a/packages/xorgproto/build.sh b/packages/xorgproto/build.sh new file mode 100644 index 000000000..e00cd459b --- /dev/null +++ b/packages/xorgproto/build.sh @@ -0,0 +1,28 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X.Org X11 Protocol headers" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=2019.2 +TERMUX_PKG_REVISION=3 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/archive/individual/proto/xorgproto-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=46ecd0156c561d41e8aa87ce79340910cdf38373b759e737fcbba5df508e7b8e +TERMUX_PKG_DEPENDS="xorg-util-macros" +TERMUX_PKG_CONFLICTS="x11-proto" +TERMUX_PKG_REPLACES="x11-proto" +TERMUX_PKG_NO_DEVELSPLIT=true +TERMUX_PKG_PLATFORM_INDEPENDENT=true + +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="-Dlegacy=true" + +TERMUX_PKG_RM_AFTER_INSTALL=" +include/X11/extensions/apple* +include/X11/extensions/windows* +include/X11/extensions/XKBgeom.h +lib/pkgconfig/applewmproto.pc +lib/pkgconfig/windowswmproto.pc +" + +termux_step_pre_configure() { + # Use meson instead of autotools. + rm -f "$TERMUX_PKG_SRCDIR"/configure +} diff --git a/packages/xorgproto/include-x11-Xos_r.h.patch b/packages/xorgproto/include-x11-Xos_r.h.patch new file mode 100644 index 000000000..eb524f332 --- /dev/null +++ b/packages/xorgproto/include-x11-Xos_r.h.patch @@ -0,0 +1,25 @@ +diff -uNr xorgproto-2019.1/include/X11/Xos_r.h xorgproto-2019.1.mod/include/X11/Xos_r.h +--- xorgproto-2019.1/include/X11/Xos_r.h 2019-06-20 06:13:03.000000000 +0300 ++++ xorgproto-2019.1.mod/include/X11/Xos_r.h 2019-06-29 23:32:10.617173769 +0300 +@@ -248,7 +248,7 @@ + */ + + #if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__) || \ +- defined(__APPLE__) || defined(__DragonFly__) ++ defined(__APPLE__) || defined(__DragonFly__) || defined(__ANDROID__) + static __inline__ void _Xpw_copyPasswd(_Xgetpwparams p) + { + memcpy(&(p).pws, (p).pwp, sizeof(struct passwd)); +@@ -261,11 +261,7 @@ + (p).len = strlen((p).pwp->pw_passwd); + strcpy((p).pws.pw_passwd,(p).pwp->pw_passwd); + +- (p).pws.pw_class = (p).pws.pw_passwd + (p).len + 1; +- (p).len = strlen((p).pwp->pw_class); +- strcpy((p).pws.pw_class, (p).pwp->pw_class); +- +- (p).pws.pw_gecos = (p).pws.pw_class + (p).len + 1; ++ (p).pws.pw_gecos = (p).pws.pw_passwd + (p).len + 1; + (p).len = strlen((p).pwp->pw_gecos); + strcpy((p).pws.pw_gecos, (p).pwp->pw_gecos); + diff --git a/packages/xorgproto/include-x11-Xpoll.h.in.patch b/packages/xorgproto/include-x11-Xpoll.h.in.patch new file mode 100644 index 000000000..bfa88cd3c --- /dev/null +++ b/packages/xorgproto/include-x11-Xpoll.h.in.patch @@ -0,0 +1,16 @@ +diff -uNr xorgproto-2018.4/include/X11/Xpoll.h.in xorgproto-2018.4.mod/include/X11/Xpoll.h.in +--- xorgproto-2018.4/include/X11/Xpoll.h.in 2018-02-28 18:45:07.000000000 +0200 ++++ xorgproto-2018.4.mod/include/X11/Xpoll.h.in 2018-09-28 13:19:06.115194995 +0300 +@@ -98,9 +98,10 @@ + + #define __X_FDS_BITS @USE_FDS_BITS@ + +-#ifndef __FDS_BITS +-# define __FDS_BITS(p) ((p)->__X_FDS_BITS) ++#ifdef __FDS_BITS ++# undef __FDS_BITS + #endif ++#define __FDS_BITS(p) ((p)->__X_FDS_BITS) + + #define __XFDS_BITS(p, n) (__FDS_BITS(p))[n] + diff --git a/packages/xorgproto/meson.build.patch b/packages/xorgproto/meson.build.patch new file mode 100644 index 000000000..cbdae12e2 --- /dev/null +++ b/packages/xorgproto/meson.build.patch @@ -0,0 +1,21 @@ +diff -uNr xorgproto-2019.1/meson.build xorgproto-2019.1.mod/meson.build +--- xorgproto-2019.1/meson.build 2019-06-20 06:13:03.000000000 +0300 ++++ xorgproto-2019.1.mod/meson.build 2019-06-29 22:00:10.215053101 +0300 +@@ -68,7 +68,7 @@ + filebase : pc[0], + description : pc[0] + ' headers', + version : pc[1], +- install_dir : get_option('datadir') + '/pkgconfig', ++ install_dir : '@TERMUX_PREFIX@/lib/pkgconfig', + subdirs : subdir, + ) + endforeach +@@ -88,7 +88,7 @@ + filebase : pc[0], + description : pc[0] + ' headers', + version : pc[1], +- install_dir : get_option('datadir') + '/pkgconfig' ++ install_dir : '@TERMUX_PREFIX@/lib/pkgconfig' + ) + endforeach + endif diff --git a/packages/xtrans/build.sh b/packages/xtrans/build.sh new file mode 100644 index 000000000..653835f81 --- /dev/null +++ b/packages/xtrans/build.sh @@ -0,0 +1,15 @@ +TERMUX_PKG_HOMEPAGE=https://xorg.freedesktop.org/ +TERMUX_PKG_DESCRIPTION="X transport library" +TERMUX_PKG_LICENSE="MIT" +TERMUX_PKG_MAINTAINER="Leonid Plyushch " +TERMUX_PKG_VERSION=1.4.0 +TERMUX_PKG_REVISION=5 +TERMUX_PKG_SRCURL=https://xorg.freedesktop.org/releases/individual/lib/xtrans-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773 +TERMUX_PKG_NO_DEVELSPLIT=true +TERMUX_PKG_PLATFORM_INDEPENDENT=true + +termux_step_post_make_install() { + mkdir -p ${TERMUX_PREFIX}/lib/pkgconfig + mv ${TERMUX_PREFIX}/share/pkgconfig/xtrans.pc ${TERMUX_PREFIX}/lib/pkgconfig +} diff --git a/packages/xtrans/xtrans-1.3.5_Xtransutil.c.patch b/packages/xtrans/xtrans-1.3.5_Xtransutil.c.patch new file mode 100644 index 000000000..44d7cfd39 --- /dev/null +++ b/packages/xtrans/xtrans-1.3.5_Xtransutil.c.patch @@ -0,0 +1,85 @@ +diff -uNr xtrans-1.3.5/Xtransutil.c xtrans-1.3.5.mod/Xtransutil.c +--- xtrans-1.3.5/Xtransutil.c 2014-09-12 21:32:47.000000000 +0300 ++++ xtrans-1.3.5.mod/Xtransutil.c 2018-06-15 19:15:52.525720899 +0300 +@@ -478,27 +478,6 @@ + } + /* Dir doesn't exist. Try to create it */ + +-#if !defined(WIN32) && !defined(__CYGWIN__) +- /* +- * 'sticky' bit requested: assume application makes +- * certain security implications. If effective user ID +- * is != 0: fail as we may not be able to meet them. +- */ +- if (geteuid() != 0) { +- if (mode & 01000) { +- prmsg(1, "mkdir: ERROR: euid != 0," +- "directory %s will not be created.\n", +- path); +-#ifdef FAIL_HARD +- return -1; +-#endif +- } else { +- prmsg(1, "mkdir: Cannot create %s with root ownership\n", +- path); +- } +- } +-#endif +- + #ifndef WIN32 + if (mkdir(path, mode) == 0) { + if (chmod(path, mode)) { +@@ -521,14 +500,9 @@ + + } else { + if (S_ISDIR(buf.st_mode)) { +- int updateOwner = 0; + int updateMode = 0; +- int updatedOwner = 0; + int updatedMode = 0; + int status = 0; +- /* Check if the directory's ownership is OK. */ +- if (buf.st_uid != 0) +- updateOwner = 1; + + /* + * Check if the directory's mode is OK. An exact match isn't +@@ -566,7 +540,7 @@ + * directory's owner and mode. Otherwise it isn't safe to attempt + * to do this. + */ +- if (updateMode || updateOwner) { ++ if (updateMode) { + int fd = -1; + struct stat fbuf; + if ((fd = open(path, O_RDONLY)) != -1) { +@@ -588,8 +562,6 @@ + close(fd); + return -1; + } +- if (updateOwner && fchown(fd, 0, 0) == 0) +- updatedOwner = 1; + if (updateMode && fchmod(fd, mode) == 0) + updatedMode = 1; + close(fd); +@@ -597,20 +569,6 @@ + } + #endif + +- if (updateOwner && !updatedOwner) { +-#ifdef FAIL_HARD +- if (status & FAIL_IF_NOT_ROOT) { +- prmsg(1, "mkdir: ERROR: Owner of %s must be set to root\n", +- path); +- return -1; +- } +-#endif +-#if !defined(__APPLE_CC__) && !defined(__CYGWIN__) +- prmsg(1, "mkdir: Owner of %s should be set to root\n", +- path); +-#endif +- } +- + if (updateMode && !updatedMode) { + #ifdef FAIL_HARD + if (status & FAIL_IF_NOMODE) { diff --git a/packages/xtrans/xtrans-1.4.0_Xtranslcl.c.patch b/packages/xtrans/xtrans-1.4.0_Xtranslcl.c.patch new file mode 100644 index 000000000..e15093c28 --- /dev/null +++ b/packages/xtrans/xtrans-1.4.0_Xtranslcl.c.patch @@ -0,0 +1,57 @@ +diff -uNr xtrans-1.4.0/Xtranslcl.c xtrans-1.4.0.mod/Xtranslcl.c +--- xtrans-1.4.0/Xtranslcl.c 2019-03-16 23:30:31.000000000 +0200 ++++ xtrans-1.4.0.mod/Xtranslcl.c 2019-05-19 00:54:20.390433328 +0300 +@@ -250,7 +250,7 @@ + #ifndef X11_t + #define X_STREAMS_DIR "/dev/X" + #else +-#define X_STREAMS_DIR "/tmp/.X11-pipe" ++#define X_STREAMS_DIR "@TERMUX_PREFIX@/tmp/.X11-pipe" + #endif + #endif + +@@ -260,7 +260,7 @@ + + #define PTSNODENAME "/dev/X/server." + #ifdef __sun +-#define NAMEDNODENAME "/tmp/.X11-pipe/X" ++#define NAMEDNODENAME "@TERMUX_PREFIX@/tmp/.X11-pipe/X" + #else + #define NAMEDNODENAME "/dev/X/Nserver." + +@@ -270,7 +270,7 @@ + #endif + #if defined(XIM_t) + #ifdef __sun +-#define NAMEDNODENAME "/tmp/.XIM-pipe/XIM" ++#define NAMEDNODENAME "@TERMUX_PREFIX@/tmp/.XIM-pipe/XIM" + #else + #define PTSNODENAME "/dev/X/XIM." + #define NAMEDNODENAME "/dev/X/NXIM." +@@ -280,7 +280,7 @@ + #endif + #if defined(FS_t) || defined (FONT_t) + #ifdef __sun +-#define NAMEDNODENAME "/tmp/.font-pipe/fs" ++#define NAMEDNODENAME "@TERMUX_PREFIX@/tmp/.font-pipe/fs" + #else + /* + * USL has already defined something here. We need to check with them +@@ -294,7 +294,7 @@ + #endif + #if defined(ICE_t) + #ifdef __sun +-#define NAMEDNODENAME "/tmp/.ICE-pipe/" ++#define NAMEDNODENAME "@TERMUX_PREFIX@/tmp/.ICE-pipe/" + #else + #define PTSNODENAME "/dev/X/ICE." + #define NAMEDNODENAME "/dev/X/NICE." +@@ -304,7 +304,7 @@ + #endif + #if defined(TEST_t) + #ifdef __sun +-#define NAMEDNODENAME "/tmp/.Test-unix/test" ++#define NAMEDNODENAME "@TERMUX_PREFIX@/tmp/.Test-unix/test" + #endif + #define PTSNODENAME "/dev/X/transtest." + #define NAMEDNODENAME "/dev/X/Ntranstest." diff --git a/packages/xtrans/xtrans-1.4.0_Xtranssock.c.patch b/packages/xtrans/xtrans-1.4.0_Xtranssock.c.patch new file mode 100644 index 000000000..d6046f44c --- /dev/null +++ b/packages/xtrans/xtrans-1.4.0_Xtranssock.c.patch @@ -0,0 +1,32 @@ +diff -uNr xtrans-1.4.0/Xtranssock.c xtrans-1.4.0.mod/Xtranssock.c +--- xtrans-1.4.0/Xtranssock.c 2019-03-16 23:30:31.000000000 +0200 ++++ xtrans-1.4.0.mod/Xtranssock.c 2019-05-19 00:52:00.404623112 +0300 +@@ -200,20 +200,20 @@ + + + #if defined(X11_t) +-#define UNIX_PATH "/tmp/.X11-unix/X" +-#define UNIX_DIR "/tmp/.X11-unix" ++#define UNIX_PATH "@TERMUX_PREFIX@/tmp/.X11-unix/X" ++#define UNIX_DIR "@TERMUX_PREFIX@/tmp/.X11-unix" + #endif /* X11_t */ + #if defined(XIM_t) +-#define UNIX_PATH "/tmp/.XIM-unix/XIM" +-#define UNIX_DIR "/tmp/.XIM-unix" ++#define UNIX_PATH "@TERMUX_PREFIX@/tmp/.XIM-unix/XIM" ++#define UNIX_DIR "@TERMUX_PREFIX@/tmp/.XIM-unix" + #endif /* XIM_t */ + #if defined(FS_t) || defined(FONT_t) +-#define UNIX_PATH "/tmp/.font-unix/fs" +-#define UNIX_DIR "/tmp/.font-unix" ++#define UNIX_PATH "@TERMUX_PREFIX@/tmp/.font-unix/fs" ++#define UNIX_DIR "@TERMUX_PREFIX@/tmp/.font-unix" + #endif /* FS_t || FONT_t */ + #if defined(ICE_t) +-#define UNIX_PATH "/tmp/.ICE-unix/" +-#define UNIX_DIR "/tmp/.ICE-unix" ++#define UNIX_PATH "@TERMUX_PREFIX@/tmp/.ICE-unix/" ++#define UNIX_DIR "@TERMUX_PREFIX@/tmp/.ICE-unix" + #endif /* ICE_t */ + +