From: Junio C Hamano Date: Sun, 6 Nov 2005 09:27:15 +0000 (-0800) Subject: Merge in http-push first stage. X-Git-Tag: v0.99.9e^2~9 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/4ea836dba92894828c73b8cadd927bc6128866b0?hp=-c Merge in http-push first stage. --- 4ea836dba92894828c73b8cadd927bc6128866b0 diff --combined Makefile index 76d33b44f8,f4fe31e8ac..6f9b0d185a --- a/Makefile +++ b/Makefile @@@ -6,12 -6,16 +6,16 @@@ # 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. # - # Define NO_CURL if you do not have curl installed. git-http-pull is not - # built, and you cannot use http:// and https:// transports. + # Define NO_CURL if you do not have curl installed. git-http-pull and + # 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 # /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 PPC_SHA1 environment variable when running make to make use of @@@ -37,21 -41,25 +41,21 @@@ # 1461501637330902918203684832716283019655932542976 hashes do not give you # 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 # 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 # randomly break unless your underlying filesystem supports those sub-second # times (my ext3 doesn't). -# DEFINES += -DUSE_NSEC - # 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. -# DEFINES += -DUSE_STDEV - GIT_VERSION = 0.99.9.GIT +# CFLAGS is for the users to override from the command line. + CFLAGS = -g -O2 -Wall -ALL_CFLAGS = $(CFLAGS) $(PLATFORM_DEFINES) $(DEFINES) +ALL_CFLAGS = $(CFLAGS) prefix = $(HOME) bindir = $(prefix)/bin @@@ -190,19 -198,19 +194,19 @@@ ifeq ($(uname_S),SunOS NO_STRCASESTR = YesPlease INSTALL = ginstall TAR = gtar - PLATFORM_DEFINES += -D__EXTENSIONS__ + ALL_CFLAGS += -D__EXTENSIONS__ endif ifeq ($(uname_O),Cygwin) NO_STRCASESTR = YesPlease NEEDS_LIBICONV = YesPlease NO_IPV6 = YesPlease X = .exe - PLATFORM_DEFINES += -DUSE_SYMLINK_HEAD=0 + ALL_CFLAGS += -DUSE_SYMLINK_HEAD=0 endif ifeq ($(uname_S),OpenBSD) NO_STRCASESTR = 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 ifneq (,$(findstring arm,$(uname_M))) ARM_SHA1 = YesPlease @@@ -213,12 -221,16 +217,16 @@@ endi ifndef NO_CURL ifdef CURLDIR # 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 else CURL_LIBCURL = -lcurl endif PROGRAMS += git-http-fetch$X + ifndef NO_EXPAT + EXPAT_LIBEXPAT = -lexpat + PROGRAMS += git-http-push$X + endif endif ifndef SHELL_PATH @@@ -236,13 -248,13 +244,13 @@@ ifndef NO_OPENSS OPENSSL_LIBSSL = -lssl ifdef OPENSSLDIR # 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 else OPENSSL_LINK = endif else - DEFINES += -DNO_OPENSSL + ALL_CFLAGS += -DNO_OPENSSL MOZILLA_SHA1 = 1 OPENSSL_LIBSSL = endif @@@ -254,7 -266,7 +262,7 @@@ endi ifdef NEEDS_LIBICONV ifdef ICONVDIR # 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 else ICONV_LINK = @@@ -272,15 -284,15 +280,15 @@@ ifdef NEEDS_NS SIMPLE_LIB += -lnsl endif ifdef NO_STRCASESTR - DEFINES += -Dstrcasestr=gitstrcasestr -DNO_STRCASESTR=1 + ALL_CFLAGS += -Dstrcasestr=gitstrcasestr -DNO_STRCASESTR=1 LIB_OBJS += compat/strcasestr.o endif ifdef NO_MMAP - DEFINES += -Dmmap=gitfakemmap -Dmunmap=gitfakemunmap -DNO_MMAP + ALL_CFLAGS += -Dmmap=gitfakemmap -Dmunmap=gitfakemunmap -DNO_MMAP LIB_OBJS += compat/mmap.o endif ifdef NO_IPV6 - DEFINES += -DNO_IPV6 -Dsockaddr_storage=sockaddr_in + ALL_CFLAGS += -DNO_IPV6 -Dsockaddr_storage=sockaddr_in endif ifdef PPC_SHA1 @@@ -301,7 -313,7 +309,7 @@@ endi endif endif -DEFINES += -DSHA1_HEADER=$(call shellquote,$(SHA1_HEADER)) +ALL_CFLAGS += -DSHA1_HEADER=$(call shellquote,$(SHA1_HEADER)) SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ $(patsubst %.perl,%,$(SCRIPT_PERL)) \ @@@ -371,6 -383,7 +379,7 @@@ git-ssh-pull$X: rsh.o fetch. git-ssh-push$X: rsh.o git-http-fetch$X: LIBS += $(CURL_LIBCURL) + git-http-push$X: LIBS += $(CURL_LIBCURL) $(EXPAT_LIBEXPAT) git-rev-list$X: LIBS += $(OPENSSL_LIBSSL) init-db.o: init-db.c @@@ -450,8 -463,8 +459,8 @@@ clean rm -f git-core.spec *.pyc *.pyo rm -rf $(GIT_TARNAME) 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-tk_$(GIT_VERSION)-*.deb + rm -f git-core_$(GIT_VERSION)-*.dsc + rm -f git-*_$(GIT_VERSION)-*.deb $(MAKE) -C Documentation/ clean $(MAKE) -C templates clean $(MAKE) -C t/ clean