Import of pkgsrc-2014Q1
This commit is contained in:
@@ -11,7 +11,7 @@ It uses the packfile format from git (the open source version control system),
|
||||
so you can access the stored data even if you don't like bup's user interface.
|
||||
|
||||
Unlike git, it writes packfiles directly (instead of having a separate garbage
|
||||
collection/repacking stage) so it's fast even with gratuitously huge amounts of
|
||||
collection/repacking stage) so it's fast even with gratuitously huge amounts of
|
||||
data. bup's improved index formats also allow you to track far more filenames
|
||||
than git (millions) and keep track of far more objects (hundreds or thousands of
|
||||
gigabytes).
|
||||
|
||||
@@ -1,31 +1,26 @@
|
||||
# $NetBSD: Makefile,v 1.9 2013/05/31 12:41:59 wiz Exp $
|
||||
#
|
||||
# $NetBSD: Makefile,v 1.16 2014/03/19 17:50:00 gdt Exp $
|
||||
|
||||
DISTNAME= bup-0.25rc1
|
||||
PKGREVISION= 2
|
||||
DISTNAME= bup-0.25
|
||||
PKGREVISION= 3
|
||||
CATEGORIES= sysutils
|
||||
MASTER_SITES= # manually packaged since master site is git repository
|
||||
# and only available via https
|
||||
# https://github.com/apenwarr/bup/tarball/
|
||||
# https://github.com/bup/bup/releases/
|
||||
# doc tarball: switch to "man" branch before downloading
|
||||
# latest apenwarr doc tarball is for 0.24b
|
||||
# bup-man-0.24b.tar.gz
|
||||
# use lelutin one instead
|
||||
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} lelutin-bup-7e0bc2e.zip
|
||||
# ${DISTNAME:S/bup/bup-man/}${EXTRACT_SUFX}
|
||||
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME:S/bup/bup-man/}.zip
|
||||
|
||||
MAINTAINER= pkgsrc-users@NetBSD.org
|
||||
HOMEPAGE= http://github.com/apenwarr/bup
|
||||
MAINTAINER= wiz@NetBSD.org
|
||||
HOMEPAGE= http://github.com/bup/bup
|
||||
COMMENT= Highly efficient file backup system based on the git packfile format
|
||||
LICENSE= gnu-gpl-v2
|
||||
|
||||
DEPENDS+= par2-[0-9]*:../../archivers/par2
|
||||
DEPENDS+= ${PYPKGPREFIX}-readline-[0-9]*:../../devel/py-readline
|
||||
DEPENDS+= scmgit-base-[0-9]*:../../devel/scmgit-base
|
||||
DEPENDS+= git-base-[0-9]*:../../devel/git-base
|
||||
|
||||
# needs changing on each update
|
||||
DOCDIR= ${WRKDIR}/lelutin-bup-7e0bc2e
|
||||
WRKSRC= ${WRKDIR}/apenwarr-bup-4525252
|
||||
PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-fuse-bindings
|
||||
|
||||
DOCDIR= ${WRKDIR}/bup-man
|
||||
|
||||
TEST_TARGET= test
|
||||
|
||||
@@ -33,9 +28,10 @@ MAKE_FLAGS+= PREFIX=${PREFIX}
|
||||
MAKE_FLAGS+= PYTHON=${PYTHONBIN}
|
||||
MAKE_FLAGS+= MANDIR=${DESTDIR}${PREFIX}/${PKGMANDIR}
|
||||
|
||||
USE_TOOLS+= gmake perl
|
||||
USE_TOOLS+= bash gmake perl
|
||||
REPLACE_PERL= format-subst.pl wvtestrun
|
||||
REPLACE_PYTHON+= cmd/bloom-cmd.py
|
||||
REPLACE_PYTHON+= cmd/cat-file-cmd.py
|
||||
REPLACE_PYTHON+= cmd/daemon-cmd.py
|
||||
REPLACE_PYTHON+= cmd/damage-cmd.py
|
||||
REPLACE_PYTHON+= cmd/drecurse-cmd.py
|
||||
@@ -87,11 +83,41 @@ REPLACE_PYTHON+= lib/tornado/wsgi.py
|
||||
REPLACE_PYTHON+= main.py
|
||||
REPLACE_PYTHON+= wvtest.py
|
||||
|
||||
REPLACE_PYTHON+= t/hardlink-sets
|
||||
REPLACE_PYTHON+= t/id-other-than
|
||||
REPLACE_PYTHON+= t/mksock
|
||||
REPLACE_PYTHON+= t/root-status
|
||||
REPLACE_PYTHON+= t/unknown-owner
|
||||
|
||||
SUBST_CLASSES+= python-c
|
||||
SUBST_SED.python-c+= -e 's,python -c,${PYTHONBIN} -c,'
|
||||
SUBST_STAGE.python-c= pre-configure
|
||||
SUBST_FILES.python-c+= t/lib.sh
|
||||
SUBST_FILES.python-c+= t/test-meta.sh
|
||||
SUBST_MESSAGE.python-c= Fixing python executable in tests.
|
||||
|
||||
REPLACE_BASH+= cmd/import-rdiff-backup-cmd.sh
|
||||
REPLACE_BASH+= t/compare-trees
|
||||
REPLACE_BASH+= t/configure-sampledata
|
||||
REPLACE_BASH+= t/force-delete
|
||||
REPLACE_BASH+= t/subtree-hash
|
||||
REPLACE_BASH+= t/test-cat-file.sh
|
||||
REPLACE_BASH+= t/test-command-without-init-fails.sh
|
||||
REPLACE_BASH+= t/test-index-check-device.sh
|
||||
REPLACE_BASH+= t/test-meta.sh
|
||||
REPLACE_BASH+= t/test-redundant-saves.sh
|
||||
REPLACE_BASH+= t/test-restore-single-file.sh
|
||||
REPLACE_BASH+= t/test-rm-between-index-and-save.sh
|
||||
REPLACE_BASH+= t/test-save-creates-no-unrefs.sh
|
||||
REPLACE_BASH+= t/test.sh
|
||||
REPLACE_BASH+= wvtest-bup.sh
|
||||
|
||||
post-install:
|
||||
${INSTALL_DATA} ${DOCDIR}/*.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
|
||||
${INSTALL_DATA} ${WRKSRC}/DESIGN ${DESTDIR}${PREFIX}/share/doc/bup
|
||||
${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${PREFIX}/share/doc/bup
|
||||
|
||||
.include "../../filesystems/py-fuse-bindings/buildlink3.mk"
|
||||
.include "options.mk"
|
||||
|
||||
.include "../../lang/python/application.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
@comment $NetBSD: PLIST,v 1.3 2012/09/04 13:43:15 wiz Exp $
|
||||
@comment $NetBSD: PLIST,v 1.4 2013/12/31 11:03:12 wiz Exp $
|
||||
bin/bup
|
||||
lib/bup/bup/__init__.py
|
||||
lib/bup/bup/_helpers.so
|
||||
@@ -10,6 +10,7 @@ lib/bup/bup/drecurse.py
|
||||
lib/bup/bup/git.py
|
||||
lib/bup/bup/hashsplit.py
|
||||
lib/bup/bup/helpers.py
|
||||
lib/bup/bup/hlinkdb.py
|
||||
lib/bup/bup/index.py
|
||||
lib/bup/bup/ls.py
|
||||
lib/bup/bup/metadata.py
|
||||
@@ -22,6 +23,7 @@ lib/bup/bup/vfs.py
|
||||
lib/bup/bup/vint.py
|
||||
lib/bup/bup/xstat.py
|
||||
lib/bup/cmd/bup-bloom
|
||||
lib/bup/cmd/bup-cat-file
|
||||
lib/bup/cmd/bup-daemon
|
||||
lib/bup/cmd/bup-damage
|
||||
lib/bup/cmd/bup-drecurse
|
||||
@@ -29,6 +31,7 @@ lib/bup/cmd/bup-fsck
|
||||
lib/bup/cmd/bup-ftp
|
||||
lib/bup/cmd/bup-fuse
|
||||
lib/bup/cmd/bup-help
|
||||
lib/bup/cmd/bup-import-rdiff-backup
|
||||
lib/bup/cmd/bup-import-rsnapshot
|
||||
lib/bup/cmd/bup-index
|
||||
lib/bup/cmd/bup-init
|
||||
@@ -74,6 +77,7 @@ lib/bup/tornado/wsgi.py
|
||||
lib/bup/web/list-directory.html
|
||||
lib/bup/web/static/styles.css
|
||||
man/man1/bup-bloom.1
|
||||
man/man1/bup-cat-file.1
|
||||
man/man1/bup-daemon.1
|
||||
man/man1/bup-damage.1
|
||||
man/man1/bup-drecurse.1
|
||||
@@ -81,6 +85,7 @@ man/man1/bup-fsck.1
|
||||
man/man1/bup-ftp.1
|
||||
man/man1/bup-fuse.1
|
||||
man/man1/bup-help.1
|
||||
man/man1/bup-import-rdiff-backup.1
|
||||
man/man1/bup-import-rsnapshot.1
|
||||
man/man1/bup-index.1
|
||||
man/man1/bup-init.1
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
$NetBSD: distinfo,v 1.3 2012/09/04 13:43:15 wiz Exp $
|
||||
$NetBSD: distinfo,v 1.6 2014/03/19 17:50:00 gdt Exp $
|
||||
|
||||
SHA1 (bup-0.25rc1.tar.gz) = 96760b4cca5b4655cb79caaafd2ce2e70a242a7a
|
||||
RMD160 (bup-0.25rc1.tar.gz) = 7663ee1f4288fa171ec292ff3e35bc6a9c3d4ec9
|
||||
Size (bup-0.25rc1.tar.gz) = 360001 bytes
|
||||
SHA1 (lelutin-bup-7e0bc2e.zip) = c4908ca4e1f3680089ef8d9bf3b7d1b6a01e0081
|
||||
RMD160 (lelutin-bup-7e0bc2e.zip) = 9c2da9481dfc4129ba23f5022d08d62e484bf3e3
|
||||
Size (lelutin-bup-7e0bc2e.zip) = 35533 bytes
|
||||
SHA1 (patch-Makefile) = ad0dbee5a38e769c7941b5f19d91777ac769b13b
|
||||
SHA1 (patch-config_configure) = 367c611762242e4f56e5ee2f4cea6aed95c62559
|
||||
SHA1 (patch-lib_bup_helpers.py) = 894d9ee4b2882876a42f4afd63d82c284231a211
|
||||
SHA1 (bup-0.25.tar.gz) = f32ba39582d0e8875632f282c54f7377ed2a4df9
|
||||
RMD160 (bup-0.25.tar.gz) = d578dc87330c49090c25a212d6c5fe4561c8ad0c
|
||||
Size (bup-0.25.tar.gz) = 399332 bytes
|
||||
SHA1 (bup-man-0.25.zip) = cd76ad005e85aa568d95b9c2938d2716e3b03365
|
||||
RMD160 (bup-man-0.25.zip) = 8d023cc394ae006ec1a24924176d72a52208558f
|
||||
Size (bup-man-0.25.zip) = 40779 bytes
|
||||
SHA1 (patch-Makefile) = b37a1f2d584c987430e948c5c04d97def8a5334c
|
||||
SHA1 (patch-config_configure) = 9360a8be2cef559d93f1a5301f1f397f31da7d72
|
||||
SHA1 (patch-lib_bup___helpers.c) = df146a325e4ca912552f09176a605c26267cfe8b
|
||||
|
||||
17
sysutils/bup/options.mk
Normal file
17
sysutils/bup/options.mk
Normal file
@@ -0,0 +1,17 @@
|
||||
# $NetBSD: options.mk,v 1.1 2014/03/19 12:54:02 gdt Exp $
|
||||
|
||||
PKG_OPTIONS_VAR= PKG_OPTIONS.bup
|
||||
PKG_SUPPORTED_OPTIONS= fuse
|
||||
# fuse is disabled by default because it doesn't build on Mac, ad
|
||||
# because the fuse implementation in bup doesn't work on NetBSD.
|
||||
# After it's fixed upstream, an OS-specific default is probably
|
||||
# appropriate.
|
||||
PKG_SUGGESTED_OPTIONS=
|
||||
|
||||
.include "../../mk/bsd.prefs.mk"
|
||||
|
||||
.include "../../mk/bsd.options.mk"
|
||||
|
||||
.if !empty(PKG_OPTIONS:Mfuse)
|
||||
.include "../../filesystems/py-fuse-bindings/buildlink3.mk"
|
||||
.endif
|
||||
@@ -1,13 +1,22 @@
|
||||
$NetBSD: patch-Makefile,v 1.3 2012/09/04 13:43:15 wiz Exp $
|
||||
$NetBSD: patch-Makefile,v 1.5 2014/03/19 13:15:13 gdt Exp $
|
||||
|
||||
Remove CFLAGS override (set from pkgsrc Makefile).
|
||||
Pass PYTHON through to configure.
|
||||
|
||||
--- Makefile.orig 2011-06-09 03:24:45.000000000 +0000
|
||||
--- Makefile.orig 2013-12-10 01:30:45.000000000 +0000
|
||||
+++ Makefile
|
||||
@@ -1,5 +1,5 @@
|
||||
OS:=$(shell uname | sed 's/[-_].*//')
|
||||
-CFLAGS:=-Wall -O2 -Werror $(PYINCLUDE)
|
||||
+CFLAGS+=-Wall -O2 -Werror $(PYINCLUDE)
|
||||
-CFLAGS := -Wall -O2 -Werror $(PYINCLUDE) $(CFLAGS)
|
||||
+CFLAGS := -Wall -O2 -Werror -Wno-unknown-pragmas $(PYINCLUDE) $(CFLAGS)
|
||||
SOEXT:=.so
|
||||
|
||||
ifeq ($(OS),CYGWIN)
|
||||
@@ -67,7 +67,7 @@ install: all
|
||||
|
||||
config/config.h: config/Makefile config/configure config/configure.inc \
|
||||
$(wildcard config/*.in)
|
||||
- cd config && $(MAKE) config.h
|
||||
+ cd config && $(MAKE) PYTHON=$(PYTHON) config.h
|
||||
|
||||
lib/bup/_helpers$(SOEXT): \
|
||||
config/config.h \
|
||||
|
||||
@@ -1,25 +1,15 @@
|
||||
$NetBSD: patch-config_configure,v 1.1 2012/09/04 13:43:15 wiz Exp $
|
||||
$NetBSD: patch-config_configure,v 1.2 2013/12/31 11:03:12 wiz Exp $
|
||||
|
||||
Use PYTHON from environment.
|
||||
Do not check for utimensat. It is found on NetBSD even though unusable
|
||||
for now (20120827).
|
||||
Use PYTHON passed through from Makefile.
|
||||
|
||||
--- config/configure.orig 2011-06-09 03:24:45.000000000 +0000
|
||||
--- config/configure.orig 2013-11-11 08:52:33.000000000 +0000
|
||||
+++ config/configure
|
||||
@@ -30,7 +30,7 @@ expr "$MAKE_VERSION" '>=' '3.81' || AC_F
|
||||
TLOG " ok"
|
||||
|
||||
TLOGN "checking the python"
|
||||
-PYTHON=`acLookFor python`
|
||||
+[ -n "$PYTHON" ] || PYTHON=`acLookFor python`
|
||||
if [ -z "$PYTHON" ]; then
|
||||
AC_FAIL " Cannot find python";
|
||||
@@ -42,7 +42,7 @@ if [ -z "$MAKE_VERSION" ]; then
|
||||
fi
|
||||
@@ -59,7 +59,6 @@ AC_CHECK_HEADERS unistd.h
|
||||
AC_CHECK_HEADERS linux/fs.h
|
||||
AC_CHECK_HEADERS sys/ioctl.h
|
||||
expr "$MAKE_VERSION" '>=' '3.81' || AC_FAIL "ERROR: $MAKE must be >= version 3.81"
|
||||
|
||||
-AC_CHECK_FUNCS utimensat
|
||||
AC_CHECK_FUNCS utimes
|
||||
AC_CHECK_FUNCS lutimes
|
||||
-if test -z "$(bup_find_prog python '')"; then
|
||||
+if test -z "$(bup_find_prog python "$PYTHON")"; then
|
||||
AC_FAIL "ERROR: unable to find python"
|
||||
fi
|
||||
|
||||
|
||||
51
sysutils/bup/patches/patch-lib_bup___helpers.c
Normal file
51
sysutils/bup/patches/patch-lib_bup___helpers.c
Normal file
@@ -0,0 +1,51 @@
|
||||
$NetBSD: patch-lib_bup___helpers.c,v 1.2 2014/03/19 17:50:00 gdt Exp $
|
||||
|
||||
First and third hunks are from upstream.
|
||||
|
||||
Second hunk is to work around broken utimensat in NetBSD 6.
|
||||
Should be applied upstream.
|
||||
|
||||
--- lib/bup/_helpers.c.orig 2013-12-10 01:30:45.000000000 +0000
|
||||
+++ lib/bup/_helpers.c
|
||||
@@ -96,6 +96,8 @@ static void unpythonize_argv(void)
|
||||
|
||||
#endif // not __WIN32__ or __CYGWIN__
|
||||
|
||||
+// At the moment any code that calls INTGER_TO_PY() will have to
|
||||
+// disable -Wtautological-compare for clang. See below.
|
||||
|
||||
static PyObject *selftest(PyObject *self, PyObject *args)
|
||||
{
|
||||
@@ -763,6 +765,14 @@ static PyObject *bup_set_linux_file_attr
|
||||
#endif /* def BUP_HAVE_FILE_ATTRS */
|
||||
|
||||
|
||||
+/*
|
||||
+ * Check for defective UTIMENSAT support (NetBSD 6), and if so,
|
||||
+ * pretend we don't have it.
|
||||
+ */
|
||||
+#if !defined(AT_FDCWD) || !defined(AT_SYMLINK_NOFOLLOW)
|
||||
+#undef HAVE_UTIMENSAT
|
||||
+#endif
|
||||
+
|
||||
#if defined(HAVE_UTIMENSAT) || defined(HAVE_FUTIMES) || defined(HAVE_LUTIMES)
|
||||
|
||||
static int bup_parse_xutime_args(char **path,
|
||||
@@ -990,6 +1000,9 @@ static int normalize_timespec_values(con
|
||||
(((x) >= 0) ? PyLong_FromUnsignedLongLong(x) : PyLong_FromLongLong(x))
|
||||
|
||||
|
||||
+#pragma clang diagnostic push
|
||||
+#pragma clang diagnostic ignored "-Wtautological-compare" // For INTEGER_TO_PY().
|
||||
+
|
||||
static PyObject *stat_struct_to_py(const struct stat *st,
|
||||
const char *filename,
|
||||
int fd)
|
||||
@@ -1028,6 +1041,7 @@ static PyObject *stat_struct_to_py(const
|
||||
(long) ctime_ns);
|
||||
}
|
||||
|
||||
+#pragma clang diagnostic pop // ignored "-Wtautological-compare"
|
||||
|
||||
static PyObject *bup_stat(PyObject *self, PyObject *args)
|
||||
{
|
||||
@@ -1,27 +0,0 @@
|
||||
$NetBSD: patch-lib_bup_helpers.py,v 1.1 2012/09/04 13:43:15 wiz Exp $
|
||||
|
||||
Survive empty GECOS name fields.
|
||||
Reported-by: Alper Kanat
|
||||
Tested-by: Michael Witten
|
||||
Signed-off-by: Michael Witten
|
||||
---
|
||||
lib/bup/helpers.py | 8 +++++---
|
||||
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
--- lib/bup/helpers.py.orig 2011-06-09 03:24:45.000000000 +0000
|
||||
+++ lib/bup/helpers.py
|
||||
@@ -231,9 +231,11 @@ def userfullname():
|
||||
if not _userfullname:
|
||||
uid = os.getuid()
|
||||
try:
|
||||
- _userfullname = pwd.getpwuid(uid)[4].split(',')[0]
|
||||
- except KeyError:
|
||||
- _userfullname = 'user%d' % uid
|
||||
+ entry = pwd.getpwuid(uid)
|
||||
+ _userfullname = entry[4].split(',')[0] or entry[0]
|
||||
+ finally:
|
||||
+ if not _userfullname:
|
||||
+ _userfullname = 'user %d' % uid
|
||||
return _userfullname
|
||||
|
||||
|
||||
Reference in New Issue
Block a user