mirror of
https://github.com/git/git
synced 2024-11-05 01:58:18 +00:00
Makefile: reduce repetitive library paths
When we take a library package we depend on (e.g., LIBPCRE) from a directory other than the default location of the system, we add the same directory twice on the linker command like, like so: EXTLIBS += -L$(LIBPCREDIR)/$(lib) $(CC_LD_DYNPATH)$(LIBPCREDIR)/$(lib) Introduce a template "libpath_template" that takes the path to the directory, which can be used like so: EXTLIBS += $(call libpath_template,$(LIBPCREDIR)/$(lib)) and expand it into the "-L$(DIR) $(CC_LD_DYNPATH)$(DIR)" form. Hopefully we can reduce the chance of typoes this way. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
564d0252ca
commit
354dbf7d64
2 changed files with 12 additions and 6 deletions
12
Makefile
12
Makefile
|
@ -1575,7 +1575,7 @@ endif
|
|||
|
||||
ifdef LIBPCREDIR
|
||||
BASIC_CFLAGS += -I$(LIBPCREDIR)/include
|
||||
EXTLIBS += -L$(LIBPCREDIR)/$(lib) $(CC_LD_DYNPATH)$(LIBPCREDIR)/$(lib)
|
||||
EXTLIBS += $(call libpath_template,$(LIBPCREDIR)/$(lib))
|
||||
endif
|
||||
|
||||
ifdef HAVE_ALLOCA_H
|
||||
|
@ -1595,7 +1595,7 @@ else
|
|||
ifdef CURLDIR
|
||||
# Try "-Wl,-rpath=$(CURLDIR)/$(lib)" in such a case.
|
||||
CURL_CFLAGS = -I$(CURLDIR)/include
|
||||
CURL_LIBCURL = -L$(CURLDIR)/$(lib) $(CC_LD_DYNPATH)$(CURLDIR)/$(lib)
|
||||
CURL_LIBCURL = $(call libpath_template,$(CURLDIR)/$(lib))
|
||||
else
|
||||
CURL_CFLAGS =
|
||||
CURL_LIBCURL =
|
||||
|
@ -1631,7 +1631,7 @@ else
|
|||
ifndef NO_EXPAT
|
||||
ifdef EXPATDIR
|
||||
BASIC_CFLAGS += -I$(EXPATDIR)/include
|
||||
EXPAT_LIBEXPAT = -L$(EXPATDIR)/$(lib) $(CC_LD_DYNPATH)$(EXPATDIR)/$(lib) -lexpat
|
||||
EXPAT_LIBEXPAT = $(call libpath_template,$(EXPATDIR)/$(lib)) -lexpat
|
||||
else
|
||||
EXPAT_LIBEXPAT = -lexpat
|
||||
endif
|
||||
|
@ -1644,7 +1644,7 @@ IMAP_SEND_LDFLAGS += $(OPENSSL_LINK) $(OPENSSL_LIBSSL) $(LIB_4_CRYPTO)
|
|||
|
||||
ifdef ZLIB_PATH
|
||||
BASIC_CFLAGS += -I$(ZLIB_PATH)/include
|
||||
EXTLIBS += -L$(ZLIB_PATH)/$(lib) $(CC_LD_DYNPATH)$(ZLIB_PATH)/$(lib)
|
||||
EXTLIBS += $(call libpath_template,$(ZLIB_PATH)/$(lib))
|
||||
endif
|
||||
EXTLIBS += -lz
|
||||
|
||||
|
@ -1652,7 +1652,7 @@ ifndef NO_OPENSSL
|
|||
OPENSSL_LIBSSL = -lssl
|
||||
ifdef OPENSSLDIR
|
||||
BASIC_CFLAGS += -I$(OPENSSLDIR)/include
|
||||
OPENSSL_LINK = -L$(OPENSSLDIR)/$(lib) $(CC_LD_DYNPATH)$(OPENSSLDIR)/$(lib)
|
||||
OPENSSL_LINK = $(call libpath_template,$(OPENSSLDIR)/$(lib))
|
||||
else
|
||||
OPENSSL_LINK =
|
||||
endif
|
||||
|
@ -1679,7 +1679,7 @@ ifndef NO_ICONV
|
|||
ifdef NEEDS_LIBICONV
|
||||
ifdef ICONVDIR
|
||||
BASIC_CFLAGS += -I$(ICONVDIR)/include
|
||||
ICONV_LINK = -L$(ICONVDIR)/$(lib) $(CC_LD_DYNPATH)$(ICONVDIR)/$(lib)
|
||||
ICONV_LINK = $(call libpath_template,$(ICONVDIR)/$(lib))
|
||||
else
|
||||
ICONV_LINK =
|
||||
endif
|
||||
|
|
|
@ -108,3 +108,9 @@ endif
|
|||
define mkdir_p_parent_template
|
||||
$(if $(wildcard $(@D)),,$(QUIET_MKDIR_P_PARENT)$(shell mkdir -p $(@D)))
|
||||
endef
|
||||
|
||||
## Getting sick of writing -L$(SOMELIBDIR) $(CC_LD_DYNPATH)$(SOMELIBDIR)?
|
||||
## Write $(call libpath_template,$(SOMELIBDIR)) instead, perhaps?
|
||||
define libpath_template
|
||||
-L$(1) $(CC_LD_DYNPATH)$(1)
|
||||
endef
|
||||
|
|
Loading…
Reference in a new issue