This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] sim: generate build dependencies on the fly


On Tue, Jul 12, 2011 at 17:08, Tom Tromey wrote:
> GDB arranges for generated files to be built early, via order-only
> dependencies. ?Order-only dependencies ensure that merely touching one
> of the generated files doesn't cause a global recompile.
>
> # Ensure that generated files are created early. ?Use order-only
> # dependencies if available. ?They 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 VPATH,
> Tom> but I cannot find that in the docs. ?Perhaps it is one of those ancient
> Tom> incorrect memories. ?It would bear testing with a non-GNU make.
>
> Mike> sounds like all good reasons to use automake :). ?otherwise all the
> 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. ?I am not actually sure how well Automake would currently handle
> sources in "../common/". ?Neither 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. ?So 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]