Hi there,

Attached please find a patch that ports Hypertable to FreeBSD.
It's been tested on FreeBSD amd64 and i386.

Patch legend:

* Convert shebang lines in shell scripts using bash(1) to be more portable.
  (On FreeBSD, bash is installed as /usr/local/bin/bash.)

* Fix shebang lines in bash(1) scripts to call "bash" instead of /bin/sh.
  On some(?) Linux systems /bin/sh is actually bash, while on other
  systems it's not necessarily true.

* cmake/FindBerkeleyDB.cmake: Search for BerkleyDB 47 bits in
  /usr/local/{include,lib}/db47.

* cmake/FindSIGAR.cmake: Add support for FreeBSD 7, i386 and amd64 platforms.

* cmake/TestHelper.cmake: Call make via $(MAKE) to ensure the correct make
  binary is called (on FreeBSD GNU make is called "gmake", and "make" is
  BSD make, incompatible with GNU make).

* src/cc/AsyncComm/ApplicationHandler.h: Fixed expression so that it works on
  systems where CLOCKS_PER_SEC is less than 1000.  On FreeBSD it's 128, causing
  divizion-by-zero.
  
  Quote from POSIX: Although the value of CLOCKS_PER_SEC is required to be 1
  million on all XSI- conformant systems, it may be variable on other systems,
  and it should not be assumed that CLOCKS_PER_SEC is a compile-time constant.

* src/cc/AsyncComm/Comm.cc, src/cc/AsyncComm/IOHandler.cc,
  src/cc/AsyncComm/IOHandler.h, src/cc/AsyncComm/IOHandlerAccept.cc,
  src/cc/AsyncComm/IOHandlerAccept.h, src/cc/AsyncComm/IOHandlerData.cc,
  src/cc/AsyncComm/IOHandlerData.h, src/cc/AsyncComm/IOHandlerDatagram.cc,
  src/cc/AsyncComm/IOHandlerDatagram.h, src/cc/AsyncComm/Reactor.cc,
  src/cc/AsyncComm/Reactor.h, src/cc/AsyncComm/ReactorRunner.cc,
  src/cc/Common/InetAddr.cc: Port to FreeBSD (mainly by reusing __APPLE__).

* src/cc/Common/FileUtils.cc: Fixed misspelling of HT_XATTR_ENABLED, ported
  to FreeBSD.  (This is based on an earlier 0.9.0.4 port to FreeBSD.)

* src/cc/Common/endian-c.h: Fixed endian detection on non-GNU libc systems.
  On FreeBSD, both _BIG_ENDIAN and _LITTLE_ENDIAN are defined simultaneously
  and define the respective byte-order:

  #define _LITTLE_ENDIAN  1234    /* LSB first: i386, vax */
  #define _BIG_ENDIAN     4321    /* MSB first: 68000, ibm, net */

  The wrong logic caused the HT_BIG_ENDIAN to always be defined on FreeBSD.

* src/cc/Common/tests/inetaddr_test.cc: Added missing include.

* src/cc/Hyperspace/Master.cc: Ported to FreeBSD.

* src/cc/Hypertable/Lib/MetaLogDfsBase.h: On FreeBSD, "fileno" is a macro
  in <stdio.h>.

* tests/integration/cellstore-index-purge/run.sh,
  tests/integration/rowkey-ag-imbalance/run.sh: Don't use bash(1) redirection
  syntax in otherwise perfectly legal sh(1) scripts.

Not fixed in the patch:

