diff --git a/packages/ncftp/build.sh b/packages/ncftp/build.sh new file mode 100644 index 0000000000..cea67b8888 --- /dev/null +++ b/packages/ncftp/build.sh @@ -0,0 +1,17 @@ +TERMUX_PKG_HOMEPAGE=https://www.ncftp.com/ +TERMUX_PKG_DESCRIPTION="A free set of programs that use the File Transfer Protocol" +# License: Clarified Artistic +TERMUX_PKG_LICENSE="custom" +TERMUX_PKG_LICENSE_FILE="doc/LICENSE.txt" +TERMUX_PKG_MAINTAINER="@termux" +TERMUX_PKG_VERSION=3.2.6 +TERMUX_PKG_SRCURL=https://www.ncftp.com/downloads/ncftp/ncftp-${TERMUX_PKG_VERSION}-src.tar.xz +TERMUX_PKG_SHA256=5f200687c05d0807690d9fb770327b226f02dd86155b49e750853fce4e31098d +TERMUX_PKG_DEPENDS="ncurses" +TERMUX_PKG_BUILD_IN_SRC=true + +termux_step_pre_configure() { + CFLAGS+=" -fcommon" + + export ac_cv_path_TAR=$TERMUX_PREFIX/bin/tar +} diff --git a/packages/ncftp/fix-hardcoded-paths.patch b/packages/ncftp/fix-hardcoded-paths.patch new file mode 100644 index 0000000000..6d135bf97c --- /dev/null +++ b/packages/ncftp/fix-hardcoded-paths.patch @@ -0,0 +1,149 @@ +--- a/libncftp/lglob.c ++++ b/libncftp/lglob.c +@@ -137,7 +137,7 @@ + * work for us. + */ + #ifdef HAVE_SNPRINTF +- (void) snprintf(cmd, sizeof(cmd) - 1, "%s -c \"%s %s %s\"", "/bin/sh", "/bin/ls", ++ (void) snprintf(cmd, sizeof(cmd) - 1, "%s -c \"%s %s %s\"", "@TERMUX_PREFIX@/bin/sh", "@TERMUX_PREFIX@/bin/ls", + "-d", pattern); + cmd[sizeof(cmd) - 1] = '\0'; + #else +--- a/libncftp/open.c ++++ b/libncftp/open.c +@@ -770,6 +770,7 @@ + char etc_line[256], *etc_cp; + + const char *etc_fnames[] = { ++#ifndef __ANDROID__ + "/etc/yellowdog-release", + "/etc/gentoo-release", + "/etc/turbolinux-release", +@@ -781,7 +782,8 @@ + "/etc/SuSE-release", + "/etc/fedora-release", + "/etc/redhat-release", /* Works for CentOS, too. */ +- "/etc/issue", ++#endif ++ "@TERMUX_PREFIX@/etc/issue", + NULL, + }; + +--- a/libncftp/u_gethome.c ++++ b/libncftp/u_gethome.c +@@ -117,7 +117,7 @@ + if ((Stat(dst, &st) >= 0) && (S_ISDIR(st.st_mode))) + return; + #else +- (void) Strncpy(dst, "/tmp", size); ++ (void) Strncpy(dst, "@TERMUX_PREFIX@/tmp", size); + if ((Stat(dst, &st) >= 0) && (S_ISDIR(st.st_mode))) + return; + #endif +--- a/ncftp/cmds.c ++++ b/ncftp/cmds.c +@@ -2005,7 +2005,7 @@ + (void) fflush(stdin); + outfp = OpenPager(); + +- (void) STRNCPY(incmd, "/bin/ls"); ++ (void) STRNCPY(incmd, "@TERMUX_PREFIX@/bin/ls"); + for (i=1, dashopts=0; i