mirror of
https://github.com/git/git
synced 2024-09-13 13:24:41 +00:00
Merge branch 'rp/link-curl-before-ssl' into maint
The linkage order of libraries was wrong in places around libcurl. * rp/link-curl-before-ssl: configure.ac: detect ssl need with libcurl Makefile: make curl-config path configurable Makefile: link libcurl before zlib
This commit is contained in:
commit
3897d2d906
17
Makefile
17
Makefile
|
@ -39,6 +39,9 @@ all::
|
||||||
# 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 CURL_CONFIG to curl's configuration program that prints information
|
||||||
|
# about the library (e.g., its version number). The default is 'curl-config'.
|
||||||
|
#
|
||||||
# Define NO_EXPAT if you do not have expat installed. git-http-push is
|
# 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 (dumb).
|
# not built, and you cannot push using http:// and https:// transports (dumb).
|
||||||
#
|
#
|
||||||
|
@ -428,6 +431,7 @@ TCL_PATH = tclsh
|
||||||
TCLTK_PATH = wish
|
TCLTK_PATH = wish
|
||||||
XGETTEXT = xgettext
|
XGETTEXT = xgettext
|
||||||
MSGFMT = msgfmt
|
MSGFMT = msgfmt
|
||||||
|
CURL_CONFIG = curl-config
|
||||||
PTHREAD_LIBS = -lpthread
|
PTHREAD_LIBS = -lpthread
|
||||||
PTHREAD_CFLAGS =
|
PTHREAD_CFLAGS =
|
||||||
GCOV = gcov
|
GCOV = gcov
|
||||||
|
@ -1036,7 +1040,7 @@ ifdef HAVE_ALLOCA_H
|
||||||
endif
|
endif
|
||||||
|
|
||||||
IMAP_SEND_BUILDDEPS =
|
IMAP_SEND_BUILDDEPS =
|
||||||
IMAP_SEND_LDFLAGS = $(OPENSSL_LINK) $(OPENSSL_LIBSSL) $(LIB_4_CRYPTO)
|
IMAP_SEND_LDFLAGS =
|
||||||
|
|
||||||
ifdef NO_CURL
|
ifdef NO_CURL
|
||||||
BASIC_CFLAGS += -DNO_CURL
|
BASIC_CFLAGS += -DNO_CURL
|
||||||
|
@ -1066,13 +1070,13 @@ else
|
||||||
REMOTE_CURL_NAMES = $(REMOTE_CURL_PRIMARY) $(REMOTE_CURL_ALIASES)
|
REMOTE_CURL_NAMES = $(REMOTE_CURL_PRIMARY) $(REMOTE_CURL_ALIASES)
|
||||||
PROGRAM_OBJS += http-fetch.o
|
PROGRAM_OBJS += http-fetch.o
|
||||||
PROGRAMS += $(REMOTE_CURL_NAMES)
|
PROGRAMS += $(REMOTE_CURL_NAMES)
|
||||||
curl_check := $(shell (echo 070908; curl-config --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
|
curl_check := $(shell (echo 070908; $(CURL_CONFIG) --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
|
||||||
ifeq "$(curl_check)" "070908"
|
ifeq "$(curl_check)" "070908"
|
||||||
ifndef NO_EXPAT
|
ifndef NO_EXPAT
|
||||||
PROGRAM_OBJS += http-push.o
|
PROGRAM_OBJS += http-push.o
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
curl_check := $(shell (echo 072200; curl-config --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
|
curl_check := $(shell (echo 072200; $(CURL_CONFIG) --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p)
|
||||||
ifeq "$(curl_check)" "072200"
|
ifeq "$(curl_check)" "072200"
|
||||||
USE_CURL_FOR_IMAP_SEND = YesPlease
|
USE_CURL_FOR_IMAP_SEND = YesPlease
|
||||||
endif
|
endif
|
||||||
|
@ -1093,6 +1097,7 @@ else
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
IMAP_SEND_LDFLAGS += $(OPENSSL_LINK) $(OPENSSL_LIBSSL) $(LIB_4_CRYPTO)
|
||||||
|
|
||||||
ifdef ZLIB_PATH
|
ifdef ZLIB_PATH
|
||||||
BASIC_CFLAGS += -I$(ZLIB_PATH)/include
|
BASIC_CFLAGS += -I$(ZLIB_PATH)/include
|
||||||
|
@ -1978,10 +1983,10 @@ git-imap-send$X: imap-send.o $(IMAP_SEND_BUILDDEPS) GIT-LDFLAGS $(GITLIBS)
|
||||||
|
|
||||||
git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS)
|
git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS)
|
||||||
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
||||||
$(LIBS) $(CURL_LIBCURL)
|
$(CURL_LIBCURL) $(LIBS)
|
||||||
git-http-push$X: http.o http-push.o GIT-LDFLAGS $(GITLIBS)
|
git-http-push$X: http.o http-push.o GIT-LDFLAGS $(GITLIBS)
|
||||||
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
||||||
$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)
|
$(CURL_LIBCURL) $(EXPAT_LIBEXPAT) $(LIBS)
|
||||||
|
|
||||||
git-remote-testsvn$X: remote-testsvn.o GIT-LDFLAGS $(GITLIBS) $(VCSSVN_LIB)
|
git-remote-testsvn$X: remote-testsvn.o GIT-LDFLAGS $(GITLIBS) $(VCSSVN_LIB)
|
||||||
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) \
|
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) \
|
||||||
|
@ -1995,7 +2000,7 @@ $(REMOTE_CURL_ALIASES): $(REMOTE_CURL_PRIMARY)
|
||||||
|
|
||||||
$(REMOTE_CURL_PRIMARY): remote-curl.o http.o http-walker.o GIT-LDFLAGS $(GITLIBS)
|
$(REMOTE_CURL_PRIMARY): remote-curl.o http.o http-walker.o GIT-LDFLAGS $(GITLIBS)
|
||||||
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \
|
||||||
$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)
|
$(CURL_LIBCURL) $(EXPAT_LIBEXPAT) $(LIBS)
|
||||||
|
|
||||||
$(LIB_FILE): $(LIB_OBJS)
|
$(LIB_FILE): $(LIB_OBJS)
|
||||||
$(QUIET_AR)$(RM) $@ && $(AR) $(ARFLAGS) $@ $^
|
$(QUIET_AR)$(RM) $@ && $(AR) $(ARFLAGS) $@ $^
|
||||||
|
|
23
configure.ac
23
configure.ac
|
@ -521,10 +521,33 @@ AC_CHECK_LIB([curl], [curl_global_init],
|
||||||
[NO_CURL=],
|
[NO_CURL=],
|
||||||
[NO_CURL=YesPlease])
|
[NO_CURL=YesPlease])
|
||||||
|
|
||||||
|
if test -z "${NO_CURL}" && test -z "${NO_OPENSSL}"; then
|
||||||
|
|
||||||
|
AC_CHECK_LIB([curl], [Curl_ssl_init],
|
||||||
|
[NEEDS_SSL_WITH_CURL=YesPlease],
|
||||||
|
[NEEDS_SSL_WITH_CURL=])
|
||||||
|
|
||||||
|
GIT_CONF_SUBST([NEEDS_SSL_WITH_CURL])
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
GIT_UNSTASH_FLAGS($CURLDIR)
|
GIT_UNSTASH_FLAGS($CURLDIR)
|
||||||
|
|
||||||
GIT_CONF_SUBST([NO_CURL])
|
GIT_CONF_SUBST([NO_CURL])
|
||||||
|
|
||||||
|
if test -z "$NO_CURL"; then
|
||||||
|
|
||||||
|
AC_CHECK_PROG([CURL_CONFIG], [curl-config],
|
||||||
|
[curl-config],
|
||||||
|
[no])
|
||||||
|
|
||||||
|
if test $CURL_CONFIG != no; then
|
||||||
|
GIT_CONF_SUBST([CURL_CONFIG])
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Define NO_EXPAT if you do not have expat installed. git-http-push is
|
# 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.
|
# not built, and you cannot push using http:// and https:// transports.
|
||||||
|
|
Loading…
Reference in a new issue