pkgsrc/net/unison/Makefile

59 lines
1.8 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.97 2016/03/05 11:29:13 jperkin Exp $
Update to 2.48.3: Changes in Version 2.48.3 Changes since 2.45: * Incorporated a patch from Christopher Zimmermann to replace the Uprintf module (which doesn't work with OCaml 4.02, causing Unison to crash) with equivalent functionality from the standard library. * Incorporated a refresh of the OSX GUI, contributed by Alan Shutko. * Added a maxsizethreshold option, which prevents the transfer of files larger than the size specified (in Kb). * Added a "copyonconflict" preference, to make a copy of files that would otherwise be overwritten or deleted in case of conflicting changes. (This makes it possible to automatically resolve conflicts in a fairly safe way when synchronizing continuously, in combination with the "repeat = watch" and "prefer = newer" preferences. * File system monitoring: + The file watcher now fails when unable to watch a directory, rather than silently ignoring the issue. + File system monitoring: more robust communication with the helper program (in socket mode, the unison server will still work properly despite unexpected unison client disconnections). + A bytecode version of unison-fsmonitor is now produced by "make NATIVE=false" + Improved search for unison-fsmonitor + Detect when the helper process exits. + More robust file watching helper programs for Windows and Linux. They communicate with Unison through pipes (Unison redirects stdin and stdout), using a race-free protocol. + Retries paths with failures using an exponential backoff algorithm. + The information returned by the file watchers are used independently for each replica; thus, when only one replica has changes, Unison will only rescan this replica. + When available, used by the graphical UIs to speed up rescanning (can be disabled by setting the new watch preference to + Small fix to the way fsmonitor.py gets invoked when using the file watching functionality, suggested by Josh Berdine. Unison will now look for fsmonitor.py in the same directory where the Unison executable itself lives. * Minor: + Fixed a bug in export procedure that was messing up documentation strings. + Incorporated a patch from Irányossy Knoblauch Artúr to make temp file names fit within 143 characters (to make eCryptFS happy). + Added a string to the Conflict direction to document the reason of the conflict. + Log conflicts and problems in the text UI even if nothing is propagated. + Use hash function from OCaml 3.x for comparing archives, even when compiled with OCaml 4.x. + Do not restart Unison in case of uncaught exception when the repeat preference is set. This seems safer. And it does not work, for instance, in case of lost connection. + Fix Unix.readlink invalid argument error under Windows + Fix a crash when the output of the diff program is too large. + Fixed Makefile for cross-compiling towards Windows (updated to MinGW-w64) Changes since 2.40.63: * New preference fastercheckUNSAFE, which can be used (with care!) to achieve much faster update detection when all the common files in the two replicas are known to be identical. See the manual for more information. This feature should still be considered experimental, but it's ready for other people to try out. * Added option clientHostName. If specified, it will be used to as the client host name, overriding UNISONLOCALHOSTNAME and the actual host name. * OS X GUI: + fix crash under Lion, because of problems with the toolbar, using the fix suggested in http://blitzbasic.com/Community/posts.php?topic=95778. + uimacnew09 is now the standard graphical interface on OSX + A small improvement to the uimacnew09 interface from Alan Schmitt and Steve Kalkwarf: when Unison is run with the -batch flag, the interface will now automatically propagate changes and terminate, without waiting for user interaction. + Show a modal warning window if there is no archive for the hosts. The user can then choose to exit or proceed (proceed is the default). The window is not shown if the batch preference is true. + file details panel selectable * GTK GUI: + New version of uigtk2.ml from Matt Zagrabelny that reorganizes the icons in a slightly more intuitive way. * Minor fixes: + Setting the prefer preference to older or newer now propagates deletions when there is no conflict. + Correctly quote the path when running merge commands. + Add quotes to paths when calling external file watcher utility. + Incorporate a patch to fsmonitor.py (the external filewatcher utility) from Tomasz Zernicki to make it work better under Windows. + Incorporated new version of fsmonitor.py from Christophe Gohle + Fixed incompatibility with OpenSSH 5.6. + Fixed fingerprint cache: do not cache file properties + Some spelling corrections in documentation and comments from Stephane Glondu + Fixed O_APPEND mode for open under Windows + Fixed String.sub invalid argument error when an AppleDouble file does not contain a finder information field + Trim duplicate paths when using "-repeat watch" + Unison now passes path arguments and -follow directives to fsmonitor.py. This seems to work except for one small issue with how fsmonitor.py treats -follow directives for directories that don't exist (or maybe this is an issue with how it treats any kind of monitoring when the thing being monitored doesn't exist?). If we create a symlink to a nonexistant directory, give Unison (hence fsmonitor.py) a 'follow' directive for the symlink, start unison, and then create the directory, fsmonitor.py misses the change. + Lines added in profile files by unison always start at a new line
2015-01-06 13:58:36 +01:00
DISTNAME= unison-2.48.3
# XXX remove DIST_SUBDIR with next release
DIST_SUBDIR= ${DISTNAME}-release
PKGREVISION= 8
CATEGORIES= net
Update to 2.32.52, ok tonio. Set license. Changes since 2.32.44: * Improvement to the code for resuming directory transfers: (1) make sure file information (permissions, ...) has been properly set when using a previously transferred temp file (2) make sure previously transferred directories are writable (other changes made in the developer version of Unison require a protocol change) * Got rid of the 16MiB marshalling limit by marshalling to a bigarray * Ignore one hour differences for deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes it slightly more likely to miss an update, but that should be safe enough. * Improved Unison icon under Windows * Case sensitivity information put in the archive (in a backward compatible way) and checked when the archive is loaded * Uses improved emulation of "select" call provided by Ocaml 3.11 under Windows (the GUI does not freeze as much during synchronization) * Upgraded to GPL version 3 and added copyright notice to documentation files. * Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" even though the file has not been changed. This can be caused by programs that change either the file's contents *or* the file's extended attributes without changing its modification time. I'm not sure what is the best fix for this – it is not Unison's fault, but it makes Unison's behavior puzzling – but at least Unison can be more helpful about suggesting a workaround (running once with 'fastcheck' set to false). The failure message has been changed to give this advice. * Text UI o During update detection, display status by updating a single line rather than generating a new line of output every so often. That should be less confusing. o In repeat mode, don't save the archives when there is no update. Indeed, in this mode, we should minimize the amount of work performed and it is unlikely that the archives have changed much. * Bugfixes o Fixed quotation of paths and names when writing to a preference file o Fixed bug resulting in slow performances when transferring a file using our rsync implementation from a 64-bit architecture to a 32-bit architecture. o Fixed bug in Lwt_unix.run which could make it fail with a Not_found exception (see [Not_found raised in tryCopyMovedFile] errors) o Properly deals with non-conformant AppleDouble files produced by Mac OS X. o Fixed bug that results in Unison missing ressource fork changes o Applied a patch from Karl M to make the GTK2 version build with OCaml 3.11 on Windows. o Added some extra debugging code to remote.ml to give more informative error messages when people encounter the longstanding "assert failed during file transfer" bug. o Applied patch from Antoine Reilles for NetBSD compilation o Resizing the update window vertically no longer moves the status label. Fix contributed by Pedro Melo. Changes since 2.31: * Minor fixes and improvements: o Ignore one hour differences when deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes Unison slightly more likely to miss an update, but it should be safe enough. o Fix a small bug that was affecting mainly windows users. We need to commit the archives at the end of the sync even if there are no updates to propagate because some files (in fact, if we've just switched to DST on windows, a LOT of files) might have new modtimes in the archive. (Changed the text UI only. It's less clear where to change the GUI.) o Don't delete the temp file when a transfer fails due to a fingerprint mismatch (so that we can have a look and see why!) We've also added more debugging code togive more informative error messages when we encounter the dreaded and longstanding "assert failed during file transfer" bug Changes since 2.27: * If Unison is interrupted during a directory transfer, it will now leave the partially transferred directory intact in a temporary location. (This maintains the invariant that new files/directories are transferred either completely or not at all.) The next time Unison is run, it will continue filling in this temporary directory, skipping transferring files that it finds are already there. * We've added experimental support for invoking an external file transfer tool for whole-file copies instead of Unison's built-in transfer protocol. Three new preferences have been added: o copyprog is a string giving the name (and command-line switches, if needed) of an external program that can be used to copy large files efficiently. By default, rsync is invoked, but other tools such as scp can be used instead by changing the value of this preference. (Although this is not its primary purpose, rsync is actually a pretty fast way of copying files that don't already exist on the receiving host.) For files that do already exist on (but that have been changed in one replica), Unison will always use its built-in implementation of the rsync algorithm. o Added a "copyprogrest" preference, so that we can give different command lines for invoking the external copy utility depending on whether a partially transferred file already exists or not. (Rsync doesn't seem to care about this, but other utilities may.) o copythreshold is an integer (-1 by default), indicating above what filesize (in megabytse the external copying utility specified by copyprog. Specifying 0 will cause ALL copies to use the external program; a negative number will prevent any files from using it. (Default is -1.) Thanks to Alan Schmitt for a huge amount of hacking and o an anonymous sponsor for suggesting and underwriting this extension. * Small improvements: o Added a new preference, dontchmod. By default, Unison uses the chmod system call to set the permission bits of files after it has copied them. Butin some circumstances (and under some operating systems), the chmod call always fails. Setting this preference completely prevents Unison from ever calling chmod. o Don't ignore files that look like backup files if the backuplocation preference set to central o Shortened the names of several preferences. The old names are also still supported, for backwards compatibility, but they do not appear in the documentation. o Lots of little documentation tidying. (In particular, preferences are separated into Basic and Advanced! This should hopefully make Unison a little more approachable for new users. o Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" # * Further improvements to the OS X GUI (thanks to Alan Schmitt and Craig Federighi). # Very preliminary support for triggering Unison from an external filesystem-watching utility. The current implementation is very simple, not efficient, and almost completely untested—not ready for real users. But if someone wants to help improve it (e.g., by writing a filesystem watcher for your favorite OS), please make yourself known! On the Unison side, the new behavior is very simple: * use the text UI * start Unison with the command-line flag "-repeat FOO", where FOO is name of a file where Unison should look for notifications of changes * when it starts up, Unison will read the whole contents of this file (on both hosts), which should be a newline-separated list of paths (relative to the root of the synchronization) and synchronize just these paths, as if it had been started with the "-path=xxx" option for each one of them * when it finishes, it will sleep for a few seconds and then examine the watchfile again; if anything has been added, it will read the new paths, synchronize them, and go back to sleep * that's it! To use this to drive Unison "incrementally," just start it in this mode and start up a tool (on each host) to watch for new changes to the filesystem and append the appropriate paths to the watchfile. Hopefully such tools should not be too hard to write. # Bug fixes: * Fixed a bug that was causing new files to be created with permissions 0x600 instead of using a reasonable default (like 0x644), if the 'perms' flag was set to 0. (Bug reported by Ben Crowell.) * Follow maxthreads preference when transferring directories.
2009-11-20 21:18:47 +01:00
MASTER_SITES= http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/
MAINTAINER= tonio@NetBSD.org
HOMEPAGE= http://www.cis.upenn.edu/~bcpierce/unison/
COMMENT= File-synchronization tool
Update to 2.32.52, ok tonio. Set license. Changes since 2.32.44: * Improvement to the code for resuming directory transfers: (1) make sure file information (permissions, ...) has been properly set when using a previously transferred temp file (2) make sure previously transferred directories are writable (other changes made in the developer version of Unison require a protocol change) * Got rid of the 16MiB marshalling limit by marshalling to a bigarray * Ignore one hour differences for deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes it slightly more likely to miss an update, but that should be safe enough. * Improved Unison icon under Windows * Case sensitivity information put in the archive (in a backward compatible way) and checked when the archive is loaded * Uses improved emulation of "select" call provided by Ocaml 3.11 under Windows (the GUI does not freeze as much during synchronization) * Upgraded to GPL version 3 and added copyright notice to documentation files. * Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" even though the file has not been changed. This can be caused by programs that change either the file's contents *or* the file's extended attributes without changing its modification time. I'm not sure what is the best fix for this – it is not Unison's fault, but it makes Unison's behavior puzzling – but at least Unison can be more helpful about suggesting a workaround (running once with 'fastcheck' set to false). The failure message has been changed to give this advice. * Text UI o During update detection, display status by updating a single line rather than generating a new line of output every so often. That should be less confusing. o In repeat mode, don't save the archives when there is no update. Indeed, in this mode, we should minimize the amount of work performed and it is unlikely that the archives have changed much. * Bugfixes o Fixed quotation of paths and names when writing to a preference file o Fixed bug resulting in slow performances when transferring a file using our rsync implementation from a 64-bit architecture to a 32-bit architecture. o Fixed bug in Lwt_unix.run which could make it fail with a Not_found exception (see [Not_found raised in tryCopyMovedFile] errors) o Properly deals with non-conformant AppleDouble files produced by Mac OS X. o Fixed bug that results in Unison missing ressource fork changes o Applied a patch from Karl M to make the GTK2 version build with OCaml 3.11 on Windows. o Added some extra debugging code to remote.ml to give more informative error messages when people encounter the longstanding "assert failed during file transfer" bug. o Applied patch from Antoine Reilles for NetBSD compilation o Resizing the update window vertically no longer moves the status label. Fix contributed by Pedro Melo. Changes since 2.31: * Minor fixes and improvements: o Ignore one hour differences when deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes Unison slightly more likely to miss an update, but it should be safe enough. o Fix a small bug that was affecting mainly windows users. We need to commit the archives at the end of the sync even if there are no updates to propagate because some files (in fact, if we've just switched to DST on windows, a LOT of files) might have new modtimes in the archive. (Changed the text UI only. It's less clear where to change the GUI.) o Don't delete the temp file when a transfer fails due to a fingerprint mismatch (so that we can have a look and see why!) We've also added more debugging code togive more informative error messages when we encounter the dreaded and longstanding "assert failed during file transfer" bug Changes since 2.27: * If Unison is interrupted during a directory transfer, it will now leave the partially transferred directory intact in a temporary location. (This maintains the invariant that new files/directories are transferred either completely or not at all.) The next time Unison is run, it will continue filling in this temporary directory, skipping transferring files that it finds are already there. * We've added experimental support for invoking an external file transfer tool for whole-file copies instead of Unison's built-in transfer protocol. Three new preferences have been added: o copyprog is a string giving the name (and command-line switches, if needed) of an external program that can be used to copy large files efficiently. By default, rsync is invoked, but other tools such as scp can be used instead by changing the value of this preference. (Although this is not its primary purpose, rsync is actually a pretty fast way of copying files that don't already exist on the receiving host.) For files that do already exist on (but that have been changed in one replica), Unison will always use its built-in implementation of the rsync algorithm. o Added a "copyprogrest" preference, so that we can give different command lines for invoking the external copy utility depending on whether a partially transferred file already exists or not. (Rsync doesn't seem to care about this, but other utilities may.) o copythreshold is an integer (-1 by default), indicating above what filesize (in megabytse the external copying utility specified by copyprog. Specifying 0 will cause ALL copies to use the external program; a negative number will prevent any files from using it. (Default is -1.) Thanks to Alan Schmitt for a huge amount of hacking and o an anonymous sponsor for suggesting and underwriting this extension. * Small improvements: o Added a new preference, dontchmod. By default, Unison uses the chmod system call to set the permission bits of files after it has copied them. Butin some circumstances (and under some operating systems), the chmod call always fails. Setting this preference completely prevents Unison from ever calling chmod. o Don't ignore files that look like backup files if the backuplocation preference set to central o Shortened the names of several preferences. The old names are also still supported, for backwards compatibility, but they do not appear in the documentation. o Lots of little documentation tidying. (In particular, preferences are separated into Basic and Advanced! This should hopefully make Unison a little more approachable for new users. o Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" # * Further improvements to the OS X GUI (thanks to Alan Schmitt and Craig Federighi). # Very preliminary support for triggering Unison from an external filesystem-watching utility. The current implementation is very simple, not efficient, and almost completely untested—not ready for real users. But if someone wants to help improve it (e.g., by writing a filesystem watcher for your favorite OS), please make yourself known! On the Unison side, the new behavior is very simple: * use the text UI * start Unison with the command-line flag "-repeat FOO", where FOO is name of a file where Unison should look for notifications of changes * when it starts up, Unison will read the whole contents of this file (on both hosts), which should be a newline-separated list of paths (relative to the root of the synchronization) and synchronize just these paths, as if it had been started with the "-path=xxx" option for each one of them * when it finishes, it will sleep for a few seconds and then examine the watchfile again; if anything has been added, it will read the new paths, synchronize them, and go back to sleep * that's it! To use this to drive Unison "incrementally," just start it in this mode and start up a tool (on each host) to watch for new changes to the filesystem and append the appropriate paths to the watchfile. Hopefully such tools should not be too hard to write. # Bug fixes: * Fixed a bug that was causing new files to be created with permissions 0x600 instead of using a reasonable default (like 0x644), if the 'perms' flag was set to 0. (Bug reported by Ben Crowell.) * Follow maxthreads preference when transferring directories.
2009-11-20 21:18:47 +01:00
LICENSE= gnu-gpl-v3
.if (${MACHINE_ARCH} == "arm")
BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.12.0nb2
.else
BUILDLINK_ABI_DEPENDS.ocaml+= ocaml>=3.11.2
.endif
BUILDLINK_API_DEPENDS.ocaml-lablgtk+= ocaml-lablgtk>=2.16.0
# docs: unison-manual.pdf/html/ps/dvi
WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
USE_TOOLS+= gmake
MAKE_FLAGS+= CFLAGS=""
MAKE_ENV+= HOME=${WRKDIR:Q}
.include "options.mk"
.include "../../mk/bsd.prefs.mk"
.if (${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "powerpc") || (${MACHINE_ARCH} == "sparc") || (${MACHINE_ARCH}=="arm") || (${MACHINE_ARCH} == "x86_64")
MAKE_FLAGS+= NATIVE=true
.else
MAKE_FLAGS+= NATIVE=false
.endif
2004-01-05 12:28:07 +01:00
.include "../../mk/pthread.buildlink3.mk"
.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} != "none")
MAKE_FLAGS+= THREADS=true
.endif
BUILD_TARGET= buildexecutable
2004-01-05 12:28:07 +01:00
INSTALLATION_DIRS= bin
INSTALLATION_DIRS+= share/doc/unison
2004-01-05 12:28:07 +01:00
post-install:
Update to 2.32.52, ok tonio. Set license. Changes since 2.32.44: * Improvement to the code for resuming directory transfers: (1) make sure file information (permissions, ...) has been properly set when using a previously transferred temp file (2) make sure previously transferred directories are writable (other changes made in the developer version of Unison require a protocol change) * Got rid of the 16MiB marshalling limit by marshalling to a bigarray * Ignore one hour differences for deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes it slightly more likely to miss an update, but that should be safe enough. * Improved Unison icon under Windows * Case sensitivity information put in the archive (in a backward compatible way) and checked when the archive is loaded * Uses improved emulation of "select" call provided by Ocaml 3.11 under Windows (the GUI does not freeze as much during synchronization) * Upgraded to GPL version 3 and added copyright notice to documentation files. * Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" even though the file has not been changed. This can be caused by programs that change either the file's contents *or* the file's extended attributes without changing its modification time. I'm not sure what is the best fix for this – it is not Unison's fault, but it makes Unison's behavior puzzling – but at least Unison can be more helpful about suggesting a workaround (running once with 'fastcheck' set to false). The failure message has been changed to give this advice. * Text UI o During update detection, display status by updating a single line rather than generating a new line of output every so often. That should be less confusing. o In repeat mode, don't save the archives when there is no update. Indeed, in this mode, we should minimize the amount of work performed and it is unlikely that the archives have changed much. * Bugfixes o Fixed quotation of paths and names when writing to a preference file o Fixed bug resulting in slow performances when transferring a file using our rsync implementation from a 64-bit architecture to a 32-bit architecture. o Fixed bug in Lwt_unix.run which could make it fail with a Not_found exception (see [Not_found raised in tryCopyMovedFile] errors) o Properly deals with non-conformant AppleDouble files produced by Mac OS X. o Fixed bug that results in Unison missing ressource fork changes o Applied a patch from Karl M to make the GTK2 version build with OCaml 3.11 on Windows. o Added some extra debugging code to remote.ml to give more informative error messages when people encounter the longstanding "assert failed during file transfer" bug. o Applied patch from Antoine Reilles for NetBSD compilation o Resizing the update window vertically no longer moves the status label. Fix contributed by Pedro Melo. Changes since 2.31: * Minor fixes and improvements: o Ignore one hour differences when deciding whether a file may have been updated. This avoids slow update detection after daylight saving time changes under Windows. This makes Unison slightly more likely to miss an update, but it should be safe enough. o Fix a small bug that was affecting mainly windows users. We need to commit the archives at the end of the sync even if there are no updates to propagate because some files (in fact, if we've just switched to DST on windows, a LOT of files) might have new modtimes in the archive. (Changed the text UI only. It's less clear where to change the GUI.) o Don't delete the temp file when a transfer fails due to a fingerprint mismatch (so that we can have a look and see why!) We've also added more debugging code togive more informative error messages when we encounter the dreaded and longstanding "assert failed during file transfer" bug Changes since 2.27: * If Unison is interrupted during a directory transfer, it will now leave the partially transferred directory intact in a temporary location. (This maintains the invariant that new files/directories are transferred either completely or not at all.) The next time Unison is run, it will continue filling in this temporary directory, skipping transferring files that it finds are already there. * We've added experimental support for invoking an external file transfer tool for whole-file copies instead of Unison's built-in transfer protocol. Three new preferences have been added: o copyprog is a string giving the name (and command-line switches, if needed) of an external program that can be used to copy large files efficiently. By default, rsync is invoked, but other tools such as scp can be used instead by changing the value of this preference. (Although this is not its primary purpose, rsync is actually a pretty fast way of copying files that don't already exist on the receiving host.) For files that do already exist on (but that have been changed in one replica), Unison will always use its built-in implementation of the rsync algorithm. o Added a "copyprogrest" preference, so that we can give different command lines for invoking the external copy utility depending on whether a partially transferred file already exists or not. (Rsync doesn't seem to care about this, but other utilities may.) o copythreshold is an integer (-1 by default), indicating above what filesize (in megabytse the external copying utility specified by copyprog. Specifying 0 will cause ALL copies to use the external program; a negative number will prevent any files from using it. (Default is -1.) Thanks to Alan Schmitt for a huge amount of hacking and o an anonymous sponsor for suggesting and underwriting this extension. * Small improvements: o Added a new preference, dontchmod. By default, Unison uses the chmod system call to set the permission bits of files after it has copied them. Butin some circumstances (and under some operating systems), the chmod call always fails. Setting this preference completely prevents Unison from ever calling chmod. o Don't ignore files that look like backup files if the backuplocation preference set to central o Shortened the names of several preferences. The old names are also still supported, for backwards compatibility, but they do not appear in the documentation. o Lots of little documentation tidying. (In particular, preferences are separated into Basic and Advanced! This should hopefully make Unison a little more approachable for new users. o Unison can sometimes fail to transfer a file, giving the unhelpful message "Destination updated during synchronization" # * Further improvements to the OS X GUI (thanks to Alan Schmitt and Craig Federighi). # Very preliminary support for triggering Unison from an external filesystem-watching utility. The current implementation is very simple, not efficient, and almost completely untested—not ready for real users. But if someone wants to help improve it (e.g., by writing a filesystem watcher for your favorite OS), please make yourself known! On the Unison side, the new behavior is very simple: * use the text UI * start Unison with the command-line flag "-repeat FOO", where FOO is name of a file where Unison should look for notifications of changes * when it starts up, Unison will read the whole contents of this file (on both hosts), which should be a newline-separated list of paths (relative to the root of the synchronization) and synchronize just these paths, as if it had been started with the "-path=xxx" option for each one of them * when it finishes, it will sleep for a few seconds and then examine the watchfile again; if anything has been added, it will read the new paths, synchronize them, and go back to sleep * that's it! To use this to drive Unison "incrementally," just start it in this mode and start up a tool (on each host) to watch for new changes to the filesystem and append the appropriate paths to the watchfile. Hopefully such tools should not be too hard to write. # Bug fixes: * Fixed a bug that was causing new files to be created with permissions 0x600 instead of using a reasonable default (like 0x644), if the 'perms' flag was set to 0. (Bug reported by Ben Crowell.) * Follow maxthreads preference when transferring directories.
2009-11-20 21:18:47 +01:00
${INSTALL_MAN} ${WRKSRC}/BUGS.txt ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/CONTRIB ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/COPYING ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/NEWS ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/README ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/ROADMAP.txt ${DESTDIR}${PREFIX}/share/doc/unison
${INSTALL_MAN} ${WRKSRC}/TODO.txt ${DESTDIR}${PREFIX}/share/doc/unison
2004-01-05 12:28:07 +01:00
.include "../../lang/ocaml/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"