Index: head/sysutils/duplicity/Makefile =================================================================== --- head/sysutils/duplicity/Makefile (revision 423221) +++ head/sysutils/duplicity/Makefile (revision 423222) @@ -1,100 +1,99 @@ # Created by: Gerhard Häring # $FreeBSD$ PORTNAME= duplicity -PORTVERSION= 0.7.09 +PORTVERSION= 0.7.10 CATEGORIES= sysutils MASTER_SITES= http://launchpad.net/duplicity/0.7-series/${PORTVERSION}/+download/ MAINTAINER= ports@FreeBSD.org COMMENT= Backup tool that uses librsync and GnuPG LIB_DEPENDS= librsync.so:net/librsync1 RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lockfile>=0:devel/py-lockfile USES= python:2 USE_PYTHON= autoplist distutils USE_LDCONFIG= yes +PORTDOCS= CHANGELOG COPYING README README-REPO README-LOG + OPTIONS_DEFINE= CLOUDFILES DOCS FTP FTPS GDOCS GIO NLS S3 OPTIONS_GROUP= GPG SSH OPTIONS_SINGLE= GPG OPTIONS_SINGLE_GPG= GNUPG GNUPG2 OPTIONS_GROUP_SSH= PARAMIKO PEXPECT OPTIONS_DEFAULT= FTP FTPS GNUPG PARAMIKO S3 -CLOUDFILES_DESC= Install CloudFiles backend -FTP_DESC= Install FTP backend -FTPS_DESC= Install FTPS backend -GDOCS_DESC= Install Google Docs backend -GIO_DESC= Install GIO backend -GPG_DESC= Install GnuPG -GNUPG_DESC= Install GnuPG 1 -GNUPG2_DESC= Install GnuPG 2 -S3_DESC= Install Amazon S3 backend -SSH_DESC= Install SSH/SCP/SFTP backend -PARAMIKO_DESC= Install python ssh implementation -PEXPECT_DESC= Install pexpect and use ssh binaries +CLOUDFILES_DESC= CloudFiles backend +FTP_DESC= FTP backend +FTPS_DESC= FTPS backend +GDOCS_DESC= Google Docs backend +GIO_DESC= GIO backend +GPG_DESC= GnuPG support +GNUPG_DESC= Use GnuPG 1 +GNUPG2_DESC= Use GnuPG 2 +S3_DESC= Amazon S3 backend +SSH_DESC= SSH/SCP/SFTP backend +PARAMIKO_DESC= python ssh implementation +PEXPECT_DESC= pexpect and use ssh binaries -PORTDOCS= CHANGELOG COPYING README README-REPO README-LOG - CLOUDFILES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cloudfiles>0:net/py-cloudfiles FTP_RUN_DEPENDS= ncftp>=3.2.2:ftp/ncftp3 FTPS_RUN_DEPENDS= lftp>=3.7.15:ftp/lftp GDOCS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gdata>0:devel/py-gdata GIO_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gobject>0:devel/py-gobject \ dbus>0:devel/dbus GNUPG_RUN_DEPENDS= gnupg1>=1.4.7:security/gnupg1 GNUPG2_RUN_DEPENDS= gpg2:security/gnupg NLS_USES= gettext PARAMIKO_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}paramiko>=1.7.7.1:security/py-paramiko -PEXPECT_RUN_DEPENDS= pexpect:misc/py-pexpect +PEXPECT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pexpect>0:misc/py-pexpect S3_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto>=1.6b:devel/py-boto -.include - -post-patch: -.if empty(PORT_OPTIONS:MNLS) +post-patch-NLS-off: @${REINPLACE_CMD} -e '56,67d' \ ${WRKSRC}/setup.py -.endif -.if empty(PORT_OPTIONS:MPARAMIKO) - @${FIND} ${WRKSRC}/${PORTNAME}/backends -type f -depth 1 -name '*ssh_paramiko*' -delete -.endif -.if empty(PORT_OPTIONS:MPEXPECT) - @${FIND} ${WRKSRC}/${PORTNAME}/backends -type f -depth 1 -name '*ssh_pexpect*' -delete -.endif -.if empty(PORT_OPTIONS:MFTP) + +post-patch-PARAMIKO-off: + @${FIND} ${WRKSRC}/${PORTNAME}/backends -type f -depth 1 \ + -name '*ssh_paramiko*' -delete + +post-patch-PEXPECT-off: + @${FIND} ${WRKSRC}/${PORTNAME}/backends -type f -depth 1 \ + -name '*ssh_pexpect*' -delete + +post-patch-FTP-off: @${RM} -f ${WRKSRC}/${PORTNAME}/backends/ftpbackend.py -.endif -.if empty(PORT_OPTIONS:MFTPS) + +post-patch-FTPS-off: @${RM} -f ${WRKSRC}/${PORTNAME}/backends/ftpsbackend.py -.endif -.if empty(PORT_OPTIONS:MS3) + +post-patch-S3-off: .for f in botobackend _boto_multi _boto_single @${RM} -f ${WRKSRC}/${PORTNAME}/backends/${f}.py .endfor -.endif -.if empty(PORT_OPTIONS:MGDOCS) + +post-patch-GDOCS-off: @${RM} -f ${WRKSRC}/${PORTNAME}/backends/gdocsbackend.py -.endif -.if empty(PORT_OPTIONS:MCLOUDFILES) + +post-patch-CLOUDFILES-off: .for f in cfbackend _cf_cloudfiles _cf_pyrax @${RM} -f ${WRKSRC}/${PORTNAME}/backends/${f}.py .endfor -.else + +post-patch-CLOUDFILES-on: # Make pycloudfiles the default backend for cloudfiles, as pyrax isn't in the Ports Collection yet # Use --cf-backend=pyrax arg when running duplicity to manually select pyrax as the backend @${REINPLACE_CMD} 's|"pyrax"|"cloudfiles"|' ${WRKSRC}/${PORTNAME}/globals.py -.endif -.if empty(PORT_OPTIONS:MGIO) + +post-patch-GIO-off: @${RM} -f ${WRKSRC}/${PORTNAME}/backends/giobackend.py -.endif post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/python2.7/site-packages/duplicity/_librsync.so ${MKDIR} ${STAGEDIR}${DOCSDIR} -.for f in ${PORTDOCS} - ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR} -.endfor + +post-install-DOCS-on: + ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|g} ${STAGEDIR}${DOCSDIR} .include Index: head/sysutils/duplicity/distinfo =================================================================== --- head/sysutils/duplicity/distinfo (revision 423221) +++ head/sysutils/duplicity/distinfo (revision 423222) @@ -1,3 +1,3 @@ -TIMESTAMP = 1469994443 -SHA256 (duplicity-0.7.09.tar.gz) = 431e7060ba1b028605f82aee2202543506998c386c7008cd9dfe975e9128a8b3 -SIZE (duplicity-0.7.09.tar.gz) = 1542198 +TIMESTAMP = 1475352375 +SHA256 (duplicity-0.7.10.tar.gz) = 485fef15526d163c061e00ec08de216cf7d652e67d41de5dc3bed9fb42214842 +SIZE (duplicity-0.7.10.tar.gz) = 1543523 Index: head/sysutils/duplicity/files/patch-setup.py =================================================================== --- head/sysutils/duplicity/files/patch-setup.py (revision 423221) +++ head/sysutils/duplicity/files/patch-setup.py (revision 423222) @@ -1,111 +1,111 @@ ---- setup.py.orig 2016-03-05 09:59:07.250354000 +0100 -+++ setup.py 2016-03-05 10:02:48.940832000 +0100 +--- setup.py.orig 2016-08-20 19:13:49 UTC ++++ setup.py @@ -23,7 +23,6 @@ import sys import os from setuptools import setup, Extension -from setuptools.command.test import test from setuptools.command.install import install from setuptools.command.sdist import sdist from distutils.command.build_scripts import build_scripts -@@ -35,6 +34,9 @@ +@@ -35,6 +34,9 @@ if sys.version_info[:2] < (2, 6) or sys. sys.exit(1) incdir_list = libdir_list = None +LOCALBASE = os.environ.get("LOCALBASE", "/usr/local") +incdir_list = ['%s/include' % LOCALBASE] +libdir_list = ['%s/lib/' % LOCALBASE] if os.name == 'posix': LIBRSYNC_DIR = os.environ.get('LIBRSYNC_DIR', '') -@@ -47,15 +49,9 @@ +@@ -47,15 +49,9 @@ if os.name == 'posix': incdir_list = [os.path.join(LIBRSYNC_DIR, 'include')] libdir_list = [os.path.join(LIBRSYNC_DIR, 'lib')] -data_files = [('share/man/man1', +data_files = [('man/man1', ['bin/duplicity.1', 'bin/rdiffdir.1']), - ('share/doc/duplicity-%s' % version_string, - ['COPYING', - 'README', - 'README-REPO', - 'README-LOG', - 'CHANGELOG']), ] top_dir = os.path.dirname(os.path.abspath(__file__)) -@@ -69,48 +65,9 @@ +@@ -69,48 +65,9 @@ for root, dirs, files in os.walk(os.path ('share/locale/%s/LC_MESSAGES' % lang, ["po/%s/duplicity.mo" % lang])) - -class TestCommand(test): - - def run(self): - # Make sure all modules are ready - build_cmd = self.get_finalized_command("build_py") - build_cmd.run() - # And make sure our scripts are ready - build_scripts_cmd = self.get_finalized_command("build_scripts") - build_scripts_cmd.run() - - # make symlinks for test data - if build_cmd.build_lib != top_dir: - for path in ['testfiles.tar.gz', 'gnupg']: - src = os.path.join(top_dir, 'testing', path) - target = os.path.join(build_cmd.build_lib, 'testing', path) - try: - os.symlink(src, target) - except Exception: - pass - - os.environ['PATH'] = "%s:%s" % ( - os.path.abspath(build_scripts_cmd.build_dir), - os.environ.get('PATH')) - - test.run(self) - - class InstallCommand(install): def run(self): - # Normally, install will call build(). But we want to delete the - # testing dir between building and installing. So we manually build - # and mark ourselves to skip building when we run() for real. - self.run_command('build') - self.skip_build = True - - # This should always be true, but just to make sure! - if self.build_lib != top_dir: - testing_dir = os.path.join(self.build_lib, 'testing') - os.system("rm -rf %s" % testing_dir) - install.run(self) -@@ -178,11 +135,7 @@ +@@ -177,11 +134,7 @@ setup(name="duplicity", url="http://duplicity.nongnu.org/index.html", packages=['duplicity', 'duplicity.backends', - 'duplicity.backends.pyrax_identity', - 'testing', - 'testing.functional', - 'testing.overrides', - 'testing.unit'], + 'duplicity.backends.pyrax_identity'], package_dir={"duplicity": "duplicity", "duplicity.backends": "duplicity/backends", }, ext_modules=[Extension("duplicity._librsync", -@@ -193,10 +146,7 @@ +@@ -192,10 +145,7 @@ setup(name="duplicity", scripts=['bin/rdiffdir', 'bin/duplicity'], data_files=data_files, install_requires=['lockfile'], - tests_require=['lockfile', 'mock', 'pexpect'], - test_suite='testing', - cmdclass={'test': TestCommand, - 'install': InstallCommand, + cmdclass={'install': InstallCommand, 'sdist': SDistCommand, 'build_scripts': BSCommand}, )