# Technical Info

DropSync and rsync

DropSync uses a powerful and stable unix tool called rsync to perform all it's syncing under the hood. DropSync comes with two slightly different rsync executables. One is based on rsync (3.1.x) and the other on rsync (2.6.9) with modifications by Apple. The are both open source projects, and the versions distributed with DropSync can be built from source as follows;

- Building rsync-3.1.x:
  1. Download and unpack the rsync sources.

     `curl http://rsync.samba.org/ftp/rsync/src/rsync-3.2.2.tar.gz > rsync-3.2.2.tar.gz`

     `tar zxvf rsync-3.2.2.tar.gz`

  2. Apply the ignore-case patch

     `patch -p1 < patches/ignore-case.diff`

  3. Build

     `./configure CFLAGS='-arch x86_64 -arch i386 \`

     -mmacosx-version-min=10.8' LDFLAGS='-mmacosx-version-min=10.8'

     make

- Building rsync-2.6.9 from Apple:
  1. Download the source code from opensource.apple.com
  2. Download the ignore-case patch from here
  3. Apply the patch

     `cd rsync-54/rsync`

     patch -p1 < rsync42-better-ignore-case.diff

  4. Build using Xcode