# # Copyright (C) 2007-2014 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=rsync PKG_VERSION:=3.2.3 PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://download.samba.org/pub/rsync/src PKG_HASH:=becc3c504ceea499f4167a260040ccf4d9f2ef9499ad5683c179a697146ce50e PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE_FILES:=COPYING PKG_CPE_ID:=cpe:/a:rsync:rsync PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk define Package/rsync SECTION:=net CATEGORY:=Network SUBMENU:=File Transfer TITLE:=Fast remote file copy program (like rcp) DEPENDS:=+libpopt +zlib +RSYNC_xattr:libattr +RSYNC_acl:libacl +RSYNC_zstd:libzstd $(ICONV_DEPENDS) URL:=https://rsync.samba.org/ MENU:=1 endef define Package/rsync/config source "$(SOURCE)/Config.in" endef TARGET_CFLAGS += $(if $(CONFIG_IPV6),-DINET6,) CONFIGURE_ARGS += \ --without-included-popt \ --without-included-zlib \ --disable-debug \ --disable-asm \ --disable-lz4 \ --disable-locale \ --disable-md2man \ --disable-openssl \ --disable-simd \ --disable-xxhash \ --$(if $(CONFIG_BUILD_NLS),en,dis)able-iconv \ --$(if $(CONFIG_BUILD_NLS),en,dis)able-iconv-open \ --$(if $(CONFIG_RSYNC_zstd),en,dis)able-zstd \ --$(if $(CONFIG_RSYNC_xattr),en,dis)able-xattr-support \ --$(if $(CONFIG_RSYNC_acl),en,dis)able-acl-support \ $(if $(CONFIG_IPV6),,--disable-ipv6) define Package/rsyncd SECTION:=net CATEGORY:=Network SUBMENU:=File Transfer TITLE:=Rsync daemon DEPENDS:=+rsync URL:=https://rsync.samba.org/ endef define Package/rsync/description rsync is a program that allows files to be copied to and from remote machines in much the same way as rcp. It has many more options than rcp, and uses the rsync remote-update protocol to greatly speed up file transfers when the destination file already exists. The rsync remote-update protocol allows rsync to transfer just the differences between two sets of files across the network link. endef define Package/rsync/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME) $(1)/usr/bin/ endef define Package/rsyncd/description rsyncd is a configuration file and initscript to utilize rsync as a daemon. It uses the same binary as rsync. endef define Package/rsyncd/conffiles /etc/rsyncd.conf endef define Package/rsyncd/install $(INSTALL_DIR) $(1)/etc $(INSTALL_DATA) ./files/rsyncd.conf $(1)/etc/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/rsyncd.init $(1)/etc/init.d/rsyncd endef $(eval $(call BuildPackage,rsync)) $(eval $(call BuildPackage,rsyncd))