From patchwork Wed Feb 1 23:41:20 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Earl Chew X-Patchwork-Id: 139026 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 D32CBB71A6 for ; Thu, 2 Feb 2012 10:41:43 +1100 (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=1328744505; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received-SPF:Received:Received:Received:Received:Message-ID:Date: From:User-Agent:MIME-Version:To:Subject:Content-Type: Content-Transfer-Encoding:Mailing-List:Precedence:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:Sender: Delivered-To; bh=ZIIqMOmbGPAAtqLjCY+kt2eKDZs=; b=s5W7D7UcPme3gpl Kxh7g7KjoqM/HftQ1Z2W2GtBLo9cuBYIH29coc1IOMi87VMf2rRff+hb+rjVnYWe Ud5fOD8kkTdCWNsA1kJIeE6te2OM7GP6bW3OsYN2utej2mk0eYcM8Dx/a0nS+Kjj aZ97Fgcm804Jrq7NgO2+soGr7bTA= 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:Received:X-SpamScore:X-BigFish:X-Forefront-Antispam-Report:Received-SPF:Received:Received:Received:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:Content-Type:Content-Transfer-Encoding:X-MS-Exchange-CrossPremises-AuthSource:X-MS-Exchange-CrossPremises-AuthAs:X-MS-Exchange-CrossPremises-AuthMechanism:X-MS-Exchange-CrossPremises-Rules-Execution-History:X-MS-Exchange-CrossPremises-Processed-By-Journaling:X-OrganizationHeadersPreserved:X-OriginatorOrg:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=M0UiAJLU7VMr5E/hJBJBq2TYurQO/R+RG75a614HXqLTB/HNqVlxx98bLS6/I9 AGhmZBzHC9Esh+eTGpcAWaGGHtfm1YZxp4ZPKWdSsWWqP12f26xj17RuF7DL5toQ Ta3e3rwqrxc9Jksxk5URwqi7kH1s2krpr6cU6KVOrLu3A=; Received: (qmail 32375 invoked by alias); 1 Feb 2012 23:41:40 -0000 Received: (qmail 32365 invoked by uid 22791); 1 Feb 2012 23:41:39 -0000 X-SWARE-Spam-Status: No, hits=-0.6 required=5.0 tests=BAYES_40, RCVD_IN_DNSWL_LOW, TW_MK X-Spam-Check-By: sourceware.org Received: from ch1ehsobe005.messaging.microsoft.com (HELO ch1outboundpool.messaging.microsoft.com) (216.32.181.185) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 01 Feb 2012 23:41:26 +0000 Received: from mail105-ch1-R.bigfish.com (10.43.68.226) by CH1EHSOBE011.bigfish.com (10.43.70.61) with Microsoft SMTP Server id 14.1.225.23; Wed, 1 Feb 2012 23:41:24 +0000 Received: from mail105-ch1 (localhost [127.0.0.1]) by mail105-ch1-R.bigfish.com (Postfix) with ESMTP id A3420260353 for ; Wed, 1 Feb 2012 23:41:24 +0000 (UTC) X-SpamScore: -3 X-BigFish: PS-3(zz936eKzz1202hzzz2fh2a8h668h839h) X-Forefront-Antispam-Report: CIP:207.46.4.139; KIP:(null); UIP:(null); IPV:NLI; H:SN2PRD0602HT001.namprd06.prod.outlook.com; RD:none; EFVD:NLI Received-SPF: pass (mail105-ch1: domain of ixiacom.com designates 207.46.4.139 as permitted sender) client-ip=207.46.4.139; envelope-from=EChew@ixiacom.com; helo=SN2PRD0602HT001.namprd06.prod.outlook.com ; .outlook.com ; Received: from mail105-ch1 (localhost.localdomain [127.0.0.1]) by mail105-ch1 (MessageSwitch) id 1328139683103468_1715; Wed, 1 Feb 2012 23:41:23 +0000 (UTC) Received: from CH1EHSMHS011.bigfish.com (snatpool2.int.messaging.microsoft.com [10.43.68.237]) by mail105-ch1.bigfish.com (Postfix) with ESMTP id 158BE480046 for ; Wed, 1 Feb 2012 23:41:23 +0000 (UTC) Received: from SN2PRD0602HT001.namprd06.prod.outlook.com (207.46.4.139) by CH1EHSMHS011.bigfish.com (10.43.70.11) with Microsoft SMTP Server (TLS) id 14.1.225.23; Wed, 1 Feb 2012 23:41:22 +0000 Received: from [10.64.33.43] (216.23.154.50) by pod51011.outlook.com (10.27.50.100) with Microsoft SMTP Server (TLS) id 14.15.39.1; Wed, 1 Feb 2012 23:41:21 +0000 Message-ID: <4F29CDA0.5040805@ixiacom.com> Date: Wed, 1 Feb 2012 15:41:20 -0800 From: Earl Chew User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0) Gecko/20120129 Thunderbird/10.0 MIME-Version: 1.0 To: Subject: Configuring gcc without symlink support X-MS-Exchange-CrossPremises-AuthSource: SN2PRD0602HT001.namprd06.prod.outlook.com X-MS-Exchange-CrossPremises-AuthAs: Internal X-MS-Exchange-CrossPremises-AuthMechanism: 06 X-MS-Exchange-CrossPremises-Rules-Execution-History: Support - Juniper X-MS-Exchange-CrossPremises-Processed-By-Journaling: Journal Agent X-OrganizationHeadersPreserved: SN2PRD0602HT001.namprd06.prod.outlook.com X-OriginatorOrg: ixiacom.com 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 Some environments don't support symbolic links :-( If ln -s is not supported, configure can figure it out, and as a last resort uses: LN_S = cp -p I've found two problems with this. The first problem is that LN_S is not propagated past the top-level Makefile. This can manifest as strange GCC_NO_EXECUTABLES messages: Link tests are not allowed after GCC_NO_EXECUTABLES The patch (against an older gcc 4.2.4) addresses this first problem. The second is that: cp -p $1 $2 mimics ln -s $1 $2 only if $1 is an absolute path, or $2 does not contain any path separators. This is not always true. For example: gcc/gcc/config/t-slibgcc-elf-ver: $(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK) There doesn't seem to be any straightforward way around this except diligence: cd $(SHLIB_DIR) && $(LN_S) $(SHLIB_SONAME) $(SHLIB_SOLINK) Earl --- gcc/gcc/Makefile.in.orig 2012-02-01 11:27:52.783587886 -0800 +++ gcc/gcc/Makefile.in 2012-02-01 11:56:37.973586113 -0800 @@ -1465,6 +1465,7 @@ MULTILIB_OSDIRNAMES='$(MULTILIB_OSDIRNAMES)' \ ASM_HIDDEN_OP='$(ASM_HIDDEN_OP)' \ GCC_FOR_TARGET='$(GCC_FOR_TARGET)' \ + LN_S='$(LN_S)' \ mkinstalldirs='$(mkinstalldirs)' \ $(SHELL) mklibgcc > tmp-libgcc.mk mv tmp-libgcc.mk libgcc.mk --- gcc/Makefile.in.orig 2012-02-01 15:08:00.353579677 -0800 +++ gcc/Makefile.in 2012-02-01 15:09:38.196088006 -0800 @@ -486,7 +486,8 @@ "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \ "LEAN=$(LEAN)" \ "CONFIG_SHELL=$(SHELL)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" + "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ + "LN_S=$(LN_S)" # We leave this in just in case, but it is not needed anymore. RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS)