On 2020-03-19 10:58:54+0700, Đoàn Trần Công Danh <congdanhqx@xxxxxxxxx> wrote: > Current git's configure script allow --without-<package>, > it rightfully set NO_<PACKAGE> in the beginning of the configure script, > but overwrite them with autodetect later. > > Respect them now. Hi Junio, Can I get your opinion on this serie? I didn't see it in cooking list. I guess it was lost because of 2.26. > > Change from v1: > - Simply check if NO_<PACKAGE> is empty or not instead of explicitly > check for YesPlease > - --without-openssl will ignore libcrypto all-together and fallback > into DC_SHA1 > > Đoàn Trần Công Danh (3): > configure: respect --without-curl flag > configure: respect --without-expat flag > configure: respect --without-openssl flag > > configure.ac | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > Interdiff against v1: > diff --git a/configure.ac b/configure.ac > index 20a11e1f32..807bb8bc5a 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -542,17 +542,18 @@ AC_MSG_NOTICE([CHECKS for libraries]) > > GIT_STASH_FLAGS($OPENSSLDIR) > > +if test -z "$NO_OPENSSL"; then > AC_CHECK_LIB([crypto], [SHA1_Init], > [NEEDS_SSL_WITH_CRYPTO=], > -[ > -if "x$NO_OPENSSL" = xYesPlease; then > - AC_MSG_ERROR([Disabled OpenSSL is required for SHA1]) > +[AC_CHECK_LIB([ssl], [SHA1_Init], > + [NEEDS_SSL_WITH_CRYPTO=YesPlease NO_OPENSSL=], > + [NEEDS_SSL_WITH_CRYPTO= NO_OPENSSL=YesPlease])]) > else > - AC_CHECK_LIB([ssl], [SHA1_Init], > - [NEEDS_SSL_WITH_CRYPTO=YesPlease NO_OPENSSL=], > - [NEEDS_SSL_WITH_CRYPTO= NO_OPENSSL=YesPlease]) > + # Fallback to DC SHA1 > + NEEDS_SSL_WITH_CRYPTO= > + DC_SHA1=YesPlease > + GIT_CONF_SUBST([DC_SHA1]) > fi > -]) > > GIT_UNSTASH_FLAGS($OPENSSLDIR) > > @@ -598,17 +599,19 @@ fi > # git-http-push are not built, and you cannot use http:// and https:// > # transports. > > -# Respect --without-curl > -if test "x$NO_CURL" != "xYesPlease"; then > - > GIT_STASH_FLAGS($CURLDIR) > > +# Respect --without-curl > +if test -z "$NO_CURL"; then > AC_CHECK_LIB([curl], [curl_global_init], > [NO_CURL=], > [NO_CURL=YesPlease]) > +fi > > GIT_UNSTASH_FLAGS($CURLDIR) > > +GIT_CONF_SUBST([NO_CURL]) > + > if test -z "$NO_CURL"; then > > AC_CHECK_PROG([CURL_CONFIG], [curl-config], > @@ -629,27 +632,22 @@ fi > > fi > > -fi > - > -GIT_CONF_SUBST([NO_CURL]) > > # > # 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. > > -# Respect --without-expat > -if test "x$NO_EXPAT" != xYesPlease; then > - > GIT_STASH_FLAGS($EXPATDIR) > > +# Respect --without-expat > +if test -z "$NO_EXPAT"; then > AC_CHECK_LIB([expat], [XML_ParserCreate], > [NO_EXPAT=], > [NO_EXPAT=YesPlease]) > +fi > > GIT_UNSTASH_FLAGS($EXPATDIR) > > -fi > - > GIT_CONF_SUBST([NO_EXPAT]) > > # > -- > 2.26.0.rc2.234.g969ad452ca > -- Danh