backends/brass/,backends/chert/,backends/flint_lock.cc,
common/debuglog.cc,common/replicate_utils.cc,common/safefcntl.h,
net/progclient.cc,net/remoteconnection.cc,
tests/harness/testsuite.cc: If O_CLOEXEC is supported, pass it to
open() so fds we open are closed if the application using us calls
exec().

git-svn-id: file:///home/xapian-svn/xapian/trunk@16966 6b2f1b92-a4f3-0310-943f-de3cbe41748b
HACKING,backends/flint_lock.cc,common/Makefile.mk,
common/safesyssocket.h,net/progclient.cc,net/tcpclient.cc,
net/tcpserver.cc,tests/harness/backendmanager_remotetcp.cc:
Use SOCK_CLOEXEC where available, and try FD_CLOEXEC if SOCK_CLOEXEC
isn't available.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16967 6b2f1b92-a4f3-0310-943f-de3cbe41748b
net/progclient.cc: Remove O_CLOEXEC where we open stderr on /dev/null
before calling exec as we want that fd to survive the exec!

git-svn-id: file:///home/xapian-svn/xapian/trunk@16968 6b2f1b92-a4f3-0310-943f-de3cbe41748b
backends/flint_lock.cc,net/progclient.cc: Use SOCK_CLOEXEC with
socketpair(), and then clear the close-on-exec flag for child process
end of the pair before we call exec.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16969 6b2f1b92-a4f3-0310-943f-de3cbe41748b
backends/flint_lock.cc: Only set close-on-exec on the lockfile fd if
we are able to clear it in the child process, and clear it in the
child process if we set it when we opened it.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16970 6b2f1b92-a4f3-0310-943f-de3cbe41748b
backends/flint_lock.cc,backends/flint_lock.h: Add flock() based
locking implementation, which is much simpler than using fcntl()
due to saner semantics around releasing locks when closing other
descriptors on the same file.  We can't simply switch to this without
breaking locking compatibility with previous releases, though it
might be useful for porting to platforms without fcntl() locking.
Also, flock() apparently doesn't work over NFS - perhaps that's
OK, but we should at least check the failure mode...

git-svn-id: file:///home/xapian-svn/xapian/trunk@16971 6b2f1b92-a4f3-0310-943f-de3cbe41748b
configure.ac: Use the new flock()-based flint-compatible locking
under DJGPP, and remove special cases to disable chert and brass
under DJGPP (untested, as I no longer have a DJGPP setup or
cross-compiler).

git-svn-id: file:///home/xapian-svn/xapian/trunk@16972 6b2f1b92-a4f3-0310-943f-de3cbe41748b
configure.ac: Fix typo in previous commit.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16973 6b2f1b92-a4f3-0310-943f-de3cbe41748b
Add MIT/X licence boilerplate

git-svn-id: file:///home/xapian-svn/xapian/trunk@16974 6b2f1b92-a4f3-0310-943f-de3cbe41748b
Add git support

git-svn-id: file:///home/xapian-svn/xapian/trunk@16975 6b2f1b92-a4f3-0310-943f-de3cbe41748b
perl/Makefile.am,perl/t/stem.t: Add test that we can create all the
stemmers returned by Stem::get_available_languages().

git-svn-id: file:///home/xapian-svn/xapian/trunk@16979 6b2f1b92-a4f3-0310-943f-de3cbe41748b
perl/util.i.in: Update list of unwrapped things.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16980 6b2f1b92-a4f3-0310-943f-de3cbe41748b
perl/Search/Xapian/Stem.pm: Fix documentation typo.

git-svn-id: file:///home/xapian-svn/xapian/trunk@16981 6b2f1b92-a4f3-0310-943f-de3cbe41748b