libpopt: fix hardcoded paths
authorLeonid Plyushch <leonid.plyushch@gmail.com>
Tue, 12 Sep 2017 10:27:11 +0000 (13:27 +0300)
committerFredrik Fornwall <fredrik@fornwall.net>
Tue, 12 Sep 2017 11:48:41 +0000 (13:48 +0200)
packages/libpopt/build.sh
packages/libpopt/fix-hardcoded-paths.patch [new file with mode: 0644]

index a2bdf65..24a14fc 100644 (file)
@@ -1,7 +1,7 @@
 TERMUX_PKG_HOMEPAGE=http://www.linuxfromscratch.org/blfs/view/svn/general/popt.html
 TERMUX_PKG_DESCRIPTION="Library for parsing cmdline parameters"
 TERMUX_PKG_VERSION=1.16
-TERMUX_PKG_REVISION=1
+TERMUX_PKG_REVISION=2
 TERMUX_PKG_SRCURL=http://rpm5.org/files/popt/popt-${TERMUX_PKG_VERSION}.tar.gz
 TERMUX_PKG_SHA256=e728ed296fe9f069a0e005003c3d6b2dde3d9cad453422a10d6558616d304cc8
 TERMUX_PKG_DEPENDS="libandroid-glob"
diff --git a/packages/libpopt/fix-hardcoded-paths.patch b/packages/libpopt/fix-hardcoded-paths.patch
new file mode 100644 (file)
index 0000000..881a390
--- /dev/null
@@ -0,0 +1,27 @@
+diff -uNr popt-1.16/poptconfig.c popt-1.16.mod/poptconfig.c
+--- popt-1.16/poptconfig.c     2009-05-20 16:18:07.000000000 +0300
++++ popt-1.16.mod/poptconfig.c 2017-09-12 12:08:55.442990190 +0300
+@@ -499,7 +499,7 @@
+ int poptReadDefaultConfig(poptContext con, /*@unused@*/ UNUSED(int useEnv))
+ {
+     static const char _popt_sysconfdir[] = POPT_SYSCONFDIR "/popt";
+-    static const char _popt_etc[] = "/etc/popt";
++    static const char _popt_etc[] = "@TERMUX_PREFIX@/etc/popt";
+     char * home;
+     struct stat sb;
+     int rc = 0;               /* assume success */
+@@ -515,12 +515,12 @@
+     if (rc) goto exit;
+ #if defined(HAVE_GLOB_H)
+-    if (!stat("/etc/popt.d", &sb) && S_ISDIR(sb.st_mode)) {
++    if (!stat("@TERMUX_PREFIX@/etc/popt.d", &sb) && S_ISDIR(sb.st_mode)) {
+       const char ** av = NULL;
+       int ac = 0;
+       int i;
+-      if ((rc = poptGlob(con, "/etc/popt.d/*", &ac, &av)) == 0) {
++      if ((rc = poptGlob(con, "@TERMUX_PREFIX@/etc/popt.d/*", &ac, &av)) == 0) {
+           for (i = 0; rc == 0 && i < ac; i++) {
+               const char * fn = av[i];
+               if (fn == NULL || strstr(fn, ".rpmnew") || strstr(fn, ".rpmsave"))