diff -up git-1.7.10.2/Makefile.orig git-1.7.10.2/Makefile
--- git-1.7.10.2/Makefile.orig	2012-05-11 14:25:45.066322432 -0600
+++ git-1.7.10.2/Makefile	2012-05-19 12:53:42.392429568 -0600
@@ -1242,6 +1242,27 @@ ifeq ($(uname_S),Minix)
 	NO_CURL =
 	NO_EXPAT =
 endif
+ifeq ($(uname_S),Haiku)
+	NO_CROSS_DIRECTORY_HARDLINKS = YesPlease
+	NO_GETTEXT = YesPlease
+	NO_ICONV = YesPlease
+	NO_LIBGEN_H = YesPlease
+	NO_MEMMEM = YesPlease
+	NO_MKSTEMPS = YesPlease
+	NO_TCLTK = YesPlease
+	PTHREAD_LIBS =
+	BASIC_LDFLAGS += -lnetwork -lbsd
+	DEFAULT_EDITOR = nano
+	PERL_PATH = $(portPackageLinksDir)/perl/bin/perl
+	PYTHON_PATH = $(portPackageLinksDir)/python/bin/python
+	prefix = $(portPackageLinksDir)/.self
+	mandir = $(manDir)
+	infodir = $(infoDir)
+	htmldir = $(docDir)
+	gitexecdir = $(libDir)/git-core
+	gitwebdir = $(dataDir)/gitweb
+	template_dir = $(dataDir)/git-core/templates
+endif
 ifneq (,$(findstring MINGW,$(uname_S)))
 	pathsep = ;
 	NO_PREAD = YesPlease
diff -up git-1.7.10.2/git-web--browse.sh.orig git-1.7.10.2/git-web--browse.sh
--- git-1.7.10.2/git-web--browse.sh.orig	2012-05-11 14:25:45.053477376 -0600
+++ git-1.7.10.2/git-web--browse.sh	2012-05-19 12:53:42.405536768 -0600
@@ -116,7 +116,7 @@ if test -z "$browser" ; then
 			browser_candidates="konqueror $browser_candidates"
 		fi
 	else
-		browser_candidates="w3m elinks links lynx"
+		browser_candidates="w3m elinks links lynx open"
 	fi
 	# SECURITYSESSIONID indicates an OS X GUI login session
 	if test -n "$SECURITYSESSIONID" \
