aboutsummaryrefslogtreecommitdiff
path: root/net/rsync
diff options
context:
space:
mode:
authorEmanuel Haupt <ehaupt@FreeBSD.org>2013-10-23 19:21:58 +0000
committerEmanuel Haupt <ehaupt@FreeBSD.org>2013-10-23 19:21:58 +0000
commit632ef7974391d4d21477a1731cef2eda2c06b66f (patch)
tree60c73466fb1f420bef890e2833e79f36b5918724 /net/rsync
parent7a51592639421df05b9fd7e0358c77c3c33c70f4 (diff)
downloadports-632ef7974391d4d21477a1731cef2eda2c06b66f.tar.gz
ports-632ef7974391d4d21477a1731cef2eda2c06b66f.zip
Since the last update the RENAMED and FLAGS patch do not apply together anymore.
Dmitry Morozovsky has merged the two official patches. Provide an options for the two combined patches. Submitted by: Dmitry Morozovsky <marck@rinet.ru>
Notes
Notes: svn path=/head/; revision=331417
Diffstat (limited to 'net/rsync')
-rw-r--r--net/rsync/Makefile17
-rw-r--r--net/rsync/files/extrapatch-renamed-flags.diff105
2 files changed, 120 insertions, 2 deletions
diff --git a/net/rsync/Makefile b/net/rsync/Makefile
index bfea0df274b2..39de83e90226 100644
--- a/net/rsync/Makefile
+++ b/net/rsync/Makefile
@@ -31,7 +31,7 @@ PORTDOCS= NEWS README csprotocol.txt tech_report.tex
# define options
OPTIONS_DEFINE= POPT_PORT ZLIB_BASE SSH ICONV
OPTIONS_RADIO= PTS
-OPTIONS_RADIO_PTS= TIMELIMIT RENAMED FLAGS ATIMES ACL
+OPTIONS_RADIO_PTS= TIMELIMIT RENAMED FLAGS RENFL ATIMES ACL
# options provided upstream
POPT_PORT_DESC= Use popt from devel/popt instead of bundled one
@@ -46,6 +46,10 @@ FLAGS_DESC= File system flags support patch, adds --fileflags
ATIMES_DESC= Preserve access times, adds --atimes
ACL_DESC= Add backward-compatibility for the --acls option
+# The following unsupported patch has been provided by:
+# Dmitry Morozovsky <marck@rinet.ru>
+RENFL_DESC= Renamed and flags options combined
+
# define default options
OPTIONS_DEFAULT=SSH ZLIB_BASE
@@ -65,7 +69,7 @@ PATCH_STRIP= -p1
EXTRA_PATCHES+= ${WRKSRC}/patches/atimes.diff
.endif
-.if ${PORT_OPTIONS:MICONV} || ${PORT_OPTIONS:MFLAGS} || ${PORT_OPTIONS:MACL} || make(makesum) || ${PORT_OPTIONS:MTIMELIMIT} || ${PORT_OPTIONS:MATIMES} || ${PORT_OPTIONS:MRENAMED}
+.if ${PORT_OPTIONS:MICONV} || ${PORT_OPTIONS:MFLAGS} || ${PORT_OPTIONS:MACL} || make(makesum) || ${PORT_OPTIONS:MTIMELIMIT} || ${PORT_OPTIONS:MATIMES} || ${PORT_OPTIONS:MRENAMED} || ${PORT_OPTIONS:MRENFL}
DISTFILES+= ${PORTNAME}-patches-${PORTVERSION}${EXTRACT_SUFX}
CFLAGS+= -I${LOCALBASE}/include
.endif
@@ -92,6 +96,15 @@ PATCH_STRIP= -p1
EXTRA_PATCHES+= ${WRKSRC}/patches/detect-renamed.diff
.endif
+.if ${PORT_OPTIONS:MRENFL}
+PATCH_STRIP= -p1
+EXTRA_PATCHES+= \
+ ${FILESDIR}/extrapatch-renamed-flags.diff \
+ ${WRKSRC}/patches/fileflags.diff \
+ ${FILESDIR}/extrapatch-main.c \
+ ${WRKSRC}/patches/detect-renamed.diff
+.endif
+
.if ${PORT_OPTIONS:MACL}
PATCH_STRIP= -p1
EXTRA_PATCHES+= ${WRKSRC}/patches/acls.diff
diff --git a/net/rsync/files/extrapatch-renamed-flags.diff b/net/rsync/files/extrapatch-renamed-flags.diff
new file mode 100644
index 000000000000..2fe58875daa5
--- /dev/null
+++ b/net/rsync/files/extrapatch-renamed-flags.diff
@@ -0,0 +1,105 @@
+# $FreeBSD$
+
+--- a/patches/detect-renamed.diff 2013-09-29 07:02:08.000000000 +0400
++++ b/patches/detect-renamed.diff 2013-10-23 14:56:21.073464928 +0400
+@@ -42,15 +42,15 @@
+ diff --git a/compat.c b/compat.c
+ --- a/compat.c
+ +++ b/compat.c
+-@@ -43,6 +43,7 @@ extern int checksum_seed;
++@@ -39,6 +39,7 @@
++ extern int fuzzy_basis;
++ extern int read_batch;
++ extern int delay_updates;
+++extern int detect_renamed;
++ extern int checksum_seed;
+ extern int basis_dir_cnt;
+ extern int prune_empty_dirs;
+- extern int protocol_version;
+-+extern int detect_renamed;
+- extern int protect_args;
+- extern int preserve_uid;
+- extern int preserve_gid;
+-@@ -123,6 +124,7 @@ void set_allow_inc_recurse(void)
++@@ -125,6 +126,7 @@
+ allow_inc_recurse = 0;
+ else if (!am_sender
+ && (delete_before || delete_after
+@@ -61,15 +61,15 @@
+ diff --git a/delete.c b/delete.c
+ --- a/delete.c
+ +++ b/delete.c
+-@@ -25,6 +25,7 @@
++@@ -23,6 +23,7 @@
++ #include "rsync.h"
++
+ extern int am_root;
+++extern int detect_renamed;
+ extern int make_backups;
+ extern int max_delete;
+-+extern int detect_renamed;
+- extern char *backup_dir;
+- extern char *backup_suffix;
+- extern int backup_suffix_len;
+-@@ -44,6 +45,8 @@ static inline int is_backup_file(char *fn)
++ extern int force_change;
++@@ -45,6 +46,8 @@
+ * its contents, otherwise just checks for content. Returns DR_SUCCESS or
+ * DR_NOT_EMPTY. Note that fname must point to a MAXPATHLEN buffer! (The
+ * buffer is used for recursion, but returned unchanged.)
+@@ -78,7 +78,7 @@
+ */
+ static enum delret delete_dir_contents(char *fname, uint16 flags)
+ {
+-@@ -63,7 +66,9 @@ static enum delret delete_dir_contents(char *fname, uint16 flags)
++@@ -64,7 +67,9 @@
+ save_filters = push_local_filters(fname, dlen);
+
+ non_perishable_cnt = 0;
+@@ -88,7 +88,7 @@
+ ret = non_perishable_cnt ? DR_NOT_EMPTY : DR_SUCCESS;
+
+ if (!dirlist->used)
+-@@ -103,7 +108,8 @@ static enum delret delete_dir_contents(char *fname, uint16 flags)
++@@ -108,7 +113,8 @@
+ if (S_ISDIR(fp->mode)) {
+ if (delete_dir_contents(fname, flags | DEL_RECURSE) != DR_SUCCESS)
+ ret = DR_NOT_EMPTY;
+@@ -98,7 +98,7 @@
+ if (delete_item(fname, fp->mode, flags) != DR_SUCCESS)
+ ret = DR_NOT_EMPTY;
+ }
+-@@ -126,6 +132,8 @@ static enum delret delete_dir_contents(char *fname, uint16 flags)
++@@ -131,6 +137,8 @@
+ *
+ * Note that fbuf must point to a MAXPATHLEN buffer if the mode indicates it's
+ * a directory! (The buffer is used for recursion, but returned unchanged.)
+@@ -775,7 +775,7 @@
+ diff -up a/proto.h b/proto.h
+ --- a/proto.h
+ +++ b/proto.h
+-@@ -101,6 +101,7 @@ int f_name_has_prefix(const struct file_
++@@ -101,6 +101,7 @@
+ char *f_name_buf(void);
+ char *f_name(const struct file_struct *f, char *fbuf);
+ struct file_list *get_dirlist(char *dirname, int dlen, int flags);
+@@ -783,16 +783,16 @@
+ int unchanged_attrs(const char *fname, struct file_struct *file, stat_x *sxp);
+ void itemize(const char *fnamecmp, struct file_struct *file, int ndx, int statret,
+ stat_x *sxp, int32 iflags, uchar fnamecmp_type,
+-@@ -353,7 +354,7 @@ void set_blocking(int fd);
++@@ -356,7 +357,7 @@
+ int fd_pair(int fd[2]);
+ void print_child_argv(const char *prefix, char **cmd);
+- int set_modtime(const char *fname, time_t modtime, uint32 mod_nsec, mode_t mode);
++ int set_modtime(const char *fname, time_t modtime, uint32 mod_nsec, mode_t mode, uint32 fileflags);
+ -int make_path(char *fname, int flags);
+ +int make_path(char *fname, mode_t mode, int flags);
+ int full_write(int desc, const char *ptr, size_t len);
+ int copy_file(const char *source, const char *dest, int ofd, mode_t mode);
+ int robust_unlink(const char *fname);
+-@@ -373,6 +374,8 @@ char *sanitize_path(char *dest, const ch
++@@ -376,6 +377,8 @@
+ int flags);
+ int change_dir(const char *dir, int set_path_only);
+ char *normalize_path(char *path, BOOL force_newbuf, unsigned int *len_ptr);