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 38DFC6DE1A04 for ; Wed, 20 May 2015 01:41:32 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at cworth.org X-Spam-Flag: NO X-Spam-Score: 1.046 X-Spam-Level: * X-Spam-Status: No, score=1.046 tagged_above=-999 required=5 tests=[AWL=0.394, 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 Fud69E2HgW7Y for ; Wed, 20 May 2015 01:41:30 -0700 (PDT) Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34]) by arlo.cworth.org (Postfix) with ESMTP id 073B86DE19F6 for ; Wed, 20 May 2015 01:41:30 -0700 (PDT) Received: from guru.guru-group.fi (localhost [IPv6:::1]) by guru.guru-group.fi (Postfix) with ESMTP id 54D361000F2; Wed, 20 May 2015 11:41:08 +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: 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:41:32 -0000 On Wed, May 20 2015, Tomi Ollila wrote: > 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} ? of course not... I did not find any definition for CXXFLAGS_for_sh.... ... so case $CXXFLAGS in *'(CFLAGS)'*) CXXFLAGS_for_sh=$CFLAGS ;; *) CXXFLAGS_for_sh=CXXFLAGS esac > >> +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