* tests/integration/split-merge-loop10/run.sh is completely broken:
  - should gunzip and copy ${SOURCE_DIR}/*.txt.gz files
  - doesn't define ${TESTNUM} (to 4)
  - starts `j' cycle from 0 where 1 is intended
  I've tested manually that it passes on both Linux and FreeBSD.


Cheers,
-- 
Ruslan Ermilov
[email protected]
FreeBSD committer

--

You received this message because you are subscribed to the Google Groups 
"Hypertable Development" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/hypertable-dev?hl=en.


diff -ru hypertable-0.9.2.7-alpha~/bin/clean-database.sh hypertable-0.9.2.7-alpha/bin/clean-database.sh
--- hypertable-0.9.2.7-alpha~/bin/clean-database.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/clean-database.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/fhsize.sh hypertable-0.9.2.7-alpha/bin/fhsize.sh
--- hypertable-0.9.2.7-alpha~/bin/fhsize.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/fhsize.sh	2009-12-12 14:46:42.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash -e
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
@@ -21,6 +21,8 @@
 # Post install script to FHSize the running layout according FHS
 # currently FHS 2.3: http://www.pathname.com/fhs/pub/fhs-2.3.html
 
+set -e
+
 export HYPERTABLE_HOME=$(cd `dirname "$0"`/.. && pwd)
 version=`basename $HYPERTABLE_HOME`
 
diff -ru hypertable-0.9.2.7-alpha~/bin/ht-env.sh hypertable-0.9.2.7-alpha/bin/ht-env.sh
--- hypertable-0.9.2.7-alpha~/bin/ht-env.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/ht-env.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/ht.in hypertable-0.9.2.7-alpha/bin/ht.in
--- hypertable-0.9.2.7-alpha~/bin/ht.in	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/ht.in	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/htbt.sh hypertable-0.9.2.7-alpha/bin/htbt.sh
--- hypertable-0.9.2.7-alpha~/bin/htbt.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/htbt.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/jrun hypertable-0.9.2.7-alpha/bin/jrun
--- hypertable-0.9.2.7-alpha~/bin/jrun	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/jrun	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2007 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/ldd.sh hypertable-0.9.2.7-alpha/bin/ldd.sh
--- hypertable-0.9.2.7-alpha~/bin/ldd.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/ldd.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/postinst.in hypertable-0.9.2.7-alpha/bin/postinst.in
--- hypertable-0.9.2.7-alpha~/bin/postinst.in	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/postinst.in	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/prerm.in hypertable-0.9.2.7-alpha/bin/prerm.in
--- hypertable-0.9.2.7-alpha~/bin/prerm.in	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/prerm.in	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/prerm.sh hypertable-0.9.2.7-alpha/bin/prerm.sh
--- hypertable-0.9.2.7-alpha~/bin/prerm.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/prerm.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/random-wait.sh hypertable-0.9.2.7-alpha/bin/random-wait.sh
--- hypertable-0.9.2.7-alpha~/bin/random-wait.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/random-wait.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 # randomly wait up to specified seconds
 [ $# -gt 0 ] || { echo "Usage: $0 <max_secs>"; exit 1; }
 
diff -ru hypertable-0.9.2.7-alpha~/bin/soname.sh hypertable-0.9.2.7-alpha/bin/soname.sh
--- hypertable-0.9.2.7-alpha~/bin/soname.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/soname.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/src-utils/htbuild hypertable-0.9.2.7-alpha/bin/src-utils/htbuild
--- hypertable-0.9.2.7-alpha~/bin/src-utils/htbuild	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/src-utils/htbuild	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright (C) 2009  Luke Lu ([email protected])
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/src-utils/htpkg hypertable-0.9.2.7-alpha/bin/src-utils/htpkg
--- hypertable-0.9.2.7-alpha~/bin/src-utils/htpkg	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/src-utils/htpkg	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 build=Release
 srcdir=$HOME/Source/hypertable
diff -ru hypertable-0.9.2.7-alpha~/bin/src-utils/ver hypertable-0.9.2.7-alpha/bin/src-utils/ver
--- hypertable-0.9.2.7-alpha~/bin/src-utils/ver	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/src-utils/ver	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/usr/bin/env bash
 # show a version string of the repo
 vstr=`git describe 2> /dev/null`
 
diff -ru hypertable-0.9.2.7-alpha~/bin/start-all-servers.sh hypertable-0.9.2.7-alpha/bin/start-all-servers.sh
--- hypertable-0.9.2.7-alpha~/bin/start-all-servers.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-all-servers.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/start-dfsbroker.sh hypertable-0.9.2.7-alpha/bin/start-dfsbroker.sh
--- hypertable-0.9.2.7-alpha~/bin/start-dfsbroker.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-dfsbroker.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/start-hyperspace.sh hypertable-0.9.2.7-alpha/bin/start-hyperspace.sh
--- hypertable-0.9.2.7-alpha~/bin/start-hyperspace.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-hyperspace.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/start-master.sh hypertable-0.9.2.7-alpha/bin/start-master.sh
--- hypertable-0.9.2.7-alpha~/bin/start-master.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-master.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/start-rangeserver.sh hypertable-0.9.2.7-alpha/bin/start-rangeserver.sh
--- hypertable-0.9.2.7-alpha~/bin/start-rangeserver.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-rangeserver.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/start-test-servers.sh hypertable-0.9.2.7-alpha/bin/start-test-servers.sh
--- hypertable-0.9.2.7-alpha~/bin/start-test-servers.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-test-servers.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 INSTALL_DIR=${INSTALL_DIR:-$(cd `dirname $0`/.. && pwd)}
 HT_TEST_DFS=${HT_TEST_DFS:-local}
 
diff -ru hypertable-0.9.2.7-alpha~/bin/start-thriftbroker.sh hypertable-0.9.2.7-alpha/bin/start-thriftbroker.sh
--- hypertable-0.9.2.7-alpha~/bin/start-thriftbroker.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/start-thriftbroker.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/bin/stop-servers.sh hypertable-0.9.2.7-alpha/bin/stop-servers.sh
--- hypertable-0.9.2.7-alpha~/bin/stop-servers.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/bin/stop-servers.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #
 # Copyright 2008 Doug Judd (Zvents, Inc.)
 #
diff -ru hypertable-0.9.2.7-alpha~/cmake/FindBerkeleyDB.cmake hypertable-0.9.2.7-alpha/cmake/FindBerkeleyDB.cmake
--- hypertable-0.9.2.7-alpha~/cmake/FindBerkeleyDB.cmake	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/cmake/FindBerkeleyDB.cmake	2009-12-11 20:13:29.000000000 +0300
@@ -11,6 +11,7 @@
 
 find_path(BDB_INCLUDE_DIR db_cxx.h NO_DEFAULT_PATH PATHS
     /usr/local/BerkeleyDB.4.7/include
+    /usr/local/include/db47
     /opt/local/include/db47
     /opt/local/include/db46     # introduced key_exists
     /usr/local/include/db4
@@ -22,6 +23,7 @@
 set(BDB_NAMES ${BDB_NAMES} db_cxx)
 find_library(BDB_LIBRARY NAMES ${BDB_NAMES} NO_DEFAULT_PATH PATHS
     /usr/local/BerkeleyDB.4.7/lib
+    /usr/local/lib/db47
     /opt/local/lib/db47
     /opt/local/lib/db46         # ditto
     /usr/local/lib/db4
diff -ru hypertable-0.9.2.7-alpha~/cmake/FindSIGAR.cmake hypertable-0.9.2.7-alpha/cmake/FindSIGAR.cmake
--- hypertable-0.9.2.7-alpha~/cmake/FindSIGAR.cmake	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/cmake/FindSIGAR.cmake	2009-12-11 20:13:29.000000000 +0300
@@ -22,7 +22,9 @@
 set(SIGAR_NAMES sigar-x86-linux
                 sigar-x86_64-linux
                 sigar-amd64-linux
-                sigar-universal-macosx)
+                sigar-universal-macosx
+                sigar-x86-freebsd-7
+                sigar-amd64-freebsd-7)
 find_library(SIGAR_LIBRARY
   NAMES ${SIGAR_NAMES}
   PATHS /usr/lib /usr/local/lib /opt/local/lib
diff -ru hypertable-0.9.2.7-alpha~/cmake/TestHelper.cmake hypertable-0.9.2.7-alpha/cmake/TestHelper.cmake
--- hypertable-0.9.2.7-alpha~/cmake/TestHelper.cmake	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/cmake/TestHelper.cmake	2009-12-11 20:13:29.000000000 +0300
@@ -32,7 +32,7 @@
 macro(add_test_target target dir)
   add_custom_target(${target})
   add_dependencies(${target} runtestservers)
-  add_custom_command(TARGET ${target} POST_BUILD COMMAND make test
+  add_custom_command(TARGET ${target} POST_BUILD COMMAND $(MAKE) test
                      WORKING_DIRECTORY ${dir})
 endmacro()
 
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/ApplicationHandler.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/ApplicationHandler.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/ApplicationHandler.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/ApplicationHandler.h	2009-12-11 20:13:29.000000000 +0300
@@ -88,7 +88,7 @@
       if (m_event_ptr && m_event_ptr->type == Event::MESSAGE &&
           ReactorRunner::ms_record_arrival_clocks) {
         clock_t clock_diff = std::clock() - m_event_ptr->arrival_clocks;
-        uint32_t wait_ms = clock_diff / (CLOCKS_PER_SEC / 1000);
+        uint32_t wait_ms = clock_diff * 1000 / CLOCKS_PER_SEC;
         if (wait_ms >= m_event_ptr->header.timeout_ms) {
           if (m_event_ptr->header.flags & CommHeader::FLAGS_BIT_REQUEST)
             HT_WARNF("Request expired, wait time %u > timeout %u", wait_ms,
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Comm.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Comm.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Comm.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Comm.cc	2009-12-11 20:13:29.000000000 +0300
@@ -28,7 +28,7 @@
 using namespace std;
 
 extern "C" {
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <arpa/inet.h>
 #include <netinet/ip.h>
 #endif
@@ -179,7 +179,7 @@
   if (setsockopt(sd, SOL_TCP, TCP_NODELAY, &one, sizeof(one)) < 0)
     HT_ERRORF("setting TCP_NODEPLAY: %s", strerror(errno));
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   if (setsockopt(sd, SOL_SOCKET, SO_NOSIGPIPE, &one, sizeof(one)) < 0)
     HT_WARNF("setsockopt(SO_NOSIGPIPE) failure: %s", strerror(errno));
 #endif
@@ -292,7 +292,7 @@
     setsockopt(sd, SOL_IP, IP_TOS, &opt, sizeof(opt));
     opt = tos;
     setsockopt(sd, SOL_SOCKET, SO_PRIORITY, &opt, sizeof(opt));
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
     opt = IPTOS_LOWDELAY;       /* see <netinet/in.h> */
     setsockopt(sd, IPPROTO_IP, IP_TOS, &opt, sizeof(opt));
 #endif
