diff --git a/packages/glib/build.sh b/packages/glib/build.sh index e85b1efcb..f38e97e0d 100755 --- a/packages/glib/build.sh +++ b/packages/glib/build.sh @@ -1,6 +1,7 @@ TERMUX_PKG_HOMEPAGE=https://developer.gnome.org/glib/ TERMUX_PKG_DESCRIPTION="Library providing core building blocks for libraries and applications written in C" TERMUX_PKG_VERSION=2.56.1 +TERMUX_PKG_REVISION=1 TERMUX_PKG_SHA256=40ef3f44f2c651c7a31aedee44259809b6f03d3d20be44545cd7d177221c0b8d TERMUX_PKG_SRCURL=https://ftp.gnome.org/pub/gnome/sources/glib/${TERMUX_PKG_VERSION:0:4}/glib-${TERMUX_PKG_VERSION}.tar.xz # libandroid-support to get langinfo.h in include path. diff --git a/packages/glib/fix-hardcoded-paths.patch b/packages/glib/fix-hardcoded-paths.patch index 98fa3af5e..559a09b2c 100644 --- a/packages/glib/fix-hardcoded-paths.patch +++ b/packages/glib/fix-hardcoded-paths.patch @@ -1,7 +1,19 @@ -diff -uNr glib-2.52.3/gio/gdbusprivate.c glib-2.52.3.mod/gio/gdbusprivate.c ---- glib-2.52.3/gio/gdbusprivate.c 2017-06-22 15:52:49.000000000 +0300 -+++ glib-2.52.3.mod/gio/gdbusprivate.c 2017-09-12 11:53:44.482990841 +0300 -@@ -2075,11 +2075,11 @@ +diff -uNr glib-2.56.1/gio/gdbusaddress.c glib-2.56.1.mod/gio/gdbusaddress.c +--- glib-2.56.1/gio/gdbusaddress.c 2018-02-06 17:44:20.000000000 +0200 ++++ glib-2.56.1.mod/gio/gdbusaddress.c 2018-06-19 14:33:32.367220998 +0300 +@@ -1624,7 +1624,7 @@ + ret = g_strdup (g_getenv ("DBUS_SYSTEM_BUS_ADDRESS")); + if (ret == NULL) + { +- ret = g_strdup ("unix:path=/var/run/dbus/system_bus_socket"); ++ ret = g_strdup ("unix:path=@TERMUX_PREFIX@/var/run/dbus/system_bus_socket"); + } + break; + +diff -uNr glib-2.56.1/gio/gdbusprivate.c glib-2.56.1.mod/gio/gdbusprivate.c +--- glib-2.56.1/gio/gdbusprivate.c 2018-04-07 05:10:22.000000000 +0300 ++++ glib-2.56.1.mod/gio/gdbusprivate.c 2018-06-19 14:38:52.253904135 +0300 +@@ -2098,17 +2098,17 @@ /* TODO: use PACKAGE_LOCALSTATEDIR ? */ ret = NULL; first_error = NULL; @@ -15,9 +27,16 @@ diff -uNr glib-2.52.3/gio/gdbusprivate.c glib-2.52.3.mod/gio/gdbusprivate.c &ret, NULL, NULL)) -diff -uNr glib-2.52.3/gio/gnetworking.h.in glib-2.52.3.mod/gio/gnetworking.h.in ---- glib-2.52.3/gio/gnetworking.h.in 2017-06-22 15:52:49.000000000 +0300 -+++ glib-2.52.3.mod/gio/gnetworking.h.in 2017-09-12 11:53:44.492990841 +0300 + { + g_propagate_prefixed_error (error, first_error, +- _("Unable to load /var/lib/dbus/machine-id or /etc/machine-id: ")); ++ _("Unable to load @TERMUX_PREFIX@/var/lib/dbus/machine-id or @TERMUX_PREFIX@/etc/machine-id: ")); + } + else + { +diff -uNr glib-2.56.1/gio/gnetworking.h.in glib-2.56.1.mod/gio/gnetworking.h.in +--- glib-2.56.1/gio/gnetworking.h.in 2017-07-14 02:03:38.000000000 +0300 ++++ glib-2.56.1.mod/gio/gnetworking.h.in 2018-06-19 14:33:00.180552674 +0300 @@ -55,7 +55,7 @@ #endif @@ -27,10 +46,10 @@ diff -uNr glib-2.52.3/gio/gnetworking.h.in glib-2.52.3.mod/gio/gnetworking.h.in #endif #ifndef CMSG_LEN -diff -uNr glib-2.52.3/gio/gunixmounts.c glib-2.52.3.mod/gio/gunixmounts.c ---- glib-2.52.3/gio/gunixmounts.c 2017-06-22 15:52:54.000000000 +0300 -+++ glib-2.52.3.mod/gio/gunixmounts.c 2017-09-12 11:53:44.492990841 +0300 -@@ -443,7 +443,7 @@ +diff -uNr glib-2.56.1/gio/gunixmounts.c glib-2.56.1.mod/gio/gunixmounts.c +--- glib-2.56.1/gio/gunixmounts.c 2018-04-07 05:10:22.000000000 +0300 ++++ glib-2.56.1.mod/gio/gunixmounts.c 2018-06-19 14:42:12.380581105 +0300 +@@ -522,7 +522,7 @@ return _PATH_MOUNTED; # endif #else @@ -39,7 +58,7 @@ diff -uNr glib-2.52.3/gio/gunixmounts.c glib-2.52.3.mod/gio/gunixmounts.c #endif } -@@ -561,7 +561,7 @@ +@@ -648,7 +648,7 @@ mountinfo_path = _PATH_MOUNTED; # endif #else @@ -48,7 +67,7 @@ diff -uNr glib-2.52.3/gio/gunixmounts.c glib-2.52.3.mod/gio/gunixmounts.c #endif return mountinfo_path; -@@ -852,7 +852,7 @@ +@@ -939,7 +939,7 @@ #elif defined(VFSTAB) return VFSTAB; #else @@ -57,7 +76,7 @@ diff -uNr glib-2.52.3/gio/gunixmounts.c glib-2.52.3.mod/gio/gunixmounts.c #endif #endif } -@@ -2702,7 +2702,7 @@ +@@ -2894,7 +2894,7 @@ /* see if device with similar major:minor as /dev/root is mention * in /etc/mtab (it usually is) */ @@ -66,10 +85,22 @@ diff -uNr glib-2.52.3/gio/gunixmounts.c glib-2.52.3.mod/gio/gunixmounts.c if (f != NULL) { struct mntent *entp; -diff -uNr glib-2.52.3/glib/gcharset.c glib-2.52.3.mod/glib/gcharset.c ---- glib-2.52.3/glib/gcharset.c 2017-06-22 15:52:49.000000000 +0300 -+++ glib-2.52.3.mod/glib/gcharset.c 2017-09-12 11:53:44.502990841 +0300 -@@ -293,7 +293,7 @@ +diff -uNr glib-2.56.1/gio/xdgmime/xdgmime.c glib-2.56.1.mod/gio/xdgmime/xdgmime.c +--- glib-2.56.1/gio/xdgmime/xdgmime.c 2018-03-12 18:23:37.000000000 +0200 ++++ glib-2.56.1.mod/gio/xdgmime/xdgmime.c 2018-06-19 14:43:59.737253299 +0300 +@@ -253,7 +253,7 @@ + + xdg_data_dirs = getenv ("XDG_DATA_DIRS"); + if (xdg_data_dirs == NULL) +- xdg_data_dirs = "/usr/local/share/:/usr/share/"; ++ xdg_data_dirs = "@TERMUX_PREFIX@/local/share/:@TERMUX_PREFIX@/share/"; + + ptr = xdg_data_dirs; + +diff -uNr glib-2.56.1/glib/gcharset.c glib-2.56.1.mod/glib/gcharset.c +--- glib-2.56.1/glib/gcharset.c 2018-04-07 05:10:22.000000000 +0300 ++++ glib-2.56.1.mod/glib/gcharset.c 2018-06-19 14:33:00.183886007 +0300 +@@ -297,7 +297,7 @@ if (g_once_init_enter (&alias_table)) { GHashTable *table = g_hash_table_new (g_str_hash, g_str_equal); @@ -78,10 +109,10 @@ diff -uNr glib-2.52.3/glib/gcharset.c glib-2.52.3.mod/glib/gcharset.c g_once_init_leave (&alias_table, table); } -diff -uNr glib-2.52.3/glib/gspawn.c glib-2.52.3.mod/glib/gspawn.c ---- glib-2.52.3/glib/gspawn.c 2017-06-22 15:52:49.000000000 +0300 -+++ glib-2.52.3.mod/glib/gspawn.c 2017-09-12 11:53:44.502990841 +0300 -@@ -1627,7 +1627,7 @@ +diff -uNr glib-2.56.1/glib/gspawn.c glib-2.56.1.mod/glib/gspawn.c +--- glib-2.56.1/glib/gspawn.c 2018-03-12 18:23:37.000000000 +0200 ++++ glib-2.56.1.mod/glib/gspawn.c 2018-06-19 14:34:32.527224095 +0300 +@@ -1682,7 +1682,7 @@ new_argv = g_new0 (gchar*, argc + 2); /* /bin/sh and NULL */ @@ -90,30 +121,39 @@ diff -uNr glib-2.52.3/glib/gspawn.c glib-2.52.3.mod/glib/gspawn.c new_argv[1] = (char *) file; while (argc > 0) { -diff -uNr glib-2.52.3/glib/gutils.c glib-2.52.3.mod/glib/gutils.c ---- glib-2.52.3/glib/gutils.c 2017-06-22 15:52:49.000000000 +0300 -+++ glib-2.52.3.mod/glib/gutils.c 2017-09-12 11:53:44.512990841 +0300 -@@ -375,7 +375,7 @@ +@@ -1761,7 +1761,7 @@ + * what to search if PATH is unset. POSIX may, dunno. + */ + +- path = "/bin:/usr/bin:."; ++ path = "@TERMUX_PREFIX@/bin:@TERMUX_PREFIX@/bin/applets:."; + } + + len = strlen (file) + 1; +diff -uNr glib-2.56.1/glib/gutils.c glib-2.56.1.mod/glib/gutils.c +--- glib-2.56.1/glib/gutils.c 2018-01-08 23:34:19.000000000 +0200 ++++ glib-2.56.1.mod/glib/gutils.c 2018-06-19 14:35:11.100559415 +0300 +@@ -378,7 +378,7 @@ * what to search if PATH is unset. POSIX may, dunno. */ - path = "/bin:/usr/bin:."; -+ path = "@TERMUX_PREFIX@/bin:@TERMUX_PREFIX@/bin/applets:/system/xbin:/system/bin:."; ++ path = "@TERMUX_PREFIX@/bin:@TERMUX_PREFIX@/bin/applets:."; } #else n = GetModuleFileNameW (NULL, wfilename, MAXPATHLEN); -@@ -1959,7 +1959,7 @@ - gchar *data_dirs = (gchar *) g_getenv ("XDG_DATA_DIRS"); +@@ -2028,7 +2028,7 @@ + #ifndef G_OS_WIN32 if (!data_dirs || !data_dirs[0]) - data_dirs = "/usr/local/share/:/usr/share/"; + data_dirs = "@TERMUX_PREFIX@/share/"; data_dir_vector = g_strsplit (data_dirs, G_SEARCHPATH_SEPARATOR_S, 0); - #endif -@@ -2023,7 +2023,7 @@ - conf_dirs = (gchar *) g_getenv ("XDG_CONFIG_DIRS"); - + #else +@@ -2104,7 +2104,7 @@ + } + #else if (!conf_dirs || !conf_dirs[0]) - conf_dirs = "/etc/xdg"; + conf_dirs = "@TERMUX_PREFIX@/etc/xdg";