Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by arlo.cworth.org (Postfix) with ESMTP id 20D5B6DE13EA for ; Wed, 20 May 2015 01:38:01 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: 1.053 X-Spam-Level: * X-Spam-Status: No, score=1.053 tagged_above=-999 required=5 tests=[AWL=0.401, SPF_NEUTRAL=0.652] autolearn=disabled Received: from arlo.cworth.org ([127.0.0.1]) by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Bbs_IibtyAQ0 for ; Wed, 20 May 2015 01:37:55 -0700 (PDT) Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) by arlo.cworth.org (Postfix) with ESMTP id 0C6F96DE13DA for ; Wed, 20 May 2015 01:37:55 -0700 (PDT) Received: from guru.guru-group.fi (localhost [IPv6:::1]) by guru.guru-group.fi (Postfix) with ESMTP id 0E7631000F2; Wed, 20 May 2015 11:37:29 +0300 (EEST) From: Tomi Ollila To: David Bremner , David Bremner , Ronny Chevalier Subject: Re: [PATCH] configure: Add sanity checking for environment variables In-Reply-To: <1432109551-16861-1-git-send-email-david@tethera.net> References: <1432109551-16861-1-git-send-email-david@tethera.net> User-Agent: Notmuch/0.19+115~g9a981cb (http://notmuchmail.org) Emacs/24.3.1 (x86_64-unknown-linux-gnu) X-Face: HhBM'cA~ MIME-Version: 1.0 Content-Type: text/plain Cc: notmuch@notmuchmail.org X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 20 May 2015 08:38:01 -0000 On Wed, May 20 2015, David Bremner wrote: > Passing in environment variables incompatible with the compiler may > cause other parts of the configure script to fail in hard to > understand ways, so we abort early. > --- > > meh, the previous version was borken by lazy evaluation of CXXFLAGS > using make syntax. Better suggestions for how to do this? > > configure | 31 +++++++++++++++++++++++++++++-- > 1 file changed, 29 insertions(+), 2 deletions(-) > > diff --git a/configure b/configure > index 4af7ba9..650b976 100755 > --- a/configure > +++ b/configure > @@ -269,6 +269,35 @@ dependencies are available: > EOF > > errors=0 > +printf "int main(void){return 0;}\n" > minimal.c > + > +printf "Sanity checking C compilation environment... " > +if ${CC} ${CFLAGS} ${CPPFLAGS} minimal.c ${LDFLAGS} -o minimal > /dev/null 2>&1 still 2 spaces ----------------^ > +then > + printf "OK.\n" > +else > + printf "Fail.\n" > + errors=$((errors + 1)) > +fi > + > +printf "Sanity checking C++ compilation environment... " > +if ${CXX} ${CXXFLAGS_for_sh} ${CPPFLAGS} minimal.c ${LDFLAGS} -o minimal > /dev/null 2>&1 ${CXXFLAGS:-$CFLAGS} ? > +then > + printf "OK.\n" > +else > + printf "Fail.\n" > + errors=$((errors + 1)) > +fi > + > +if [ $errors -gt 0 ]; then > + cat < +*** Error: Initial sanity checking of environment failed. Please try > +running configure in a clean environment, and if the problem persists, > +report a bug. > +EOF > + rm -f minimal minimal.c > + exit 1 > +fi > > if pkg-config --version > /dev/null 2>&1; then > have_pkg_config=1 > @@ -690,8 +719,6 @@ else > fi > rm -f compat/check_asctime > > -printf "int main(void){return 0;}\n" > minimal.c > - > printf "Checking for rpath support... " > if ${CC} -Wl,--enable-new-dtags -Wl,-rpath,/tmp/ -o minimal minimal.c >/dev/null 2>&1 > then > -- > 2.1.4 > > _______________________________________________ > notmuch mailing list > notmuch@notmuchmail.org > http://notmuchmail.org/mailman/listinfo/notmuch