From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22587 invoked by alias); 7 May 2002 18:09:55 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 22565 invoked from network); 7 May 2002 18:09:53 -0000 Received: from unknown (HELO nerodeguest) (24.161.107.98) by sources.redhat.com with SMTP; 7 May 2002 18:09:53 -0000 Received: from neroden by nerodeguest with local (Exim 3.35 #1 (Debian)) id 1759P9-0004aJ-00; Tue, 07 May 2002 14:09:39 -0400 Date: Tue, 07 May 2002 11:14:00 -0000 To: gcc@gcc.gnu.org Subject: Deciphering flags in CXX_FOR_TARGET Message-ID: <20020507180939.GA17585@doctormoo.dyndns.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.28i From: Nathanael Nerode X-SW-Source: 2002-05/txt/msg00492.txt.bz2 In the process of unravelling the build process for gcc and src (so that I can make a nice autoconfiscation), I've hit another confusing point. CXX_FOR_TARGET is set to a rather complicated piece of shell code. Some of this conditionalizes on which directory is being configured, which is fine. One bit, however, is quite odd. It adds certain flags to CXX_FOR_TARGET. These flags are generated by `libstdc++-v3/testsuite_flags --build-includes`. This is only done if 'testsuite_flags' exists, which is only true if libstdc++-v3 has been configured. Due to the dependency structure of the Makefile, these are only guaranteed to be used by the build of target-gperf, a program which doesn't reside in gcc or src. With others, it depends on make's choice of order, which is extremely undesirable. I presume that 'check' targets might depend on these flags, because 'check' is assumed to be run entirely after 'make all' (although the dependencies are not explicit). 'install' targets might, but it seems very wrong for an 'install' target to depend on compiler flags; similarly I doubt this is an issue for dvi, info, clean. This little issue is the cause of an unbelievable amount of messiness. Can someone explain to me what these flags from 'testsuite_flags' are, in fact, for? (I'm guessing they're only used for 'check', and in fact only for 'check' in certain subdirectories. If that's the case, I can make a much cleaner implementation for my autoconfiscation. I'd also want to know which subdirectories of course, though I can probably manage without that information.) Thanks in advance. --Nathanael