rsync now depends on stuff in LOCALBASE. Previously, clang only needed to know about LOCALBASE if POPT or ICONV was enabled. When those options are off, xxhash and zstd were not found by configure. Also, a depend on libssl was missing, and there were some noop reinplaces. With hat: portmgr
113 lines
3.5 KiB
Makefile
113 lines
3.5 KiB
Makefile
# Created by: David O'Brien (obrien@cs.ucdavis.edu)
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= rsync
|
|
DISTVERSION= 3.2.2
|
|
CATEGORIES= net
|
|
MASTER_SITES= https://rsync.samba.org/ftp/rsync/ \
|
|
https://www.mirrorservice.org/sites/rsync.samba.org/ \
|
|
http://rsync.samba.org/ftp/rsync/ \
|
|
ftp://ftp.fu-berlin.de/pub/unix/network/rsync/ \
|
|
http://www.mirrorservice.org/sites/rsync.samba.org/
|
|
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
|
|
|
|
MAINTAINER= rodrigo@FreeBSD.org
|
|
COMMENT= Network file distribution/synchronization utility
|
|
|
|
LICENSE= GPLv3
|
|
|
|
LIB_DEPENDS= libxxhash.so:devel/xxhash \
|
|
libzstd.so:archivers/zstd
|
|
|
|
USES= cpe shebangfix ssl
|
|
SHEBANG_FILES= support/rrsync
|
|
|
|
CPE_VENDOR= samba
|
|
CPE_PRODUCT= rsync
|
|
|
|
PATCH_STRIP= -p1
|
|
GNU_CONFIGURE= yes
|
|
USE_RC_SUBR= rsyncd
|
|
SUB_LIST= NAME=rsyncd
|
|
|
|
INSTALL_TARGET= install-strip
|
|
TEST_TARGET= check
|
|
|
|
CONFIGURE_ARGS= --disable-debug --enable-ipv6 \
|
|
--with-rsyncd-conf=${ETCDIR}/rsyncd.conf
|
|
CPPFLAGS+= -I${LOCALBASE}/include
|
|
LDFLAGS+= -L${LOCALBASE}/lib
|
|
|
|
PORTDOCS= NEWS.md README.md csprotocol.txt tech_report.tex
|
|
|
|
# define options
|
|
OPTIONS_DEFINE= DOCS POPT_PORT ZLIB_BASE SSH ICONV
|
|
OPTIONS_RADIO= PTS
|
|
OPTIONS_RADIO_PTS= TIMELIMIT RENAMED FLAGS ATIMES ACL
|
|
|
|
# options provided upstream
|
|
POPT_PORT_DESC= Use popt from devel/popt instead of bundled one
|
|
ZLIB_BASE_DESC= Use zlib from base instead of bundled one
|
|
SSH_DESC= Use SSH instead of RSH
|
|
|
|
# options provided by patch (mutually exclusive)
|
|
PTS_DESC= Functionality provided by third party patches
|
|
TIMELIMIT_DESC= Time limit patch
|
|
RENAMED_DESC= Add support for renamed file detection
|
|
FLAGS_DESC= File system flags support patch, adds --fileflags
|
|
ATIMES_DESC= Preserve access times, adds --atimes (BROKEN)
|
|
ACL_DESC= Add backward-compatibility for the --acls option
|
|
|
|
# define default options
|
|
OPTIONS_DEFAULT=FLAGS ICONV SSH
|
|
|
|
ZLIB_BASE_CONFIGURE_ON= --with-included-zlib=no
|
|
TIMELIMIT_EXTRA_PATCHES= ${WRKSRC}/patches/time-limit.diff
|
|
ATIMES_EXTRA_PATCHES= ${WRKSRC}/patches/atimes.diff
|
|
FLAGS_EXTRA_PATCHES= ${WRKSRC}/patches/fileflags.diff \
|
|
${FILESDIR}/extrapatch-main.c
|
|
RENAMED_EXTRA_PATCHES= ${WRKSRC}/patches/detect-renamed.diff
|
|
ACL_EXTRA_PATCHES= ${WRKSRC}/patches/acls.diff \
|
|
${FILESDIR}/extrapatch-acl
|
|
|
|
ICONV_USES= iconv:translit
|
|
ICONV_CONFIGURE_ENABLE= iconv iconv-open
|
|
|
|
POPT_PORT_LIB_DEPENDS= libpopt.so:devel/popt
|
|
|
|
POPT_PORT_CONFIGURE_OFF= --with-included-popt
|
|
|
|
SSH_CONFIGURE_ON= --with-rsh=ssh
|
|
SSH_CONFIGURE_OFF= --with-rsh=rsh
|
|
|
|
ACL_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
ATIMES_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
FLAGS_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
ICONV_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
RENAMED_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
TIMELIMIT_DISTFILES= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
|
|
.if make(makesum)
|
|
DISTFILES+= ${PORTNAME}-patches-${DISTVERSION}${EXTRACT_SUFX}
|
|
.endif
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if empty(ICONV_LIB) || ! ${PORT_OPTIONS:MICONV}
|
|
CONFIGURE_ARGS+=ac_cv_search_libiconv_open=no
|
|
.endif
|
|
|
|
post-patch:
|
|
@${REINPLACE_CMD} -e 's:/etc/:${ETCDIR}/:g' \
|
|
${WRKSRC}/rsync.1 ${WRKSRC}/rsyncd.conf.5
|
|
@${REINPLACE_CMD} -e 's|/usr/bin/rsync|${PREFIX}/bin/rsync|g' ${WRKSRC}/support/rrsync
|
|
|
|
post-install:
|
|
@${MKDIR} ${STAGEDIR}${ETCDIR}
|
|
${INSTALL_DATA} ${FILESDIR}/rsyncd.conf.sample ${STAGEDIR}${ETCDIR}/
|
|
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
|
${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}
|
|
${INSTALL_SCRIPT} ${WRKSRC}/support/rrsync ${STAGEDIR}${PREFIX}/sbin
|
|
|
|
.include <bsd.port.post.mk>
|