From patchwork Fri Aug 22 18:30:52 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Siddhesh Poyarekar X-Patchwork-Id: 2518 Received: (qmail 8146 invoked by alias); 22 Aug 2014 18:31:03 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 8076 invoked by uid 89); 22 Aug 2014 18:31:02 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.7 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Date: Sat, 23 Aug 2014 00:00:52 +0530 From: Siddhesh Poyarekar To: Stefan Liebler Cc: libc-alpha@sourceware.org Subject: Re: [PATCH v1.1 20/20] Include config.h in MIN-CPPFLAGS Message-ID: <20140822183052.GK16835@spoyarek.pnq.redhat.com> References: <20140821175954.GA10983@spoyarek.pnq.redhat.com> <20140822053122.GF16835@spoyarek.pnq.redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.22.1-rc1 (2013-10-16) On Fri, Aug 22, 2014 at 03:31:41PM +0200, Stefan Liebler wrote: > But building the testsuite fails while building nptl_db/db-symbols.v.iT > because NOT_IN is not defined in structs.def: > structs.def:81:12: error: missing binary operator before token "(" > #if NOT_IN (libpthread) || TLS_TCB_AT_TP Stefan, Can you please try this patch? It should fix everything except the conformtest failures. The fix for conformtest failures is fairly straightforward and I'll add it as a modification of another patch. Thanks, Siddhesh commit bc387f3bcc5059a32f8cd60336b06c5027f0cc88 Author: Siddhesh Poyarekar Date: Fri Aug 22 23:21:13 2014 +0530 Use regular CPPFLAGS for everything except shlib-versions There was a circular dependency between shlib-versions.v.i and libc-modules, which I had attempted to break earlier by excluding libc-symbols.h from CPPFLAGS for %.v.i targets. This caused a few other problems like _LIBC not being defined in nptl_db/structs.def and ABI breakage in s390x (and probably also in m68k and alpha). This patch breaks libc-modules.h out of libc-symbols.h and includes it in the commandline instead. Additionally, the header is not included in the commandline when generating shlib-versions.v.i, but is present everywhere else. diff --git a/Makeconfig b/Makeconfig index c6eae06..ccd5d84 100644 --- a/Makeconfig +++ b/Makeconfig @@ -818,15 +818,20 @@ in-module = $(strip $(foreach lib,$(libof-$(basename $(@F))) $(libof-$( $@T mv -f $@T $@ %.v: %.v.i diff --git a/include/libc-symbols.h b/include/libc-symbols.h index 0081301..4155083 100644 --- a/include/libc-symbols.h +++ b/include/libc-symbols.h @@ -20,8 +20,6 @@ #ifndef _LIBC_SYMBOLS_H #define _LIBC_SYMBOLS_H 1 -#include "libc-modules.h" - #define IS_IN(lib) (IN_MODULE == MODULE_##lib) #define NOT_IN(lib) !IS_IN (lib)