2 # Copyright (C) 2008-2014 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
13 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
14 PKG_SOURCE_URL
:=http
://lftp.yar.ru
/ftp \ http
://lftp.cybermirror.org \ http
://lftp.cybermirror.org
/old
15 PKG_MD5SUM
:=fc5f4e3b45c9011a193eb8c0c12eb2eb
18 PKG_LICENSE_FILES
:=COPYING
20 include $(INCLUDE_DIR
)/uclibc
++.mk
21 include $(INCLUDE_DIR
)/package.mk
24 SUBMENU
:=File Transfer
27 DEPENDS
:=+libncurses
+libopenssl
+libreadline
$(CXX_DEPENDS
) +libexpat
28 TITLE
:=a sophisticated file transfer program with command line interface.
29 MAINTAINER
:=Federico Di Marco
<fededim@gmail.com
>
30 URL
:=http
://lftp.yar.ru
/
33 define Package
/lftp
/description
34 LFTP is a sophisticated file transfer program with command line interface. It supports FTP
, HTTP
, FISH
, SFTP
, HTTPS and FTPS protocols. GNU Readline library is used for input.
35 Every operation in lftp is reliable
, that is any non-fatal error is handled and the operation is retried automatically. So if downloading breaks
, it will be restarted from the point automatically. Even if ftp server does not support REST command
, lftp will try to retrieve the file from the very beginning until the file is transferred completely. This is useful for dynamic-ip machines which change their IP addresses quite often
, and for sites with very bad internet connectivity.
37 If you exit lftp when some jobs are not finished yet
, lftp will move itself to nohup mode in background. The same happens when you have a real modem hangup or when you close an xterm.
39 lftp has shell-like command syntax allowing you to launch several commands in parallel in background
(&). It is also possible to group commands within
() and execute them in background. All background jobs are executed in the same single process. You can bring a foreground job to background with ^Z
(c-z
) and back with command
`wait' (or `fg
' which is alias to `wait'). To list running jobs
, use command
`jobs'. Some commands allow redirecting their output (cat, ls, ...) to file or via pipe to external command. Commands can be executed conditionally based on termination status of previous command (&&, ||).
41 lftp has builtin mirror which can download or update a whole directory tree. There is also reverse mirror (mirror -R) which uploads or updates a directory tree on server.
43 There is command `at
' to launch a job at specified time in current context, command `queue' to queue commands for sequential execution for current server
, and much more.
45 LFTP supports IPv6 for both FTP and HTTP protocols. For FTP protocol it uses method described in RFC2428.
47 Other low level stuff supported
: ftp proxy
, http proxy
, ftp over http
, opie
/skey
, fxp transfers
, socks.
49 LFTP supports secure versions of the protocols FTP and HTTP
: FTPS
(explicit and implicit
) and HTTPS. LFTP needs to be linked with an SSL library to support them. GNU TLS and OpenSSL are both supported
as SSL backend.
53 --without-libiconv-prefix \
54 --without-libintl-prefix \
58 --with-openssl
="$(STAGING_DIR)/usr" \
62 # LIBS="-lz -lutil -lcurses -ldl" \
63 # i_cv_posix_fallocate_works=no
68 define Package
/lftp
/install
69 $(INSTALL_DIR
) $(1)/usr
/bin
70 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/src
/lftp
$(1)/usr
/bin
/
73 $(eval
$(call BuildPackage
,lftp
))