{"thread":{"id":"5175","subject":"[PATCH 0/4] autoconf: Some improvements","startedAt":"2006-08-08T16:34:08Z","lastAt":"2006-08-10T21:43:39Z","messageCount":15,"participants":["Jakub Narebski","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":4},"messages":[{"id":"24980","messageId":"200608081834.09271.jnareb@gmail.com","threadId":"5175","inReplyTo":null,"subject":"[PATCH 0/4] autoconf: Some improvements","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:34:08Z","receivedAt":"2006-08-08T16:34:08Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"This series of patches, based on next branch \n  (commit id: 45c5baf2f082dd5f537f043f7637bff87db515e8)\nintroduces few minor improvements, and one (last) larger,\nfollowing \n  \"autoconf: Unset NO_STH and NEED_STH when it is detected not needed\"\n\n * [PATCH 1/4] autoconf: Add configure target to main Makefile\n * [PATCH 2/4] autoconf: Error out on --without-shell and --without-perl\n * [PATCH 3/4] autoconf: Improvements in NO_PYTHON/PYTHON_PATH handling\n * [PATCH 4/4] autoconf: Move variables which we always set \n   to config.mak.in\n\n-- \nJakub Narebski\nPoland\n"},{"id":"24981","messageId":"200608081835.23448.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 1/4] autoconf: Add configure target to main Makefile","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:35:23Z","receivedAt":"2006-08-08T16:35:23Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"While at it fill git version information in configure.ac\nconfigure target needs autoconf, of course.\n\nSigned-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nThis will make testing autoconf improvements easier\n\n Makefile     |    7 +++++++\n configure.ac |    2 +-\n 2 files changed, 8 insertions(+), 1 deletions(-)\n\ndiff --git a/Makefile b/Makefile\nindex 8c225e6..321267b 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -676,6 +676,13 @@ git-instaweb: git-instaweb.sh gitweb/git\n \tchmod +x $@+\n \tmv $@+ $@\n \n+configure: configure.ac\n+\trm -f $@ $<+\n+\tsed -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \\\n+\t    $< > $<+\n+\tautoconf -o $@ $<+\n+\trm -f $<+\n+\n # These can record GIT_VERSION\n git$X git.spec \\\n \t$(patsubst %.sh,%,$(SCRIPT_SH)) \\\ndiff --git a/configure.ac b/configure.ac\nindex 3c56cc5..e2da891 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -2,7 +2,7 @@ #                                       \n # Process this file with autoconf to produce a configure script.\n \n AC_PREREQ(2.59)\n-AC_INIT([git], [1.4.1], [git@vger.kernel.org])\n+AC_INIT([git], [@@GIT_VERSION@@], [git@vger.kernel.org])\n \n AC_CONFIG_SRCDIR([git.c])\n \n-- \n1.4.1.1\n"},{"id":"24982","messageId":"200608081836.21614.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 2/4] autoconf: Error out on --without-shell and --without-perl","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:36:21Z","receivedAt":"2006-08-08T16:36:21Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Error out on --without-shell/--with-shell=no and\n--without-perl/--with-perl=no instead of just warning\nand continuing.\n\nSigned-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nIt's a matter of taste (and not doing unexpected)\n\n configure.ac |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ndiff --git a/configure.ac b/configure.ac\nindex e2da891..c2ddd9b 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -37,7 +37,7 @@ # Used by GIT_ARG_SET_PATH(PROGRAM)\n AC_DEFUN([GIT_CONF_APPEND_PATH],\n [PROGRAM=m4_toupper($1); \\\n if test \"$withval\" = \"no\"; then \\\n-\tAC_MSG_WARN([You cannot use git without $1]); \\\n+\tAC_MSG_ERROR([You cannot use git without $1]); \\\n else \\\n \tif test \"$withval\" = \"yes\"; then \\\n \t\tAC_MSG_WARN([You should provide path for --with-$1=PATH]); \\\n-- \n1.4.1.1\n"},{"id":"24983","messageId":"200608081838.06311.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 3/4] autoconf: Improvements in NO_PYTHON/PYTHON_PATH handling","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:38:06Z","receivedAt":"2006-08-08T16:38:06Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Unset NO_PYTHON for --with-python without arguments, and when\nPYTHON_PATH is set.  Do not check for PYTHON_PATH if it is set\nvia --with-python=PYTHON_PATH.  Prefer python to python2.4 etc.\n\nSigned-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nWhat might be unexpected is the fact that even for --with-python\n(but only without setting PYTHON_PATH) autodetection might set NO_PYTHON\n\n configure.ac |   15 +++++++++------\n 1 files changed, 9 insertions(+), 6 deletions(-)\n\ndiff --git a/configure.ac b/configure.ac\nindex c2ddd9b..c27a994 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -105,7 +105,10 @@ AC_ARG_WITH(python,[AS_HELP_STRING([--wi\n AS_HELP_STRING([--no-python], [don't use python scripts])],\n  [if test \"$withval\" = \"no\"; then \\\n     NO_PYTHON=YesPlease; \\\n-  elif test \"$withval\" != \"yes\"; then \\\n+  elif test \"$withval\" = \"yes\"; then \\\n+    NO_PYTHON=; \\\n+  else \\\n+    NO_PYTHON=; \\\n     PYTHON_PATH=$withval; \\\n   fi; \\\n  ])\n@@ -138,15 +141,15 @@ #\n # Define NO_PYTHON if you want to lose all benefits of the recursive merge.\n # Define PYTHON_PATH to provide path to Python.\n if test -z \"$NO_PYTHON\"; then\n-\tAC_PATH_PROGS(PYTHON_PATH, [python2.4 python2.3 python2 python])\n+\tif test -z \"$PYTHON_PATH\"; then\n+\t\tAC_PATH_PROGS(PYTHON_PATH, [python python2.4 python2.3 python2])\n+\tfi\n \tif test -n \"$PYTHON_PATH\"; then\n \t\tGIT_CONF_APPEND_LINE([PYTHON_PATH=@PYTHON_PATH@])\n-\telse\n-\t\tGIT_CONF_APPEND_LINE([NO_PYTHON=@NO_PYTHON@])\n+\t\tNO_PYTHON=\"\"\n \tfi\n-else\n-\tGIT_CONF_APPEND_LINE([NO_PYTHON=@NO_PYTHON@])\n fi\n+GIT_CONF_APPEND_LINE([NO_PYTHON=@NO_PYTHON@])\n \n \n ## Checks for libraries.\n-- \n1.4.1.1\n"},{"id":"24984","messageId":"200608081839.07112.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 4/4] autoconf: Move variables which we always set to config.mak.in","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:39:06Z","receivedAt":"2006-08-08T16:39:06Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Move detected NO_STH and NEED_STH variables, which we always output,\neither setting or unsetting (setting to empty string) to config.mak.in\nand use setting appropriately named variables and doing AC_SUBST\ninstead of adding them via GIT_CONF_APPEND_LINE macro and\nconfig.mak.append temporary file.\n\nVariables which might and might not be set are still added via\nconfig.mak.append; this include all STH_PATH variables.\n\nSigned-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nThis makes our configure.ac more typical.\n\n config.mak.in |   15 +++++++++++\n configure.ac  |   75 +++++++++++++++++++++++++++++++++------------------------\n 2 files changed, 59 insertions(+), 31 deletions(-)\n\ndiff --git a/config.mak.in b/config.mak.in\nindex 04f508a..99b13a7 100644\n--- a/config.mak.in\n+++ b/config.mak.in\n@@ -22,3 +22,18 @@ VPATH = @srcdir@\n export exec_prefix mandir\n export srcdir VPATH\n \n+NO_PYTHON=@NO_PYTHON@\n+NEEDS_SSL_WITH_CRYPTO=@NEEDS_SSL_WITH_CRYPTO@\n+NO_CURL=@NO_CURL@\n+NO_EXPAT=@NO_EXPAT@\n+NEEDS_LIBICONV=@NEEDS_LIBICONV@\n+NEEDS_SOCKET=@NEEDS_SOCKET@\n+NO_D_INO_IN_DIRENT=@NO_D_INO_IN_DIRENT@\n+NO_D_TYPE_IN_DIRENT=@NO_D_TYPE_IN_DIRENT@\n+NO_SOCKADDR_STORAGE=@NO_SOCKADDR_STORAGE@\n+NO_IPV6=@NO_IPV6@\n+NO_C99_FORMAT=@NO_C99_FORMAT@\n+NO_STRCASESTR=@NO_STRCASESTR@\n+NO_STRLCPY=@NO_STRLCPY@\n+NO_SETENV=@NO_SETENV@\n+\ndiff --git a/configure.ac b/configure.ac\nindex c27a994..bc2824b 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -149,7 +149,6 @@ if test -z \"$NO_PYTHON\"; then\n \t\tNO_PYTHON=\"\"\n \tfi\n fi\n-GIT_CONF_APPEND_LINE([NO_PYTHON=@NO_PYTHON@])\n \n \n ## Checks for libraries.\n@@ -158,35 +157,41 @@ #\n # Define NO_OPENSSL environment variable if you do not have OpenSSL.\n # Define NEEDS_SSL_WITH_CRYPTO if you need -lcrypto with -lssl (Darwin).\n AC_CHECK_LIB([crypto], [SHA1_Init],\n-[GIT_CONF_APPEND_LINE(NEEDS_SSL_WITH_CRYPTO=)],\n+[NEEDS_SSL_WITH_CRYPTO=],\n [AC_CHECK_LIB([ssl], [SHA1_Init],\n- [GIT_CONF_APPEND_LINE(NEEDS_SSL_WITH_CRYPTO=YesPlease)\n-  GIT_CONF_APPEND_LINE(NEEDS_SSL_WITH_CRYPTO=)],\n- [GIT_CONF_APPEND_LINE(NO_OPENSSL=YesPlease)])])\n+ [NEEDS_SSL_WITH_CRYPTO=YesPlease\n+  NEEDS_SSL_WITH_CRYPTO=],\n+ [NO_OPENSSL=YesPlease])])\n+AC_SUBST(NEEDS_SSL_WITH_CRYPTO)\n+AC_SUBST(NO_OPENSSL)\n #\n # Define NO_CURL if you do not have curl installed.  git-http-pull and\n # git-http-push are not built, and you cannot use http:// and https://\n # transports.\n AC_CHECK_LIB([curl], [curl_global_init],\n-[GIT_CONF_APPEND_LINE(NO_CURL=)],\n-[GIT_CONF_APPEND_LINE(NO_CURL=YesPlease)])\n+[NO_CURL=],\n+[NO_CURL=YesPlease])\n+AC_SUBST(NO_CURL)\n #\n # Define NO_EXPAT if you do not have expat installed.  git-http-push is\n # not built, and you cannot push using http:// and https:// transports.\n AC_CHECK_LIB([expat], [XML_ParserCreate],\n-[GIT_CONF_APPEND_LINE(NO_EXPAT=)],\n-[GIT_CONF_APPEND_LINE(NO_EXPAT=YesPlease)])\n+[NO_EXPAT=],\n+[NO_EXPAT=YesPlease])\n+AC_SUBST(NO_EXPAT)\n #\n # Define NEEDS_LIBICONV if linking with libc is not enough (Darwin).\n AC_CHECK_LIB([c], [iconv],\n-[GIT_CONF_APPEND_LINE(NEEDS_LIBICONV=)],\n-[GIT_CONF_APPEND_LINE(NEEDS_LIBICONV=YesPlease)])\n+[NEEDS_LIBICONV=],\n+[NEEDS_LIBICONV=YesPlease])\n+AC_SUBST(NEEDS_LIBICONV)\n #\n # Define NEEDS_SOCKET if linking with libc is not enough (SunOS,\n # Patrick Mauritz).\n AC_CHECK_LIB([c], [socket],\n-[GIT_CONF_APPEND_LINE(NEEDS_SOCKET=)],\n-[GIT_CONF_APPEND_LINE(NEEDS_SOCKET=YesPlease)])\n+[NEEDS_SOCKET=],\n+[NEEDS_SOCKET=YesPlease])\n+AC_SUBST(NEEDS_SOCKET)\n \n \n ## Checks for header files.\n@@ -197,33 +202,38 @@ AC_MSG_NOTICE([CHECKS for typedefs, stru\n #\n # Define NO_D_INO_IN_DIRENT if you don't have d_ino in your struct dirent.\n AC_CHECK_MEMBER(struct dirent.d_ino,\n-[GIT_CONF_APPEND_LINE(NO_D_INO_IN_DIRENT=)],\n-[GIT_CONF_APPEND_LINE(NO_D_INO_IN_DIRENT=YesPlease)],\n+[NO_D_INO_IN_DIRENT=],\n+[NO_D_INO_IN_DIRENT=YesPlease],\n [#include <dirent.h>])\n+AC_SUBST(NO_D_INO_IN_DIRENT)\n #\n # Define NO_D_TYPE_IN_DIRENT if your platform defines DT_UNKNOWN but lacks\n # d_type in struct dirent (latest Cygwin -- will be fixed soonish).\n AC_CHECK_MEMBER(struct dirent.d_type,\n-[GIT_CONF_APPEND_LINE(NO_D_TYPE_IN_DIRENT=)],\n-[GIT_CONF_APPEND_LINE(NO_D_TYPE_IN_DIRENT=YesPlease)],\n+[NO_D_TYPE_IN_DIRENT=],\n+[NO_D_TYPE_IN_DIRENT=YesPlease],\n [#include <dirent.h>])\n+AC_SUBST(NO_D_TYPE_IN_DIRENT)\n #\n # Define NO_SOCKADDR_STORAGE if your platform does not have struct\n # sockaddr_storage.\n AC_CHECK_TYPE(struct sockaddr_storage,\n-[GIT_CONF_APPEND_LINE(NO_SOCKADDR_STORAGE=)],\n-[GIT_CONF_APPEND_LINE(NO_SOCKADDR_STORAGE=YesPlease)],\n+[NO_SOCKADDR_STORAGE=],\n+[NO_SOCKADDR_STORAGE=YesPlease],\n [#include <netinet/in.h>])\n+AC_SUBST(NO_SOCKADDR_STORAGE)\n+#\n # Define NO_IPV6 if you lack IPv6 support and getaddrinfo().\n AC_CHECK_TYPE([struct addrinfo],[\n  AC_CHECK_FUNC([getaddrinfo],\n-  [GIT_CONF_APPEND_LINE(NO_IPV6=)],\n-  [GIT_CONF_APPEND_LINE(NO_IPV6=YesPlease)])\n-],[GIT_CONF_APPEND_LINE(NO_IPV6=YesPlease)],[\n+  [NO_IPV6=],\n+  [NO_IPV6=YesPlease])\n+],[NO_IPV6=YesPlease],[\n #include <sys/types.h>\n #include <sys/socket.h>\n #include <netdb.h>\n ])\n+AC_SUBST(NO_IPV6)\n #\n # Define NO_C99_FORMAT if your formatted IO functions (printf/scanf et.al.)\n # do not support the 'size specifiers' introduced by C99, namely ll, hh,\n@@ -243,11 +253,11 @@ AC_RUN_IFELSE(\n \t[ac_cv_c_c99_format=no])\n ])\n if test $ac_cv_c_c99_format = no; then\n-\tGIT_CONF_APPEND_LINE(NO_C99_FORMAT=YesPlease)\n+\tNO_C99_FORMAT=YesPlease\n else\n-\tGIT_CONF_APPEND_LINE(NO_C99_FORMAT=)\n+\tNO_C99_FORMAT=\n fi\n-\n+AC_SUBST(NO_C99_FORMAT)\n \n ## Checks for library functions.\n ## (in default C library and libraries checked by AC_CHECK_LIB)\n@@ -255,18 +265,21 @@ AC_MSG_NOTICE([CHECKS for library functi\n #\n # Define NO_STRCASESTR if you don't have strcasestr.\n AC_CHECK_FUNC(strcasestr,\n-[GIT_CONF_APPEND_LINE(NO_STRCASESTR=)],\n-[GIT_CONF_APPEND_LINE(NO_STRCASESTR=YesPlease)])\n+[NO_STRCASESTR=],\n+[NO_STRCASESTR=YesPlease])\n+AC_SUBST(NO_STRCASESTR)\n #\n # Define NO_STRLCPY if you don't have strlcpy.\n AC_CHECK_FUNC(strlcpy,\n-[GIT_CONF_APPEND_LINE(NO_STRLCPY=)],\n-[GIT_CONF_APPEND_LINE(NO_STRLCPY=YesPlease)])\n+[NO_STRLCPY=],\n+[NO_STRLCPY=YesPlease])\n+AC_SUBST(NO_STRLCPY)\n #\n # Define NO_SETENV if you don't have setenv in the C library.\n AC_CHECK_FUNC(setenv,\n-[GIT_CONF_APPEND_LINE(NO_SETENV=)],\n-[GIT_CONF_APPEND_LINE(NO_SETENV=YesPlease)])\n+[NO_SETENV=],\n+[NO_SETENV=YesPlease])\n+AC_SUBST(NO_SETENV)\n #\n # Define NO_MMAP if you want to avoid mmap.\n #\n-- \n1.4.1.1\n"},{"id":"24985","messageId":"200608081848.48181.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081835.23448.jnareb@gmail.com","subject":"[PATCH 5/4] autoconf: Mention \"make configure\" instead of \"autoconf\" in INSTALL","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T16:48:47Z","receivedAt":"2006-08-08T16:48:47Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Signed-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nShould be part of [PATCH 1/4] in this series (replied-to patch)\n\n INSTALL |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ndiff --git a/INSTALL b/INSTALL\nindex f8dfa19..0d432d7 100644\n--- a/INSTALL\n+++ b/INSTALL\n@@ -16,7 +16,7 @@ install\" would not work.\n Alternatively you can use autoconf generated ./configure script to\n set up install paths (via config.mak.autogen), so you can write instead\n \n-\t$ autoconf ;# as yourself if ./configure doesn't exist yet\n+\t$ make configure ;# as yourself\n \t$ ./configure --prefix=/usr ;# as yourself\n \t$ make all doc ;# as yourself\n \t# make install install-doc ;# as root\n-- \n1.4.1.1\n"},{"id":"24996","messageId":"7vk65juff7.fsf@assigned-by-dhcp.cox.net","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH] autoconf: clean temporary file mak.append","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-08-08T20:43:24Z","receivedAt":"2006-08-08T20:43:24Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"When configure is interrupted in the middle it leaves\nconfig.mak.append behind.  Add it to .gitignore and make sure\n$(MAKE) clean removes it.\n\nAlso earlier .gitignore listed config.mak.in which is a tracked\nfile.  Fix it.\n\nSigned-off-by: Junio C Hamano <junkio@cox.net>\n---\n * on top of today's 5 series from you.\n\n .gitignore |    2 +-\n Makefile   |    2 +-\n 2 files changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/.gitignore b/.gitignore\nindex fb0fa3f..6e973b3 100644\n--- a/.gitignore\n+++ b/.gitignore\n@@ -140,7 +140,7 @@ config.mak\n autom4te.cache\n config.log\n config.status\n-config.mak.in\n config.mak.autogen\n+config.mak.append\n configure\n git-blame\ndiff --git a/Makefile b/Makefile\nindex d8cc835..d4297c2 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -793,7 +793,7 @@ clean:\n \trm -f $(ALL_PROGRAMS) $(BUILT_INS) git$X\n \trm -f *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags\n \trm -rf autom4te.cache\n-\trm -f config.log config.mak.autogen configure config.status config.cache\n+\trm -f configure config.log config.mak.autogen config.mak.append config.status config.cache\n \trm -rf $(GIT_TARNAME) .doc-tmp-dir\n \trm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz\n \trm -f $(htmldocs).tar.gz $(manpages).tar.gz\n-- \n1.4.2.rc3.g45c5\n"},{"id":"24997","messageId":"ebatsd$f1g$1@sea.gmane.org","threadId":"5175","inReplyTo":"7vk65juff7.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH] autoconf: clean temporary file mak.append","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T20:58:02Z","receivedAt":"2006-08-08T20:58:02Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Junio C Hamano wrote:\n\n> diff --git a/Makefile b/Makefile\n> index d8cc835..d4297c2 100644\n> --- a/Makefile\n> +++ b/Makefile\n> @@ -793,7 +793,7 @@ clean:\n>       rm -f $(ALL_PROGRAMS) $(BUILT_INS) git$X\n>       rm -f *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags\n>       rm -rf autom4te.cache\n> -     rm -f config.log config.mak.autogen configure config.status config.cache\n> +     rm -f configure config.log config.mak.autogen config.mak.append config.status config.cache\n>       rm -rf $(GIT_TARNAME) .doc-tmp-dir\n>       rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz\n>       rm -f $(htmldocs).tar.gz $(manpages).tar.gz\n\nI didn't add configure to make clean, because there was hand-crafted \nconfigure script in git.git.\n\n-- \nJakub Narebski\nWarsaw, Poland\nShadeHawk on #git\n"},{"id":"24999","messageId":"7vbqquvrll.fsf@assigned-by-dhcp.cox.net","threadId":"5175","inReplyTo":"ebatsd$f1g$1@sea.gmane.org","subject":"Re: [PATCH] autoconf: clean temporary file mak.append","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-08-08T21:35:02Z","receivedAt":"2006-08-08T21:35:02Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jakub Narebski <jnareb@gmail.com> writes:\n\n> Junio C Hamano wrote:\n>\n>> diff --git a/Makefile b/Makefile\n>> index d8cc835..d4297c2 100644\n>> --- a/Makefile\n>> +++ b/Makefile\n>> @@ -793,7 +793,7 @@ clean:\n>>       rm -f $(ALL_PROGRAMS) $(BUILT_INS) git$X\n>>       rm -f *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags\n>>       rm -rf autom4te.cache\n>> -     rm -f config.log config.mak.autogen configure config.status config.cache\n>> +     rm -f configure config.log config.mak.autogen config.mak.append config.status config.cache\n>>       rm -rf $(GIT_TARNAME) .doc-tmp-dir\n>>       rm -f $(GIT_TARNAME).tar.gz git-core_$(GIT_VERSION)-*.tar.gz\n>>       rm -f $(htmldocs).tar.gz $(manpages).tar.gz\n>\n> I didn't add configure to make clean, because there was hand-crafted \n> configure script in git.git.\n\nDid anybody ask who added 'configure'?\n"},{"id":"25008","messageId":"200608090142.28266.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081839.07112.jnareb@gmail.com","subject":"[PATCH 6/4] autoconf: Add forgotten NO_OPENSSL=@NO_OPENSSL@ to config.mak.in","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-08T23:42:27Z","receivedAt":"2006-08-08T23:42:27Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Signed-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nOr just correct previous patch, instead.\n\n config.mak.in |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ndiff --git a/config.mak.in b/config.mak.in\nindex 99b13a7..369e611 100644\n--- a/config.mak.in\n+++ b/config.mak.in\n@@ -24,6 +24,7 @@ export srcdir VPATH\n \n NO_PYTHON=@NO_PYTHON@\n NEEDS_SSL_WITH_CRYPTO=@NEEDS_SSL_WITH_CRYPTO@\n+NO_OPENSSL=@NO_OPENSSL@\n NO_CURL=@NO_CURL@\n NO_EXPAT=@NO_EXPAT@\n NEEDS_LIBICONV=@NEEDS_LIBICONV@\n-- \n1.4.1.1\n"},{"id":"25011","messageId":"200608090215.10917.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 7] autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-09T00:15:10Z","receivedAt":"2006-08-09T00:15:10Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Add support for --with-openssl=PATH and --without-openssl,\n--with-curl=PATH and --without-curl, --with-expat=PATH and\n--without-expat ./configure options, each setting or unsetting\nappropriate NO_PACKAGE and if called with argument also PACKAGEDIR\n(of which only CURLDIR is documented in Makefile)\n\nAll above options are supported as override to autodetection; more to\ncome in the same style (override to autodetection), so moved the bulk\nof comments for site configuration down.\n\nNeeds review by someone well versed in autoconf and m4.\n\nSigned-off-by: Jakub Narebski <jnareb@gmail.com>\n---\nWith this patch current autoconf generated ./configure script can\ndo everything the first abandoned (rewritten) version could...\nand much, much more.\n\n configure.ac |  158 +++++++++++++++++++++++++++++++++++++---------------------\n 1 files changed, 101 insertions(+), 57 deletions(-)\n\ndiff --git a/configure.ac b/configure.ac\nindex bc2824b..ae56462 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -46,53 +46,29 @@ else \\\n \tfi; \\\n fi; \\\n ]) # GIT_CONF_APPEND_PATH\n+#\n+# GIT_PARSE_WITH(PACKAGE)\n+# -----------------------\n+# For use in AC_ARG_WITH action-if-found, for packages default ON.\n+# * Set NO_PACKAGE=YesPlease for --without-PACKAGE\n+# * Set PACKAGEDIR=PATH for --with-PACKAGE=PATH\n+# * Unset NO_PACKAGE for --with-PACKAGE without ARG\n+AC_DEFUN([GIT_PARSE_WITH],\n+[PACKAGE=m4_toupper($1); \\\n+if test \"$withval\" = \"no\"; then \\\n+\tm4_toupper(NO_$1)=YesPlease; \\\n+elif test \"$withval\" = \"yes\"; then \\\n+\tm4_toupper(NO_$1)=; \\\n+else \\\n+\tm4_toupper(NO_$1)=; \\\n+\tGIT_CONF_APPEND_LINE(${PACKAGE}DIR=$withval); \\\n+fi \\\n+])# GIT_PARSE_WITH\n \n \n-## Site configuration\n+## Site configuration related to programs (before tests)\n ## --with-PACKAGE[=ARG] and --without-PACKAGE\n #\n-# Define NO_SVN_TESTS if you want to skip time-consuming SVN interoperability\n-# tests.  These tests take up a significant amount of the total test time\n-# but are not needed unless you plan to talk to SVN repos.\n-#\n-# Define MOZILLA_SHA1 environment variable when running make to make use of\n-# a bundled SHA1 routine coming from Mozilla. It is GPL'd and should be fast\n-# on non-x86 architectures (e.g. PowerPC), while the OpenSSL version (default\n-# choice) has very fast version optimized for i586.\n-#\n-# Define PPC_SHA1 environment variable when running make to make use of\n-# a bundled SHA1 routine optimized for PowerPC.\n-#\n-# Define ARM_SHA1 environment variable when running make to make use of\n-# a bundled SHA1 routine optimized for ARM.\n-#\n-# Define NO_OPENSSL environment variable if you do not have OpenSSL.\n-# This also implies MOZILLA_SHA1.\n-#\n-# Define NO_CURL if you do not have curl installed.  git-http-pull and\n-# git-http-push are not built, and you cannot use http:// and https://\n-# transports.\n-#\n-# Define CURLDIR=/foo/bar if your curl header and library files are in\n-# /foo/bar/include and /foo/bar/lib directories.\n-#\n-# Define NO_EXPAT if you do not have expat installed.  git-http-push is\n-# not built, and you cannot push using http:// and https:// transports.\n-#\n-# Define NO_FINK if you are building on Darwin/Mac OS X, have Fink\n-# installed in /sw, but don't want GIT to link against any libraries\n-# installed there.  If defined you may specify your own (or Fink's)\n-# include directories and library directories by defining CFLAGS\n-# and LDFLAGS appropriately.\n-#\n-# Define NO_DARWIN_PORTS if you are building on Darwin/Mac OS X,\n-# have DarwinPorts installed in /opt/local, but don't want GIT to\n-# link against any libraries installed there.  If defined you may\n-# specify your own (or DarwinPort's) include directories and\n-# library directories by defining CFLAGS and LDFLAGS appropriately.\n-#\n-# Define NO_MMAP if you want to avoid mmap.\n-#\n # Define SHELL_PATH to provide path to shell.\n GIT_ARG_SET_PATH(shell)\n #\n@@ -114,20 +90,6 @@ AS_HELP_STRING([--no-python], [don't use\n  ])\n AC_SUBST(NO_PYTHON)\n AC_SUBST(PYTHON_PATH)\n-#\n-## --enable-FEATURE[=ARG] and --disable-FEATURE\n-# Define COLLISION_CHECK below if you believe that SHA1's\n-# 1461501637330902918203684832716283019655932542976 hashes do not give you\n-# sufficient guarantee that no collisions between objects will ever happen.\n-#\n-# Define USE_NSEC below if you want git to care about sub-second file mtimes\n-# and ctimes. Note that you need recent glibc (at least 2.2.4) for this, and\n-# it will BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely\n-# randomly break unless your underlying filesystem supports those sub-second\n-# times (my ext3 doesn't).\n-#\n-# Define USE_STDEV below if you want git to care about the underlying device\n-# change being considered an inode change from the update-cache perspective.\n \n \n ## Checks for programs.\n@@ -259,6 +221,7 @@ else\n fi\n AC_SUBST(NO_C99_FORMAT)\n \n+\n ## Checks for library functions.\n ## (in default C library and libraries checked by AC_CHECK_LIB)\n AC_MSG_NOTICE([CHECKS for library functions])\n@@ -299,6 +262,87 @@ # Define NO_ACCURATE_DIFF if your diff p\n # a missing newline at the end of the file.\n \n \n+## Site configuration (override autodetection)\n+## --with-PACKAGE[=ARG] and --without-PACKAGE\n+AC_MSG_NOTICE([CHECKS for site configuration])\n+#\n+# Define NO_SVN_TESTS if you want to skip time-consuming SVN interoperability\n+# tests.  These tests take up a significant amount of the total test time\n+# but are not needed unless you plan to talk to SVN repos.\n+#\n+# Define MOZILLA_SHA1 environment variable when running make to make use of\n+# a bundled SHA1 routine coming from Mozilla. It is GPL'd and should be fast\n+# on non-x86 architectures (e.g. PowerPC), while the OpenSSL version (default\n+# choice) has very fast version optimized for i586.\n+#\n+# Define PPC_SHA1 environment variable when running make to make use of\n+# a bundled SHA1 routine optimized for PowerPC.\n+#\n+# Define ARM_SHA1 environment variable when running make to make use of\n+# a bundled SHA1 routine optimized for ARM.\n+#\n+# Define NO_OPENSSL environment variable if you do not have OpenSSL.\n+# This also implies MOZILLA_SHA1.\n+#\n+# Define OPENSSLDIR=/foo/bar if your openssl header and library files are in\n+# /foo/bar/include and /foo/bar/lib directories.\n+AC_ARG_WITH(openssl,\n+AS_HELP_STRING([--with-openssl],[use OpenSSL library (default is YES)])\n+AS_HELP_STRING([],              [ARG can be prefix for openssl library and headers]),\\\n+GIT_PARSE_WITH(openssl))\n+#\n+# Define NO_CURL if you do not have curl installed.  git-http-pull and\n+# git-http-push are not built, and you cannot use http:// and https://\n+# transports.\n+#\n+# Define CURLDIR=/foo/bar if your curl header and library files are in\n+# /foo/bar/include and /foo/bar/lib directories.\n+AC_ARG_WITH(curl,\n+AS_HELP_STRING([--with-curl],[support http(s):// transports (default is YES)])\n+AS_HELP_STRING([],           [ARG can be also prefix for curl library and headers]),\n+GIT_PARSE_WITH(curl))\n+#\n+# Define NO_EXPAT if you do not have expat installed.  git-http-push is\n+# not built, and you cannot push using http:// and https:// transports.\n+#\n+# Define EXPATDIR=/foo/bar if your expat header and library files are in\n+# /foo/bar/include and /foo/bar/lib directories.\n+AC_ARG_WITH(expat,\n+AS_HELP_STRING([--with-expat],\n+[support git-push using http:// and https:// transports via WebDAV (default is YES)])\n+AS_HELP_STRING([],            [ARG can be also prefix for expat library and headers]),\n+GIT_PARSE_WITH(expat))\n+#\n+# Define NO_FINK if you are building on Darwin/Mac OS X, have Fink\n+# installed in /sw, but don't want GIT to link against any libraries\n+# installed there.  If defined you may specify your own (or Fink's)\n+# include directories and library directories by defining CFLAGS\n+# and LDFLAGS appropriately.\n+#\n+# Define NO_DARWIN_PORTS if you are building on Darwin/Mac OS X,\n+# have DarwinPorts installed in /opt/local, but don't want GIT to\n+# link against any libraries installed there.  If defined you may\n+# specify your own (or DarwinPort's) include directories and\n+# library directories by defining CFLAGS and LDFLAGS appropriately.\n+#\n+# Define NO_MMAP if you want to avoid mmap.\n+\n+## --enable-FEATURE[=ARG] and --disable-FEATURE\n+#\n+# Define COLLISION_CHECK below if you believe that SHA1's\n+# 1461501637330902918203684832716283019655932542976 hashes do not give you\n+# sufficient guarantee that no collisions between objects will ever happen.\n+#\n+# Define USE_NSEC below if you want git to care about sub-second file mtimes\n+# and ctimes. Note that you need recent glibc (at least 2.2.4) for this, and\n+# it will BREAK YOUR LOCAL DIFFS! show-diff and anything using it will likely\n+# randomly break unless your underlying filesystem supports those sub-second\n+# times (my ext3 doesn't).\n+#\n+# Define USE_STDEV below if you want git to care about the underlying device\n+# change being considered an inode change from the update-cache perspective.\n+\n+\n ## Output files\n AC_CONFIG_FILES([\"${config_file}\":\"${config_in}\":\"${config_append}\"])\n AC_OUTPUT\n-- \n1.4.1.1\n"},{"id":"25012","messageId":"200608090219.22769.jnareb@gmail.com","threadId":"5175","inReplyTo":"200608081834.09271.jnareb@gmail.com","subject":"[PATCH 8] autoconf: It is --without-python, not --no-python","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-09T00:19:22Z","receivedAt":"2006-08-09T00:19:22Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Signed-off-by: Jakub Narebski <jnareb@gmail.com>\n---\n configure.ac |    2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n\ndiff --git a/configure.ac b/configure.ac\nindex ae56462..e890131 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -78,7 +78,7 @@ #\n # Define NO_PYTHON if you want to lose all benefits of the recursive merge.\n # Define PYTHON_PATH to provide path to Python.\n AC_ARG_WITH(python,[AS_HELP_STRING([--with-python=PATH], [provide PATH to python])\n-AS_HELP_STRING([--no-python], [don't use python scripts])],\n+AS_HELP_STRING([--without-python], [don't use python scripts])],\n  [if test \"$withval\" = \"no\"; then \\\n     NO_PYTHON=YesPlease; \\\n   elif test \"$withval\" = \"yes\"; then \\\n-- \n1.4.1.1\n"},{"id":"25087","messageId":"ebf31a$8qv$2@sea.gmane.org","threadId":"5175","inReplyTo":"200608090215.10917.jnareb@gmail.com","subject":"Re: [PATCH 7] autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-10T10:50:40Z","receivedAt":"2006-08-10T10:50:40Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Jakub Narebski wrote:\n\n> Add support for --with-openssl=PATH and --without-openssl,\n> --with-curl=PATH and --without-curl, --with-expat=PATH and\n> --without-expat ./configure options, each setting or unsetting\n> appropriate NO_PACKAGE and if called with argument also PACKAGEDIR\n> (of which only CURLDIR is documented in Makefile)\n> \n> All above options are supported as override to autodetection; more to\n> come in the same style (override to autodetection), so moved the bulk\n> of comments for site configuration down.\n\nIs this patch dropped?\n\n-- \nJakub Narebski\nWarsaw, Poland\nShadeHawk on #git\n"},{"id":"25116","messageId":"7vejvouvqm.fsf@assigned-by-dhcp.cox.net","threadId":"5175","inReplyTo":"ebf31a$8qv$2@sea.gmane.org","subject":"Re: [PATCH 7] autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-08-10T21:27:45Z","receivedAt":"2006-08-10T21:27:45Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jakub Narebski <jnareb@gmail.com> writes:\n\n> Jakub Narebski wrote:\n>\n>> Add support for --with-openssl=PATH and --without-openssl,\n>> --with-curl=PATH and --without-curl, --with-expat=PATH and\n>> --without-expat ./configure options, each setting or unsetting\n>> appropriate NO_PACKAGE and if called with argument also PACKAGEDIR\n>> (of which only CURLDIR is documented in Makefile)\n>> \n>> All above options are supported as override to autodetection; more to\n>> come in the same style (override to autodetection), so moved the bulk\n>> of comments for site configuration down.\n>\n> Is this patch dropped?\n\nI think it should be on \"pu\" but I might have missed it; it came\nwith a warning not to apply didn't it?\n"},{"id":"25118","messageId":"ebg99i$ijq$1@sea.gmane.org","threadId":"5175","inReplyTo":"7vejvouvqm.fsf@assigned-by-dhcp.cox.net","subject":"Re: [PATCH 7] autoconf: Add support for setting CURLDIR, OPENSSLDIR, EXPATDIR","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2006-08-10T21:43:39Z","receivedAt":"2006-08-10T21:43:39Z","isPatch":true,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"<opublikowany i wysłany>\n\nJunio C Hamano wrote:\n\n> Jakub Narebski <jnareb@gmail.com> writes:\n> \n>> Jakub Narebski wrote:\n>>\n>>> Add support for --with-openssl=PATH and --without-openssl,\n>>> --with-curl=PATH and --without-curl, --with-expat=PATH and\n>>> --without-expat ./configure options, each setting or unsetting\n>>> appropriate NO_PACKAGE and if called with argument also PACKAGEDIR\n>>> (of which only CURLDIR is documented in Makefile)\n>>> \n>>> All above options are supported as override to autodetection; more to\n>>> come in the same style (override to autodetection), so moved the bulk\n>>> of comments for site configuration down.\n>>\n>> Is this patch dropped?\n> \n> I think it should be on \"pu\" but I might have missed it; it came\n> with a warning not to apply didn't it?\n\nYes, although the warning is more about the _style_ than about what\nit does. It works as far as I tested, but IMVHO it is a bit of hack. \n\n-- \nJakub Narebski\nWarsaw, Poland\nShadeHawk on #git\n"}]}