From b5225286b226759262c0637058528af03226fba6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=B8=D0=BB=D1=8F=D0=BD=20=D0=9F=D0=B0=D0=BB=D0=B0?= =?UTF-8?q?=D1=83=D0=B7=D0=BE=D0=B2?= Date: Sun, 12 Feb 2012 17:23:36 +0100 Subject: Makefile: introduce CHARSET_LIB to link with -lcharset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On some systems, the function locale_charset() may not be exported from libiconv but is available from libcharset, and we need -lcharset when linking. Introduce a make variable CHARSET_LIB that can be set to -lcharsetlib on such systems. Also autodetect this in the configure script by first looking for the symbol in libiconv, and then libcharset. Signed-off-by: Дилян Палаузов --- config.mak.in | 1 + 1 file changed, 1 insertion(+) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 10698c8292..b2ba7104eb 100644 --- a/config.mak.in +++ b/config.mak.in @@ -74,3 +74,4 @@ SNPRINTF_RETURNS_BOGUS=@SNPRINTF_RETURNS_BOGUS@ NO_PTHREADS=@NO_PTHREADS@ PTHREAD_CFLAGS=@PTHREAD_CFLAGS@ PTHREAD_LIBS=@PTHREAD_LIBS@ +CHARSET_LIB=@CHARSET_LIB@ -- cgit v1.2.1 From bf1712621178340e0f15cb060afc8e650ae72faf Mon Sep 17 00:00:00 2001 From: Jeff King Date: Wed, 30 May 2012 06:22:42 -0400 Subject: docs: drop asciidoc7compatible flag When we made the switch to supporting asciidoc 8 in 4c7100a (Documentation: adjust to AsciiDoc 8, 2007-06-14), we were able to leave most of the documentation intact by defining asciidoc7compatible. Since commit 6cf378f (docs: stop using asciidoc no-inline-literal, 2012-04-26), we don't support versions of asciidoc older than 8.4.1, which is when inline literals were introduced. Therefore there is not much point in keeping our documentation compatible with asciidoc 7. So we are now free to drop the asciidoc7compatible flag and update the documentation itself to assume asciidoc8. Fortunately, doing the latter is very easy; we weren't using any of the constructs impacted by asciidoc7compatible, so there are no changes to make. The reason is somewhat subtle. The asciidoc7compatible affects only super/sub-scripts ("^" and "~") and index terms. We don't use the latter at all. Nor we do we use the former, but we did have to protect them from accidental expansion in constructs like "rev^1". However, all of our uses of "~" and "^" are either in code blocks (which are rendered literally), or inside backticks. Prior to 6cf378f, backticks were not inline literals, and needed proper quoting. But post-6cf378f, we don't have to worry whether we are using the old or new rules, as those characters are not interpreted at all in either case. I verified that the result of "make install-html install-man" is identical before and after this patch on asciidoc 8.6.7. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- config.mak.in | 1 - 1 file changed, 1 deletion(-) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index b2ba7104eb..802d34223a 100644 --- a/config.mak.in +++ b/config.mak.in @@ -28,7 +28,6 @@ VPATH = @srcdir@ export exec_prefix mandir export srcdir VPATH -ASCIIDOC7=@ASCIIDOC7@ NEEDS_SSL_WITH_CRYPTO=@NEEDS_SSL_WITH_CRYPTO@ NO_OPENSSL=@NO_OPENSSL@ NO_CURL=@NO_CURL@ -- cgit v1.2.1 From 40bfbde9da5c6cbc85f49a755f27162dc966fd89 Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Tue, 11 Sep 2012 17:45:30 +0200 Subject: build: don't duplicate substitution of make variables Thanks to our 'GIT_CONF_SUBST' layer in configure.ac, a make variable 'VAR' can be defined to a value 'VAL' at ./configure runtime in our build system simply by using "GIT_CONF_SUBST([VAR], [VAL])" in configure.ac, rather than having both to call "AC_SUBST([VAR], [VAL])" in configure.ac and adding the 'VAR = @VAR@' definition in config.mak.in. Less duplication, less margin for error, less possibility of confusion. While at it, fix some formatting issues in configure.ac that unnecessarily obscured the code flow. Signed-off-by: Stefano Lattarini Signed-off-by: Junio C Hamano --- config.mak.in | 49 ------------------------------------------------- 1 file changed, 49 deletions(-) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 802d34223a..69d48382fe 100644 --- a/config.mak.in +++ b/config.mak.in @@ -5,12 +5,10 @@ CC = @CC@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ -CC_LD_DYNPATH = @CC_LD_DYNPATH@ AR = @AR@ TAR = @TAR@ DIFF = @DIFF@ #INSTALL = @INSTALL@ # needs install-sh or install.sh in sources -TCLTK_PATH = @TCLTK_PATH@ prefix = @prefix@ exec_prefix = @exec_prefix@ @@ -27,50 +25,3 @@ VPATH = @srcdir@ export exec_prefix mandir export srcdir VPATH - -NEEDS_SSL_WITH_CRYPTO=@NEEDS_SSL_WITH_CRYPTO@ -NO_OPENSSL=@NO_OPENSSL@ -NO_CURL=@NO_CURL@ -NO_EXPAT=@NO_EXPAT@ -NO_LIBGEN_H=@NO_LIBGEN_H@ -HAVE_PATHS_H=@HAVE_PATHS_H@ -HAVE_LIBCHARSET_H=@HAVE_LIBCHARSET_H@ -NO_GETTEXT=@NO_GETTEXT@ -LIBC_CONTAINS_LIBINTL=@LIBC_CONTAINS_LIBINTL@ -NEEDS_LIBICONV=@NEEDS_LIBICONV@ -NEEDS_SOCKET=@NEEDS_SOCKET@ -NEEDS_RESOLV=@NEEDS_RESOLV@ -NEEDS_LIBGEN=@NEEDS_LIBGEN@ -NO_SYS_SELECT_H=@NO_SYS_SELECT_H@ -NO_D_INO_IN_DIRENT=@NO_D_INO_IN_DIRENT@ -NO_D_TYPE_IN_DIRENT=@NO_D_TYPE_IN_DIRENT@ -NO_SOCKADDR_STORAGE=@NO_SOCKADDR_STORAGE@ -NO_IPV6=@NO_IPV6@ -NO_HSTRERROR=@NO_HSTRERROR@ -NO_STRCASESTR=@NO_STRCASESTR@ -NO_STRTOK_R=@NO_STRTOK_R@ -NO_FNMATCH=@NO_FNMATCH@ -NO_FNMATCH_CASEFOLD=@NO_FNMATCH_CASEFOLD@ -NO_MEMMEM=@NO_MEMMEM@ -NO_STRLCPY=@NO_STRLCPY@ -NO_UINTMAX_T=@NO_UINTMAX_T@ -NO_STRTOUMAX=@NO_STRTOUMAX@ -NO_SETENV=@NO_SETENV@ -NO_UNSETENV=@NO_UNSETENV@ -NO_MKDTEMP=@NO_MKDTEMP@ -NO_MKSTEMPS=@NO_MKSTEMPS@ -NO_INET_NTOP=@NO_INET_NTOP@ -NO_INET_PTON=@NO_INET_PTON@ -NO_ICONV=@NO_ICONV@ -OLD_ICONV=@OLD_ICONV@ -NO_REGEX=@NO_REGEX@ -USE_LIBPCRE=@USE_LIBPCRE@ -NO_DEFLATE_BOUND=@NO_DEFLATE_BOUND@ -INLINE=@INLINE@ -SOCKLEN_T=@SOCKLEN_T@ -FREAD_READS_DIRECTORIES=@FREAD_READS_DIRECTORIES@ -SNPRINTF_RETURNS_BOGUS=@SNPRINTF_RETURNS_BOGUS@ -NO_PTHREADS=@NO_PTHREADS@ -PTHREAD_CFLAGS=@PTHREAD_CFLAGS@ -PTHREAD_LIBS=@PTHREAD_LIBS@ -CHARSET_LIB=@CHARSET_LIB@ -- cgit v1.2.1 From dd6fc7ca91f79f9cee70943e64c4a4d4569ca4dd Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Sun, 9 Dec 2012 11:36:17 +0100 Subject: Makefile: whitespace style fixes in macro definitions Consistently use a single space before and after the "=" (or ":=", "+=", etc.) in assignments to make macros. Granted, this was not a big deal, but I did find the needless inconsistency quite distracting. Signed-off-by: Stefano Lattarini Signed-off-by: Junio C Hamano --- config.mak.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 69d48382fe..e8a9bb4682 100644 --- a/config.mak.in +++ b/config.mak.in @@ -18,7 +18,7 @@ datarootdir = @datarootdir@ template_dir = @datadir@/git-core/templates sysconfdir = @sysconfdir@ -mandir=@mandir@ +mandir = @mandir@ srcdir = @srcdir@ VPATH = @srcdir@ -- cgit v1.2.1 From fc1c5415d69dd7997d20b5a9bdb204d3ee12ed08 Mon Sep 17 00:00:00 2001 From: "Christoph J. Thompson" Date: Sat, 2 Feb 2013 22:25:11 +0100 Subject: Honor configure's htmldir switch Honor autoconf's --htmldir switch. This allows relocating HTML docs straight from the configure script. Signed-off-by: Christoph J. Thompson Signed-off-by: Junio C Hamano --- config.mak.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 802d34223a..77715caa93 100644 --- a/config.mak.in +++ b/config.mak.in @@ -20,7 +20,8 @@ datarootdir = @datarootdir@ template_dir = @datadir@/git-core/templates sysconfdir = @sysconfdir@ -mandir=@mandir@ +mandir = @mandir@ +htmldir = @htmldir@ srcdir = @srcdir@ VPATH = @srcdir@ -- cgit v1.2.1 From d8cf908cb6012cd4dc3d1089a849daf646150c2e Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sat, 2 Feb 2013 17:58:49 -0800 Subject: config.mak.in: remove unused definitions When 5566771 (autoconf: Use autoconf to write installation directories to config.mak.autogen, 2006-07-03) introduced support for autoconf generated config.mak file, it added an "export" for a few common makefile variables, in addition to definitions of srcdir and VPATH. The "export" logically does not belong there. The make variables like mandir, prefix, etc, should be exported to submakes for people who use config.mak and people who use config.mak.autogen the same way; if we want to get these exported, that should be in the main Makefile. We do use mandir and htmldir in Documentation/Makefile, so let's add export for them in the main Makefile instead. We may eventually want to support VPATH, and srcdir may turn out to be useful for that purpose, but right now nobody uses it, so it is useless to define them in this file. Signed-off-by: Junio C Hamano --- config.mak.in | 7 ------- 1 file changed, 7 deletions(-) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 802d34223a..947ca5776a 100644 --- a/config.mak.in +++ b/config.mak.in @@ -13,7 +13,6 @@ DIFF = @DIFF@ TCLTK_PATH = @TCLTK_PATH@ prefix = @prefix@ -exec_prefix = @exec_prefix@ bindir = @bindir@ gitexecdir = @libexecdir@/git-core datarootdir = @datarootdir@ @@ -22,12 +21,6 @@ sysconfdir = @sysconfdir@ mandir=@mandir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - -export exec_prefix mandir -export srcdir VPATH - NEEDS_SSL_WITH_CRYPTO=@NEEDS_SSL_WITH_CRYPTO@ NO_OPENSSL=@NO_OPENSSL@ NO_CURL=@NO_CURL@ -- cgit v1.2.1 From 55d9bf0aa8428463da2d810024ab32d176be4d65 Mon Sep 17 00:00:00 2001 From: Jiang Xin Date: Tue, 19 Feb 2013 19:23:29 +0800 Subject: Bugfix: undefined htmldir in config.mak.autogen Html documents will be installed to root dir (/) no matter what prefix is set, if run these commands before `make` and `make install-html`: $ make configure $ ./configure --prefix= After the installation, all the html documents will copy to rootdir (/), and: $ git --html-path $ git help -w something fatal: '': not a documentation directory. This is because the variable "htmldir" points to a undefined variable "$(docdir)" in file "config.mak.autogen", which is generated by running `./configure`. By default $(docdir) generated by configure is supposed be set this way: datarootdir='${prefix}/share' htmldir='${docdir}' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' but since fc1c5415d69d (Honor configure's htmldir switch, 2013-02-02), we only set and export htmldir without doing so for PACKAGE_TARNAME (which is set to 'git' by the configure script). Add the required two variables "PACKAGE_TARNAME" and "docdir" to file "config.mak.in" will work this issue around. Signed-off-by: Jiang Xin Signed-off-by: Junio C Hamano --- config.mak.in | 2 ++ 1 file changed, 2 insertions(+) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 77715caa93..49619428dc 100644 --- a/config.mak.in +++ b/config.mak.in @@ -9,6 +9,7 @@ CC_LD_DYNPATH = @CC_LD_DYNPATH@ AR = @AR@ TAR = @TAR@ DIFF = @DIFF@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ #INSTALL = @INSTALL@ # needs install-sh or install.sh in sources TCLTK_PATH = @TCLTK_PATH@ @@ -19,6 +20,7 @@ gitexecdir = @libexecdir@/git-core datarootdir = @datarootdir@ template_dir = @datadir@/git-core/templates sysconfdir = @sysconfdir@ +docdir = @docdir@ mandir = @mandir@ htmldir = @htmldir@ -- cgit v1.2.1 From b4eead95e0c207e4f0492298d795674da119f684 Mon Sep 17 00:00:00 2001 From: Kirill Smelkov Date: Tue, 5 Mar 2013 16:43:25 +0400 Subject: Fix `make install` when configured with autoconf Commit d8cf908c (config.mak.in: remove unused definitions) removed exec_prefix = @exec_prefix@ from config.mak.in, because nobody directly used ${exec_prefix}, but overlooked that other autoconf definitions could indirectly expand that variable. For example the following snippet from config.mak.in prefix = @prefix@ bindir = @bindir@ gitexecdir = @libexecdir@/git-core datarootdir = @datarootdir@ template_dir = @datadir@/git-core/templates sysconfdir = @sysconfdir@ is expanded to prefix = /home/kirr/local/git bindir = ${exec_prefix}/bin <-- HERE gitexecdir = ${exec_prefix}/libexec/git-core <-- datarootdir = ${prefix}/share template_dir = ${datarootdir}/git-core/templates sysconfdir = ${prefix}/etc on my system, after `configure --prefix=$HOME/local/git` and withot exec_prefix being defined there I get an error on install: install -d -m 755 '/bin' install -d -m 755 '/libexec/git-core' install: cannot create directory `/libexec': Permission denied Makefile:2292: recipe for target `install' failed Fix it. Signed-off-by: Kirill Smelkov Signed-off-by: Junio C Hamano --- config.mak.in | 1 + 1 file changed, 1 insertion(+) (limited to 'config.mak.in') diff --git a/config.mak.in b/config.mak.in index 947ca5776a..515a4aa820 100644 --- a/config.mak.in +++ b/config.mak.in @@ -13,6 +13,7 @@ DIFF = @DIFF@ TCLTK_PATH = @TCLTK_PATH@ prefix = @prefix@ +exec_prefix = @exec_prefix@ bindir = @bindir@ gitexecdir = @libexecdir@/git-core datarootdir = @datarootdir@ -- cgit v1.2.1