Browse Source

rsync: enable selecting bundled or system zlib

rsync, by default, includes a patched zlib within its source tarball. The patch
enables a better compression ratio for rsync streams. However, the client and
server need the same featureset in their zlib in order to understand the
compression stream, or the server will abort the transfer. Older versions have
no understanding of the new compression standard used.

This patch allows the builder to choose whether to use the bundled or system
zlib. It defautls to using the system zlib, as is the default before this
patch.

Signed-off-by: Ian Leonard <antonlacon@gmail.com>
lilik-openwrt-22.03
Ian Leonard 10 years ago
parent
commit
0264b06472
2 changed files with 25 additions and 7 deletions
  1. +13
    -0
      net/rsync/Config.in
  2. +12
    -7
      net/rsync/Makefile

+ 13
- 0
net/rsync/Config.in View File

@ -9,4 +9,17 @@ if PACKAGE_rsync
bool bool
prompt "Enable ACL support" prompt "Enable ACL support"
default n default n
config RSYNC_zlib
bool
prompt "Enable system zlib"
help
Use the system's zlib library instead of rsync's internal copy. Enabling
this may create compatibility errors when using compression with older
clients, or those using the current default of the bundled zlib.
rsync's upstream default is to use their bundled zlib. OpenWrt uses the
system zlib for space reasons. The system zlib will eventually become
default for upstream as well.
default y
endif endif

+ 12
- 7
net/rsync/Makefile View File

@ -29,7 +29,7 @@ define Package/rsync
CATEGORY:=Network CATEGORY:=Network
SUBMENU:=File Transfer SUBMENU:=File Transfer
TITLE:=Fast remote file copy program (like rcp) TITLE:=Fast remote file copy program (like rcp)
DEPENDS:=+libpopt +zlib +RSYNC_xattr:libattr +RSYNC_acl:libacl
DEPENDS:=+libpopt +RSYNC_xattr:libattr +RSYNC_acl:libacl +RSYNC_zlib:zlib
URL:=http://rsync.samba.org/ URL:=http://rsync.samba.org/
MENU:=1 MENU:=1
endef endef
@ -38,6 +38,11 @@ define Package/rsync/config
source "$(SOURCE)/Config.in" source "$(SOURCE)/Config.in"
endef endef
CONFIGURE_ARGS += \
--with-included-popt=no \
--disable-debug \
--disable-locale \
ifeq ($(CONFIG_RSYNC_xattr),y) ifeq ($(CONFIG_RSYNC_xattr),y)
CONFIGURE_ARGS+= --enable-xattr-support CONFIGURE_ARGS+= --enable-xattr-support
else else
@ -50,6 +55,12 @@ else
CONFIGURE_ARGS+= --disable-acl-support CONFIGURE_ARGS+= --disable-acl-support
endif endif
ifeq ($(CONFIG_RSYNC_zlib),y)
CONFIGURE_ARGS+= --with-included-zlib=no
else
CONFIGURE_ARGS+= --with-included-zlib=yes
endif
define Package/rsyncd define Package/rsyncd
SECTION:=net SECTION:=net
CATEGORY:=Network CATEGORY:=Network
@ -69,12 +80,6 @@ define Package/rsync/description
between two sets of files across the network link. between two sets of files across the network link.
endef endef
CONFIGURE_ARGS += \
--with-included-popt=no \
--with-included-zlib=no \
--disable-debug \
--disable-locale \
define Package/rsync/install define Package/rsync/install
$(INSTALL_DIR) $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME) $(1)/usr/bin/ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME) $(1)/usr/bin/


Loading…
Cancel
Save