|
|
@ -6,12 +6,16 @@ |
|
|
|
# Define NO_OPENSSL environment variable if you do not have OpenSSL. You will |
|
|
|
# Define NO_OPENSSL environment variable if you do not have OpenSSL. You will |
|
|
|
# miss out git-rev-list --merge-order. This also implies MOZILLA_SHA1. |
|
|
|
# miss out git-rev-list --merge-order. This also implies MOZILLA_SHA1. |
|
|
|
# |
|
|
|
# |
|
|
|
# Define NO_CURL if you do not have curl installed. git-http-pull is not |
|
|
|
# Define NO_CURL if you do not have curl installed. git-http-pull and |
|
|
|
# built, and you cannot use http:// and https:// transports. |
|
|
|
# git-http-push are not built, and you cannot use http:// and https:// |
|
|
|
|
|
|
|
# transports. |
|
|
|
# |
|
|
|
# |
|
|
|
# Define CURLDIR=/foo/bar if your curl header and library files are in |
|
|
|
# Define CURLDIR=/foo/bar if your curl header and library files are in |
|
|
|
# /foo/bar/include and /foo/bar/lib directories. |
|
|
|
# /foo/bar/include and /foo/bar/lib directories. |
|
|
|
# |
|
|
|
# |
|
|
|
|
|
|
|
# Define NO_EXPAT if you do not have expat installed. git-http-push is |
|
|
|
|
|
|
|
# not built, and you cannot push using http:// and https:// transports. |
|
|
|
|
|
|
|
# |
|
|
|
# Define NO_STRCASESTR if you don't have strcasestr. |
|
|
|
# Define NO_STRCASESTR if you don't have strcasestr. |
|
|
|
# |
|
|
|
# |
|
|
|
# Define PPC_SHA1 environment variable when running make to make use of |
|
|
|
# Define PPC_SHA1 environment variable when running make to make use of |
|
|
@ -37,25 +41,20 @@ |
|
|
|
# 1461501637330902918203684832716283019655932542976 hashes do not give you |
|
|
|
# 1461501637330902918203684832716283019655932542976 hashes do not give you |
|
|
|
# sufficient guarantee that no collisions between objects will ever happen. |
|
|
|
# sufficient guarantee that no collisions between objects will ever happen. |
|
|
|
|
|
|
|
|
|
|
|
# DEFINES += -DCOLLISION_CHECK |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Define USE_NSEC below if you want git to care about sub-second file mtimes |
|
|
|
# Define USE_NSEC below if you want git to care about sub-second file mtimes |
|
|
|
# and ctimes. Note that you need recent glibc (at least 2.2.4) for this, and |
|
|
|
# and ctimes. Note that you need recent glibc (at least 2.2.4) for this, and |
|
|
|
# it will BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely |
|
|
|
# it will BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely |
|
|
|
# randomly break unless your underlying filesystem supports those sub-second |
|
|
|
# randomly break unless your underlying filesystem supports those sub-second |
|
|
|
# times (my ext3 doesn't). |
|
|
|
# times (my ext3 doesn't). |
|
|
|
|
|
|
|
|
|
|
|
# DEFINES += -DUSE_NSEC |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Define USE_STDEV below if you want git to care about the underlying device |
|
|
|
# Define USE_STDEV below if you want git to care about the underlying device |
|
|
|
# change being considered an inode change from the update-cache perspective. |
|
|
|
# change being considered an inode change from the update-cache perspective. |
|
|
|
|
|
|
|
|
|
|
|
# DEFINES += -DUSE_STDEV |
|
|
|
GIT_VERSION = 0.99.9e |
|
|
|
|
|
|
|
|
|
|
|
GIT_VERSION = 0.99.9d |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# CFLAGS is for the users to override from the command line. |
|
|
|
CFLAGS = -g -O2 -Wall |
|
|
|
CFLAGS = -g -O2 -Wall |
|
|
|
ALL_CFLAGS = $(CFLAGS) $(PLATFORM_DEFINES) $(DEFINES) |
|
|
|
ALL_CFLAGS = $(CFLAGS) |
|
|
|
|
|
|
|
|
|
|
|
prefix = $(HOME) |
|
|
|
prefix = $(HOME) |
|
|
|
bindir = $(prefix)/bin |
|
|
|
bindir = $(prefix)/bin |
|
|
@ -185,6 +184,10 @@ uname_O := $(shell sh -c 'uname -o 2>/dev/null || echo not') |
|
|
|
ifeq ($(uname_S),Darwin) |
|
|
|
ifeq ($(uname_S),Darwin) |
|
|
|
NEEDS_SSL_WITH_CRYPTO = YesPlease |
|
|
|
NEEDS_SSL_WITH_CRYPTO = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
|
|
|
|
## fink |
|
|
|
|
|
|
|
ALL_CFLAGS += -I/sw/include -L/sw/lib |
|
|
|
|
|
|
|
## darwinports |
|
|
|
|
|
|
|
ALL_CFLAGS += -I/opt/local/include -L/opt/local/lib |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifeq ($(uname_S),SunOS) |
|
|
|
ifeq ($(uname_S),SunOS) |
|
|
|
NEEDS_SOCKET = YesPlease |
|
|
|
NEEDS_SOCKET = YesPlease |
|
|
@ -194,19 +197,19 @@ ifeq ($(uname_S),SunOS) |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
INSTALL = ginstall |
|
|
|
INSTALL = ginstall |
|
|
|
TAR = gtar |
|
|
|
TAR = gtar |
|
|
|
PLATFORM_DEFINES += -D__EXTENSIONS__ |
|
|
|
ALL_CFLAGS += -D__EXTENSIONS__ |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifeq ($(uname_O),Cygwin) |
|
|
|
ifeq ($(uname_O),Cygwin) |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
NO_IPV6 = YesPlease |
|
|
|
NO_IPV6 = YesPlease |
|
|
|
X = .exe |
|
|
|
X = .exe |
|
|
|
PLATFORM_DEFINES += -DUSE_SYMLINK_HEAD=0 |
|
|
|
ALL_CFLAGS += -DUSE_SYMLINK_HEAD=0 |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifeq ($(uname_S),OpenBSD) |
|
|
|
ifeq ($(uname_S),OpenBSD) |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
NO_STRCASESTR = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
NEEDS_LIBICONV = YesPlease |
|
|
|
PLATFORM_DEFINES += -I/usr/local/include -L/usr/local/lib |
|
|
|
ALL_CFLAGS += -I/usr/local/include -L/usr/local/lib |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifneq (,$(findstring arm,$(uname_M))) |
|
|
|
ifneq (,$(findstring arm,$(uname_M))) |
|
|
|
ARM_SHA1 = YesPlease |
|
|
|
ARM_SHA1 = YesPlease |
|
|
@ -217,12 +220,16 @@ endif |
|
|
|
ifndef NO_CURL |
|
|
|
ifndef NO_CURL |
|
|
|
ifdef CURLDIR |
|
|
|
ifdef CURLDIR |
|
|
|
# This is still problematic -- gcc does not want -R. |
|
|
|
# This is still problematic -- gcc does not want -R. |
|
|
|
CFLAGS += -I$(CURLDIR)/include |
|
|
|
ALL_CFLAGS += -I$(CURLDIR)/include |
|
|
|
CURL_LIBCURL = -L$(CURLDIR)/lib -R$(CURLDIR)/lib -lcurl |
|
|
|
CURL_LIBCURL = -L$(CURLDIR)/lib -R$(CURLDIR)/lib -lcurl |
|
|
|
else |
|
|
|
else |
|
|
|
CURL_LIBCURL = -lcurl |
|
|
|
CURL_LIBCURL = -lcurl |
|
|
|
endif |
|
|
|
endif |
|
|
|
PROGRAMS += git-http-fetch$X |
|
|
|
PROGRAMS += git-http-fetch$X |
|
|
|
|
|
|
|
ifndef NO_EXPAT |
|
|
|
|
|
|
|
EXPAT_LIBEXPAT = -lexpat |
|
|
|
|
|
|
|
PROGRAMS += git-http-push$X |
|
|
|
|
|
|
|
endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
|
|
|
|
ifndef SHELL_PATH |
|
|
|
ifndef SHELL_PATH |
|
|
@ -240,13 +247,13 @@ ifndef NO_OPENSSL |
|
|
|
OPENSSL_LIBSSL = -lssl |
|
|
|
OPENSSL_LIBSSL = -lssl |
|
|
|
ifdef OPENSSLDIR |
|
|
|
ifdef OPENSSLDIR |
|
|
|
# Again this may be problematic -- gcc does not always want -R. |
|
|
|
# Again this may be problematic -- gcc does not always want -R. |
|
|
|
CFLAGS += -I$(OPENSSLDIR)/include |
|
|
|
ALL_CFLAGS += -I$(OPENSSLDIR)/include |
|
|
|
OPENSSL_LINK = -L$(OPENSSLDIR)/lib -R$(OPENSSLDIR)/lib |
|
|
|
OPENSSL_LINK = -L$(OPENSSLDIR)/lib -R$(OPENSSLDIR)/lib |
|
|
|
else |
|
|
|
else |
|
|
|
OPENSSL_LINK = |
|
|
|
OPENSSL_LINK = |
|
|
|
endif |
|
|
|
endif |
|
|
|
else |
|
|
|
else |
|
|
|
DEFINES += -DNO_OPENSSL |
|
|
|
ALL_CFLAGS += -DNO_OPENSSL |
|
|
|
MOZILLA_SHA1 = 1 |
|
|
|
MOZILLA_SHA1 = 1 |
|
|
|
OPENSSL_LIBSSL = |
|
|
|
OPENSSL_LIBSSL = |
|
|
|
endif |
|
|
|
endif |
|
|
@ -258,7 +265,7 @@ endif |
|
|
|
ifdef NEEDS_LIBICONV |
|
|
|
ifdef NEEDS_LIBICONV |
|
|
|
ifdef ICONVDIR |
|
|
|
ifdef ICONVDIR |
|
|
|
# Again this may be problematic -- gcc does not always want -R. |
|
|
|
# Again this may be problematic -- gcc does not always want -R. |
|
|
|
CFLAGS += -I$(ICONVDIR)/include |
|
|
|
ALL_CFLAGS += -I$(ICONVDIR)/include |
|
|
|
ICONV_LINK = -L$(ICONVDIR)/lib -R$(ICONVDIR)/lib |
|
|
|
ICONV_LINK = -L$(ICONVDIR)/lib -R$(ICONVDIR)/lib |
|
|
|
else |
|
|
|
else |
|
|
|
ICONV_LINK = |
|
|
|
ICONV_LINK = |
|
|
@ -276,15 +283,15 @@ ifdef NEEDS_NSL |
|
|
|
SIMPLE_LIB += -lnsl |
|
|
|
SIMPLE_LIB += -lnsl |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifdef NO_STRCASESTR |
|
|
|
ifdef NO_STRCASESTR |
|
|
|
DEFINES += -Dstrcasestr=gitstrcasestr -DNO_STRCASESTR=1 |
|
|
|
ALL_CFLAGS += -Dstrcasestr=gitstrcasestr -DNO_STRCASESTR=1 |
|
|
|
LIB_OBJS += compat/strcasestr.o |
|
|
|
LIB_OBJS += compat/strcasestr.o |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifdef NO_MMAP |
|
|
|
ifdef NO_MMAP |
|
|
|
DEFINES += -Dmmap=gitfakemmap -Dmunmap=gitfakemunmap -DNO_MMAP |
|
|
|
ALL_CFLAGS += -Dmmap=gitfakemmap -Dmunmap=gitfakemunmap -DNO_MMAP |
|
|
|
LIB_OBJS += compat/mmap.o |
|
|
|
LIB_OBJS += compat/mmap.o |
|
|
|
endif |
|
|
|
endif |
|
|
|
ifdef NO_IPV6 |
|
|
|
ifdef NO_IPV6 |
|
|
|
DEFINES += -DNO_IPV6 -Dsockaddr_storage=sockaddr_in |
|
|
|
ALL_CFLAGS += -DNO_IPV6 -Dsockaddr_storage=sockaddr_in |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
|
|
|
|
ifdef PPC_SHA1 |
|
|
|
ifdef PPC_SHA1 |
|
|
@ -305,7 +312,7 @@ endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
|
|
|
|
DEFINES += -DSHA1_HEADER=$(call shellquote,$(SHA1_HEADER)) |
|
|
|
ALL_CFLAGS += -DSHA1_HEADER=$(call shellquote,$(SHA1_HEADER)) |
|
|
|
|
|
|
|
|
|
|
|
SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ |
|
|
|
SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ |
|
|
|
$(patsubst %.perl,%,$(SCRIPT_PERL)) \ |
|
|
|
$(patsubst %.perl,%,$(SCRIPT_PERL)) \ |
|
|
@ -375,6 +382,7 @@ git-ssh-pull$X: rsh.o fetch.o |
|
|
|
git-ssh-push$X: rsh.o |
|
|
|
git-ssh-push$X: rsh.o |
|
|
|
|
|
|
|
|
|
|
|
git-http-fetch$X: LIBS += $(CURL_LIBCURL) |
|
|
|
git-http-fetch$X: LIBS += $(CURL_LIBCURL) |
|
|
|
|
|
|
|
git-http-push$X: LIBS += $(CURL_LIBCURL) $(EXPAT_LIBEXPAT) |
|
|
|
git-rev-list$X: LIBS += $(OPENSSL_LIBSSL) |
|
|
|
git-rev-list$X: LIBS += $(OPENSSL_LIBSSL) |
|
|
|
|
|
|
|
|
|
|
|
init-db.o: init-db.c |
|
|
|
init-db.o: init-db.c |
|
|
@ -454,8 +462,8 @@ clean: |
|
|
|
rm -f git-core.spec *.pyc *.pyo |
|
|
|
rm -f git-core.spec *.pyc *.pyo |
|
|
|
rm -rf $(GIT_TARNAME) |
|
|
|
rm -rf $(GIT_TARNAME) |
|
|
|
rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz |
|
|
|
rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz |
|
|
|
rm -f git-core_$(GIT_VERSION)-*.deb git-core_$(GIT_VERSION)-*.dsc |
|
|
|
rm -f git-core_$(GIT_VERSION)-*.dsc |
|
|
|
rm -f git-tk_$(GIT_VERSION)-*.deb |
|
|
|
rm -f git-*_$(GIT_VERSION)-*.deb |
|
|
|
$(MAKE) -C Documentation/ clean |
|
|
|
$(MAKE) -C Documentation/ clean |
|
|
|
$(MAKE) -C templates clean |
|
|
|
$(MAKE) -C templates clean |
|
|
|
$(MAKE) -C t/ clean |
|
|
|
$(MAKE) -C t/ clean |
|
|
|