From patchwork Thu Aug 23 00:05:13 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: rbmj X-Patchwork-Id: 179447 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 46E122C008D for ; Thu, 23 Aug 2012 10:06:00 +1000 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1346285162; h=Comment: DomainKey-Signature:Received:Received:Received:Received: Message-id:Date:From:User-Agent:MIME-version:To:Cc:Subject: Content-type:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=yL8M3r7 i90s9loMlT8akq+ECKqs=; b=Lfo/gSzAXc5zeRslCWb4famdtUg781On0VDIrjG eWG7pX46BUNwuxbpic7mUmZZBylCVoyMYEGlP1A6CpF2gGGXmFS/uwsGZTvPhBHg sIiYGaeJoEghyO1ofiEATwMmPLgA++d980aqHAlfdhhOs8/2PNLg6uZxipXqH9I7 2K2Y= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Message-id:Date:From:User-Agent:MIME-version:To:Cc:Subject:Content-type:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=x2OqJnYXV2YteOTTAd0AJuLce4Mh5uMYsynu7uh2XRyQ4ivg6tCgl9exyVrRvU CsaUHc4AIpAOUPfePiIvkxKJ289WF5dvR3neckhaQE+DyCbSDcS0IfEKjYVgO0VY WDEvJwAW0xKNmvPtNgBcp3KWcAicEFV2LdNdLuUEON8g0=; Received: (qmail 13690 invoked by alias); 23 Aug 2012 00:05:54 -0000 Received: (qmail 13655 invoked by uid 22791); 23 Aug 2012 00:05:50 -0000 X-SWARE-Spam-Status: No, hits=3.0 required=5.0 tests=BAYES_00, BOTNET, RCVD_IN_DNSWL_NONE, RCVD_IN_HOSTKARMA_NO, RCVD_IN_HOSTKARMA_YE, RP_MATCHES_RCVD, TW_GC, TW_XL X-Spam-Check-By: sourceware.org Received: from vms173003pub.verizon.net (HELO vms173003pub.verizon.net) (206.46.173.3) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 23 Aug 2012 00:05:34 +0000 Received: from [10.16.147.104] ([unknown] [131.121.225.22]) by vms173003.mailsrvcs.net (Sun Java(tm) System Messaging Server 7u2-7.02 32bit (built Apr 16 2009)) with ESMTPA id <0M9600KDALKPQJ30@vms173003.mailsrvcs.net> for gcc-patches@gcc.gnu.org; Wed, 22 Aug 2012 19:05:15 -0500 (CDT) Message-id: <503573B9.5090406@verizon.net> Date: Wed, 22 Aug 2012 20:05:13 -0400 From: rbmj User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-version: 1.0 To: gcc-patches@gcc.gnu.org Cc: bkorb@gnu.org, bonzini@gnu.org, nathan@codesourcery.com Subject: VxWorks Patches Back from the Dead! Content-type: multipart/mixed; boundary=------------040600050704040003000600 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Hello Everyone, I have ten patches which are approved or obvious but waiting on commit, each of which is attached to this email. Feel free to consider this a ping, HOWEVER, they are rebased onto the latest trunk so they're no longer stale. Additionally, I updated the commit messages and with complete proposed changelog entries. They all (inside the patch file) have a link to their approval message and the original proposal message. Note that ANY patch that touches fixincludes has a dependency on the first patch (0001...), as fixincludes WILL NOT RUN without this patch on a vxworks platform. Sorry for the long latency period but I did not have access to a computer for a substantial period of time over the summer. I've just been able to get everything back up and running. --- Robert Mason >From 991c277c1be41dff96b474a1e8bb9d297042ac70 Mon Sep 17 00:00:00 2001 From: rbmj Date: Wed, 30 May 2012 08:16:57 -0400 Subject: [PATCH 01/10] Add ability to skip the machine_name fixincludes fix. On some platforms, machine_name is overzealous, or even breaks things. This patch adds the functionality to skip the machine_name 'fix' by giving it an empty macro list. It also removes vxworks from the list of no-op fix platforms so that fixincludes will run on that platform (it needs it). Proposed by Robert Mason: http://gcc.gnu.org/ml/gcc-patches/2012-06/msg00383.html Approved by Nathan Sidwell: http://gcc.gnu.org/ml/gcc-patches/2012-06/msg00549.html Approved by Bruce Korb: http://gcc.gnu.org/ml/gcc-patches/2012-06/msg00552.html Changes: [gcc] configure.ac: Add target-based selection of new exported variable skip_machine_name_fix configure: Regenerate Makefile.in: add check for SKIP_MACHINE_NAME_FIX [fixincludes] mkfixinc.sh: Remove vxworks from the list of no-op fixincludes platforms as it needs some fixes --- fixincludes/mkfixinc.sh | 1 - gcc/Makefile.in | 15 +++++++++++---- gcc/configure.ac | 14 ++++++++++++++ 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/fixincludes/mkfixinc.sh b/fixincludes/mkfixinc.sh index 89e8ab7..6653fed 100755 --- a/fixincludes/mkfixinc.sh +++ b/fixincludes/mkfixinc.sh @@ -15,7 +15,6 @@ case $machine in i?86-*-mingw32* | \ x86_64-*-mingw32* | \ i?86-*-interix* | \ - *-*-vxworks* | \ powerpc-*-eabisim* | \ powerpc-*-eabi* | \ powerpc-*-rtems* | \ diff --git a/gcc/Makefile.in b/gcc/Makefile.in index dddffb6..31b36eb 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -237,6 +237,9 @@ LINKER = $(CC) LINKER_FLAGS = $(CFLAGS) endif +# Whether or not to run the machine_name fixincludes fix +SKIP_MACHINE_NAME_FIX = @skip_machine_name_fix@ + # ------------------------------------------- # Programs which operate on the build machine # ------------------------------------------- @@ -4045,10 +4048,14 @@ install-gcc-tooldir: macro_list: s-macro_list; @true s-macro_list : $(GCC_PASSES) - echo | $(GCC_FOR_TARGET) -E -dM - | \ - sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \ - -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \ - sort -u > tmp-macro_list + @if test "$(SKIP_MACHINE_NAME_FIX)" != "yes" ; then \ + echo | $(GCC_FOR_TARGET) -E -dM - | \ + sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \ + -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \ + sort -u > tmp-macro_list ; \ + else \ + echo > tmp-macro_list ; \ + fi $(SHELL) $(srcdir)/../move-if-change tmp-macro_list macro_list $(STAMP) s-macro_list diff --git a/gcc/configure.ac b/gcc/configure.ac index 7042c91..f5ff61c 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -5121,6 +5121,20 @@ if test x"${LINKER_HASH_STYLE}" != x; then [The linker hash style]) fi +# Check whether to enable the fixincludes machine_name hack on this platform +case "${target}" in + *-*-vxworks*) + skip_machine_name_fix="yes" + ;; + *) + # Note that some platforms have fixincludes disabled by default so + # this will make no difference + skip_machine_name_fix="no" + ;; +esac +AC_SUBST(skip_machine_name_fix) + + # Configure the subdirectories # AC_CONFIG_SUBDIRS($subdirs)