From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15894 invoked by alias); 12 Jul 2011 21:42:57 -0000 Received: (qmail 15885 invoked by uid 22791); 12 Jul 2011 21:42:56 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from mail-iy0-f169.google.com (HELO mail-iy0-f169.google.com) (209.85.210.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 12 Jul 2011 21:42:31 +0000 Received: by iyl8 with SMTP id 8so5911378iyl.0 for ; Tue, 12 Jul 2011 14:42:30 -0700 (PDT) Received: by 10.42.28.198 with SMTP id o6mr371868icc.415.1310506950294; Tue, 12 Jul 2011 14:42:30 -0700 (PDT) MIME-Version: 1.0 Received: by 10.42.213.134 with HTTP; Tue, 12 Jul 2011 14:42:10 -0700 (PDT) In-Reply-To: References: <1310436152-8693-1-git-send-email-vapier__46811.2245122485$1310436164$gmane$org@gentoo.org> From: Mike Frysinger Date: Wed, 13 Jul 2011 02:04:00 -0000 Message-ID: Subject: Re: [PATCH] sim: generate build dependencies on the fly To: Tom Tromey Cc: gdb-patches@sourceware.org, toolchain-devel@blackfin.uclinux.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-07/txt/msg00332.txt.bz2 On Tue, Jul 12, 2011 at 17:08, Tom Tromey wrote: > GDB arranges for generated files to be built early, via order-only > dependencies. =A0Order-only dependencies ensure that merely touching one > of the generated files doesn't cause a global recompile. > > # Ensure that generated files are created early. =A0Use order-only > # dependencies if available. =A0They require GNU make 3.80 or newer, > # and the .VARIABLES variable was introduced at the same time. > @GMAKE_TRUE@ifdef .VARIABLES > @GMAKE_TRUE@$(all_object_files): | $(generated_files) > @GMAKE_TRUE@else > $(all_object_files) : $(generated_files) > @GMAKE_TRUE@endif oh, ok. i saw that, but didnt quite grok what was going on. this will make things much easier to work with, so i'll take this approach and send an updated patch. > Tom> Finally I thought there was some problem with multiple entries in VP= ATH, > Tom> but I cannot find that in the docs. =A0Perhaps it is one of those an= cient > Tom> incorrect memories. =A0It would bear testing with a non-GNU make. > > Mike> sounds like all good reasons to use automake :). =A0otherwise all t= he > Mike> files in common/ need manual deps (like gdb does with files in > Mike> subdirs), and that semi-defeats the purpose of this in the first > Mike> place. > > Yeah. =A0I am not actually sure how well Automake would currently handle > sources in "../common/". =A0Neither here nor there I guess. pretty sure it wouldnt care. it can handle relative paths in subdirs last i looked (foo/blah.c), so i dont see why relative paths in a sibling tree (../foo/blah.c) would be different. knock on wood :x. > Fedora includes the BSD make (yum install bmake); I assume other distros > do too. =A0So you could try a build with that. yes, Gentoo includes many alternative makes including bmake and pmake. Gentoo works natively on BSD systems too you know :). but would saying "yes, this works on current BSD makes" be satisfactory when the complaint in the manual alludes to "ancient makes" ? -mike