@@ -404,7 +404,7 @@
   if (setsockopt(sd, SOL_TCP, TCP_NODELAY, &one, sizeof(one)) < 0)
     HT_ERRORF("setsockopt(TCP_NODELAY) failure: %s", strerror(errno));
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   if (setsockopt(sd, SOL_SOCKET, SO_NOSIGPIPE, &one, sizeof(one)) < 0)
     HT_WARNF("setsockopt(SO_NOSIGPIPE) failure: %s", strerror(errno));
 #endif
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandler.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandler.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandler.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandler.cc	2009-12-11 20:13:29.000000000 +0300
@@ -27,7 +27,7 @@
 
 extern "C" {
 #include <errno.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 }
@@ -119,7 +119,7 @@
 
 
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
 
 void IOHandler::add_poll_interest(int mode) {
   struct kevent events[2];
@@ -226,6 +226,9 @@
     clog << ", EVFILT_SIGNAL, fflags=" << event->fflags;
     break;
   case EVFILT_TIMER:
+#ifdef __FreeBSD__
+    clog << ", EVFILT_TIMER, fflags=" << event->fflags;
+#else
     clog << ", EVFILT_TIMER, fflags={";
     if (event->fflags & NOTE_SECONDS)
       clog << " NOTE_SECONDS";
@@ -236,6 +239,7 @@
     if (event->fflags & NOTE_ABSOLUTE)
       clog << " NOTE_ABSOLUTE";
     clog << " }";
+#endif
     break;
   }
 
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandler.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandler.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandler.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandler.h	2009-12-11 20:13:29.000000000 +0300
@@ -27,8 +27,9 @@
 #include <errno.h>
 #include <time.h>
 #include <sys/types.h>
+#include <sys/socket.h>
 #include <sys/time.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 #include <poll.h>
@@ -65,7 +66,7 @@
       memset(&m_alias, 0, sizeof(m_alias));
     }
 
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
     virtual bool handle_event(struct kevent *event, clock_t arrival_clocks) = 0;
 #elif defined(__linux__)
     virtual bool handle_event(struct epoll_event *event,
@@ -111,7 +112,7 @@
     }
 
     void start_polling() {
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
       add_poll_interest(Reactor::READ_READY);
 #elif defined(__linux__)
       struct epoll_event event;
@@ -176,7 +177,7 @@
   protected:
 
     void stop_polling() {
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
       remove_poll_interest(Reactor::READ_READY|Reactor::WRITE_READY);
 #elif defined(__linux__)
       struct epoll_event event;  // this is necessary for < Linux 2.6.9
@@ -198,7 +199,7 @@
     ReactorPtr          m_reactor_ptr;
     int                 m_poll_interest;
 
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
     void display_event(struct kevent *event);
 #elif defined(__linux__)
     void display_event(struct epoll_event *event);
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerAccept.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerAccept.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerAccept.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerAccept.cc	2009-12-11 20:13:29.000000000 +0300
@@ -45,7 +45,7 @@
 /**
  *
  */
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 bool IOHandlerAccept::handle_event(struct kevent *event, clock_t ) {
   //DisplayEvent(event);
   if (event->filter == EVFILT_READ)
@@ -88,7 +88,7 @@
 #if defined(__linux__)
     if (setsockopt(sd, SOL_TCP, TCP_NODELAY, &one, sizeof(one)) < 0)
       HT_WARNF("setsockopt(TCP_NODELAY) failure: %s", strerror(errno));
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
     if (setsockopt(sd, SOL_SOCKET, SO_NOSIGPIPE, &one, sizeof(one)) < 0)
       HT_WARNF("setsockopt(SO_NOSIGPIPE) failure: %s", strerror(errno));
 #endif
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerAccept.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerAccept.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerAccept.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerAccept.h	2009-12-11 20:13:29.000000000 +0300
@@ -47,7 +47,7 @@
       return;
     }
 
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
     virtual bool handle_event(struct kevent *event, clock_t arrival_clocks);
 #elif defined(__linux__)
     virtual bool handle_event(struct epoll_event *event,
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerData.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerData.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerData.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerData.cc	2009-12-11 20:13:29.000000000 +0300
@@ -30,7 +30,7 @@
 #include <errno.h>
 #include <sys/socket.h>
 #include <sys/types.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 }
@@ -212,7 +212,7 @@
   return false;
 }
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
 
 /**
  *
@@ -530,7 +530,7 @@
   return Error::OK;
 }
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
 
 int IOHandlerData::flush_send_queue() {
   ssize_t nwritten, towrite, remaining;
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerData.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerData.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerData.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerData.h	2009-12-11 20:13:29.000000000 +0300
@@ -65,7 +65,7 @@
 
     int flush_send_queue();
 
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
     virtual bool handle_event(struct kevent *event, clock_t arrival_clocks);
 #elif defined(__linux__)
     virtual bool handle_event(struct epoll_event *event,
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerDatagram.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerDatagram.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerDatagram.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerDatagram.cc	2009-12-11 20:13:29.000000000 +0300
@@ -31,7 +31,7 @@
 #include <netinet/in.h>
 #include <sys/socket.h>
 #include <sys/types.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 }
@@ -100,7 +100,7 @@
   return false;
 }
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
 
 /**
  *
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerDatagram.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerDatagram.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/IOHandlerDatagram.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/IOHandlerDatagram.h	2009-12-11 20:13:29.000000000 +0300
@@ -54,7 +54,7 @@
 
     int flush_send_queue();
 
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
     virtual bool handle_event(struct kevent *event, clock_t arrival_clocks);
 #elif defined(__linux__)
     virtual bool handle_event(struct epoll_event *event,
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Reactor.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Reactor.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Reactor.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Reactor.cc	2009-12-11 20:13:29.000000000 +0300
@@ -36,7 +36,7 @@
 #include <sys/socket.h>
 #include <sys/time.h>
 #include <sys/types.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 }
@@ -64,7 +64,7 @@
     perror("epoll_create");
     exit(1);
   }
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   kqd = kqueue();
 #endif
 
@@ -249,7 +249,7 @@
     }
   }
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   struct kevent event;
 
   EV_SET(&event, m_interrupt_sd, EVFILT_WRITE, EV_ADD | EV_ENABLE, 0, 0, 0);
@@ -287,7 +287,7 @@
     }
   }
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   struct kevent devent;
 
   EV_SET(&devent, m_interrupt_sd, EVFILT_WRITE, EV_DELETE, 0, 0, 0);
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Reactor.h hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Reactor.h
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/Reactor.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/Reactor.h	2009-12-11 20:13:29.000000000 +0300
@@ -93,7 +93,7 @@
 
 #if defined(__linux__)
     int poll_fd;
-#elif defined (__APPLE__)
+#elif defined (__APPLE__) || defined(__FreeBSD__)
     int kqd;
 #endif
 
diff -ru hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/ReactorRunner.cc hypertable-0.9.2.7-alpha/src/cc/AsyncComm/ReactorRunner.cc
--- hypertable-0.9.2.7-alpha~/src/cc/AsyncComm/ReactorRunner.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/AsyncComm/ReactorRunner.cc	2009-12-11 20:13:29.000000000 +0300
@@ -30,7 +30,7 @@
 #include <stdio.h>
 #include <sys/types.h>
 #include <sys/time.h>
-#if defined(__APPLE__)
+#if defined(__APPLE__) || defined(__FreeBSD__)
 #include <sys/event.h>
 #endif
 }
@@ -109,7 +109,7 @@
     HT_ERRORF("epoll_wait(%d) failed : %s", m_reactor_ptr->poll_fd,
               strerror(errno));
 
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
   struct kevent events[32];
 
   while ((n = kevent(m_reactor_ptr->kqd, NULL, 0, events, 32,
@@ -167,7 +167,7 @@
                   strerror(errno));
       continue;
     }
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
     struct kevent devents[2];
     EV_SET(&devents[0], handler->get_sd(), EVFILT_READ, EV_DELETE, 0, 0, 0);
     EV_SET(&devents[1], handler->get_sd(), EVFILT_WRITE, EV_DELETE, 0, 0, 0);
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Common/FileUtils.cc hypertable-0.9.2.7-alpha/src/cc/Common/FileUtils.cc
--- hypertable-0.9.2.7-alpha~/src/cc/Common/FileUtils.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Common/FileUtils.cc	2009-12-11 20:13:29.000000000 +0300
@@ -33,8 +33,12 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <sys/uio.h>
-#ifdef HT_HT_XATTR_ENABLED
-# include <sys/xattr.h>
+#ifdef HT_XATTR_ENABLED
+# if defined(__FreeBSD__)
+#   include <sys/extattr.h>
+# else
+#   include <sys/xattr.h>
+# endif
 # if defined(__linux__)
 #   include <attr/xattr.h>
 # endif
@@ -404,6 +408,8 @@
   return ::getxattr(path.c_str(), canonic.c_str(), value, size);
 #elif defined(__APPLE__)
   return ::getxattr(path.c_str(), canonic.c_str(), value, size, 0, 0);
+#elif defined(__FreeBSD__)
+  return ::extattr_get_file(path.c_str(), EXTATTR_NAMESPACE_USER, canonic.c_str(), value, size);
 #else
   ImplementMe;
 #endif
@@ -418,6 +424,8 @@
   return ::setxattr(path.c_str(), canonic.c_str(), value, size, flags);
 #elif defined(__APPLE__)
   return ::setxattr(path.c_str(), canonic.c_str(), value, size, 0, flags);
+#elif defined(__FreeBSD__)
+  return ::extattr_set_file(path.c_str(), EXTATTR_NAMESPACE_USER, canonic.c_str(), value, size);
 #else
   ImplementMe;
 #endif
@@ -430,6 +438,8 @@
   return ::fgetxattr(fd, canonic.c_str(), value, size);
 #elif defined(__APPLE__)
   return ::fgetxattr(fd, canonic.c_str(), value, size, 0, 0);
+#elif defined(__FreeBSD__)
+  return ::extattr_get_fd(fd, EXTATTR_NAMESPACE_USER, canonic.c_str(), value, size);
 #else
   ImplementMe;
 #endif
@@ -444,6 +454,8 @@
   return ::fsetxattr(fd, canonic.c_str(), value, size, flags);
 #elif defined(__APPLE__)
   return ::fsetxattr(fd, canonic.c_str(), value, size, 0, flags);
+#elif defined(__FreeBSD__)
+  return ::extattr_set_fd(fd, EXTATTR_NAMESPACE_USER, canonic.c_str(), value, size);
 #else
   ImplementMe;
 #endif
@@ -456,6 +468,8 @@
   return ::removexattr(path.c_str(), canonic.c_str());
 #elif defined(__APPLE__)
   return ::removexattr(path.c_str(), canonic.c_str(), 0);
+#elif defined(__FreeBSD__)
+  return ::extattr_delete_file(path.c_str(), EXTATTR_NAMESPACE_USER, canonic.c_str());
 #else
   ImplementMe;
 #endif
@@ -467,6 +481,8 @@
   return ::fremovexattr(fd, canonic.c_str());
 #elif defined(__APPLE__)
   return ::fremovexattr(fd, canonic.c_str(), 0);
+#elif defined(__FreeBSD__)
+  return ::extattr_delete_fd(fd, EXTATTR_NAMESPACE_USER, canonic.c_str());
 #else
   ImplementMe;
 #endif
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Common/InetAddr.cc hypertable-0.9.2.7-alpha/src/cc/Common/InetAddr.cc
--- hypertable-0.9.2.7-alpha~/src/cc/Common/InetAddr.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Common/InetAddr.cc	2009-12-11 20:13:29.000000000 +0300
@@ -76,7 +76,7 @@
       HT_ERRORF("gethostbyname '%s': error: %d", host, err);
       return false;
     }
-#elif defined(__APPLE__)
+#elif defined(__APPLE__) || defined(__FreeBSD__)
     // This is supposed to be safe on Darwin (despite the man page)
     // and FreeBSD, as it's implemented with thread local storage.
     struct hostent *he = gethostbyname(host);
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Common/endian-c.h hypertable-0.9.2.7-alpha/src/cc/Common/endian-c.h
--- hypertable-0.9.2.7-alpha~/src/cc/Common/endian-c.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Common/endian-c.h	2009-12-11 20:13:29.000000000 +0300
@@ -37,12 +37,6 @@
 #  error Unknown machine endianness detected.
 # endif
 # define HT_BYTE_ORDER __BYTE_ORDER
-#elif defined(_BIG_ENDIAN)
-# define HT_BIG_ENDIAN
-# define HT_BYTE_ORDER 4321
-#elif defined(_LITTLE_ENDIAN)
-# define HT_LITTLE_ENDIAN
-# define HT_BYTE_ORDER 1234
 #elif defined(__sparc) || defined(__sparc__) \
    || defined(_POWER) || defined(__powerpc__) \
    || defined(__ppc__) || defined(__hpux) \
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Common/tests/inetaddr_test.cc hypertable-0.9.2.7-alpha/src/cc/Common/tests/inetaddr_test.cc
--- hypertable-0.9.2.7-alpha~/src/cc/Common/tests/inetaddr_test.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Common/tests/inetaddr_test.cc	2009-12-11 20:13:29.000000000 +0300
@@ -4,6 +4,7 @@
 #include "Common/Stopwatch.h"
 #include "Common/Init.h"
 
+#include <sys/socket.h>
 #include <arpa/inet.h>
 #include <netdb.h>
 
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Hyperspace/Master.cc hypertable-0.9.2.7-alpha/src/cc/Hyperspace/Master.cc
--- hypertable-0.9.2.7-alpha~/src/cc/Hyperspace/Master.cc	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Hyperspace/Master.cc	2009-12-11 20:13:29.000000000 +0300
@@ -31,7 +31,11 @@
 #include <sys/time.h>
 #include <sys/types.h>
 #include <sys/stat.h>
+#if defined(__FreeBSD__)
+#include <sys/extattr.h>
+#else
 #include <sys/xattr.h>
+#endif
 #include <unistd.h>
 }
 
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Hypertable/Lib/MetaLogDfsBase.h hypertable-0.9.2.7-alpha/src/cc/Hypertable/Lib/MetaLogDfsBase.h
--- hypertable-0.9.2.7-alpha~/src/cc/Hypertable/Lib/MetaLogDfsBase.h	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Hypertable/Lib/MetaLogDfsBase.h	2009-12-11 20:13:29.000000000 +0300
@@ -50,6 +50,7 @@
 
   int fd() { return m_fd; }
   void fd(int f) { m_fd = f; }
+#undef fileno
   int32_t fileno() { return m_fileno; }
   void fileno(int32_t n) { m_fileno = n; }
   String &filename() { return m_filename; }
diff -ru hypertable-0.9.2.7-alpha~/src/cc/Hypertable/Lib/tests/bmz-tests/bmz-tests.sh hypertable-0.9.2.7-alpha/src/cc/Hypertable/Lib/tests/bmz-tests/bmz-tests.sh
--- hypertable-0.9.2.7-alpha~/src/cc/Hypertable/Lib/tests/bmz-tests/bmz-tests.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/src/cc/Hypertable/Lib/tests/bmz-tests/bmz-tests.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,5 +1,5 @@
-#!/bin/bash -ex
+#!/bin/sh -ex
 
 for t in t*.sh; do
-  bash -ex $t
+  sh -ex $t
 done
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/cellstore-index-purge/run.sh hypertable-0.9.2.7-alpha/tests/integration/cellstore-index-purge/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/cellstore-index-purge/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/cellstore-index-purge/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -15,6 +15,6 @@
 
 sleep 2
 
-$HYPERTABLE_HOME/bin/ht_load_generator update --spec-file=data.spec --max-bytes=$MAX_BYTES --rowkey.seed=1 >& 1.out
+$HYPERTABLE_HOME/bin/ht_load_generator update --spec-file=data.spec --max-bytes=$MAX_BYTES --rowkey.seed=1 > 1.out 2>&1
 
-$HYPERTABLE_HOME/bin/ht_load_generator query --spec-file=data.spec --max-bytes=100000 --rowkey.seed=1 >& query.out
+$HYPERTABLE_HOME/bin/ht_load_generator query --spec-file=data.spec --max-bytes=100000 --rowkey.seed=1 > query.out 2>&1
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/commit-log-gc/run.sh hypertable-0.9.2.7-alpha/tests/integration/commit-log-gc/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/commit-log-gc/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/commit-log-gc/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/multiple-maintenance-threads/dump-loop.sh hypertable-0.9.2.7-alpha/tests/integration/multiple-maintenance-threads/dump-loop.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/multiple-maintenance-threads/dump-loop.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/multiple-maintenance-threads/dump-loop.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/multiple-maintenance-threads/run.sh hypertable-0.9.2.7-alpha/tests/integration/multiple-maintenance-threads/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/multiple-maintenance-threads/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/multiple-maintenance-threads/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/rowkey-ag-imbalance/run.sh hypertable-0.9.2.7-alpha/tests/integration/rowkey-ag-imbalance/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/rowkey-ag-imbalance/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/rowkey-ag-imbalance/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -9,7 +9,7 @@
 
 $HT_HOME/bin/Hypertable.RangeServer --verbose --pidfile=$PIDFILE \
     --Hypertable.RangeServer.Range.SplitSize=2000000 \
-    --Hypertable.RangeServer.Maintenance.Interval=100 >& rangeserver.output &
+    --Hypertable.RangeServer.Maintenance.Interval=100 > rangeserver.output 2>&1 &
 
 sleep 2
 
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/scan-concurrency/dump-loop.sh hypertable-0.9.2.7-alpha/tests/integration/scan-concurrency/dump-loop.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/scan-concurrency/dump-loop.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/scan-concurrency/dump-loop.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/scan-concurrency/run.sh hypertable-0.9.2.7-alpha/tests/integration/scan-concurrency/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/scan-concurrency/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/scan-concurrency/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/sequential-load/run.sh hypertable-0.9.2.7-alpha/tests/integration/sequential-load/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/sequential-load/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/sequential-load/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/split-merge-loop10/run.sh hypertable-0.9.2.7-alpha/tests/integration/split-merge-loop10/run.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/split-merge-loop10/run.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/split-merge-loop10/run.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 HT_HOME=${INSTALL_DIR:-"$HOME/hypertable/current"}
 SCRIPT_DIR=`dirname $0`
diff -ru hypertable-0.9.2.7-alpha~/tests/integration/split-recovery/run-n.sh hypertable-0.9.2.7-alpha/tests/integration/split-recovery/run-n.sh
--- hypertable-0.9.2.7-alpha~/tests/integration/split-recovery/run-n.sh	2009-09-19 04:58:31.000000000 +0400
+++ hypertable-0.9.2.7-alpha/tests/integration/split-recovery/run-n.sh	2009-12-11 20:13:29.000000000 +0300
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 [ $# -gt 0 ] || { echo "$0 <n>"; exit 1; }
 

Reply via email to