Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jan Kratochvil <jan.kratochvil@redhat.com>
To: Pedro Alves <palves@redhat.com>
Cc: Joel Brobecker <brobecker@adacore.com>,
	Yao Qi <yao@codesourcery.com>,
	       gdb-patches@sourceware.org
Subject: Re: Fix in-src-tree builds by making gdbserver/gnulib/ a separate library (a la libiberty, etc.), and adding ACX_CONFIGURE_DIR.
Date: Wed, 18 Apr 2012 15:52:00 -0000	[thread overview]
Message-ID: <20120418154041.GA17262@host2.jankratochvil.net> (raw)
In-Reply-To: <4F8EBBA6.10507@redhat.com>

On Wed, 18 Apr 2012 15:03:34 +0200, Pedro Alves wrote:
> On 04/18/2012 01:51 PM, Jan Kratochvil wrote:
> 
> > On Wed, 18 Apr 2012 14:40:18 +0200, Pedro Alves wrote:
> >> > This is no different from src/gdb/ vs build/gdb.
> > I (and I guess most of the users) always use just in-src-tree-build with src/
> > and no separate build/ .  
> 
> Eh.  Why would you prefer doing things that way?

This is offtopic but:

After 6 years I still have not figured out a single reason why to do
out-of-src-tree build.  It is difficult to switch directories back and forth
between editing .c files and running make.

And why to separate the two directories?
 * Object/binary files are filtered out of versioning system handling by
   .cvsignore/.gitignore (it does not work with GDB, I guess I should fix it).
 * Why to have multiple builds out of a single src tree?  I do not remember
   I would ever use that case.  And if I had to I just copy the sources.
   And if I need to save space of the sources files, negligible to the object
   files size anyway, either
   * filesystem automatic deduplication does it for me automatically anyway.
   * or I can just use hardlinks for the source files (cp -al).

I probably miss some use case but I never met such use case in the 6 years
heavily involved with the toolchain (and neither in its lighter use before).


> > From my point of view it does not matter how it
> > looks in the out-of-src-tree build.  I understand you have to introduce
> > separate build directory for gnulib/ in your layout.
> > 
> > Couldn't you just use
> > 	gdb/configure.ac:           ACX_CONFIGURE_DIR(["gnulib-src"],    ["build-gnulib-gdb"])
> > 	gdb/gdbserver/configure.ac: ACX_CONFIGURE_DIR(["../gnulib-src"], ["build-gnulib-gdbserver"])
> > and having during in-src-tree build:
> > 	src/gdb/gnulib-src/gnulib/
> > 	src/gdb/build-gnulib-gdb/gnulib/
> > 	src/gdb/gdbserver/build-gnulib-gdbserver/gnulib/
> 
> I could, but look at those duplicate "gnulib/"s anyway...

It is all about subjective orientation, I find it easier that at least the
parent directory name is unique.

This double-directory layout and out-of-src-tree part even during in-src-tree
part is sure not ideal.  Do you have objections to this layout of slightly
less ambigous names?  I do not mind renaming it any way, just to keep it
unique as I propose above.


> I really don't think we should complicate the build to somehow change that.

Then there is the toplevel gnulib directory.


> I think you'll have cases like these if you build gcc in tree, for example.

gcc tree is an exception as:
 * it has three stages during bootstrap anyway so it just cannot be a single
   directory.
 * AFAIK it is usable only after `make install' anyway so one needs the
   separate installation directory already, so if 2 or 3 directories already
   does not matter much.


Thanks,
Jan


  reply	other threads:[~2012-04-18 15:41 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-11  8:41 [PATCH] Link gnulib in gdbserver Yao Qi
2012-04-11 18:11 ` Pedro Alves
2012-04-12  8:14   ` Yao Qi
2012-04-12 20:26     ` Doug Evans
2012-04-13  0:47       ` Yao Qi
2012-04-13 11:20         ` Pedro Alves
2012-04-13 11:24           ` Pedro Alves
2012-04-13 12:01           ` Yao Qi
2012-04-13 13:23             ` Pedro Alves
2012-04-14  3:40 ` Jan Kratochvil
2012-04-14  3:52   ` Yao Qi
2012-04-15 19:42     ` [patch] Fix in-src-tree builds by gdbserver/gnulib/ copy [Re: [PATCH] Link gnulib in gdbserver.] Jan Kratochvil
2012-04-16  9:42       ` Yao Qi
2012-04-16 10:11         ` [patch#2] Fix in-src-tree builds by gdbserver/gnulib/ copy Jan Kratochvil
2012-04-16 10:51           ` Yao Qi
2012-04-16 11:32       ` [patch] Fix in-src-tree builds by gdbserver/gnulib/ copy [Re: [PATCH] Link gnulib in gdbserver.] Pedro Alves
2012-04-16 18:51         ` Fix in-src-tree builds by making gdbserver/gnulib/ a separate library (a la libiberty, etc.), and adding ACX_CONFIGURE_DIR Pedro Alves
2012-04-16 18:35           ` Jan Kratochvil
2012-04-17 16:55             ` Pedro Alves
2012-04-17 17:27               ` Jan Kratochvil
2012-04-17 18:55                 ` Pedro Alves
2012-04-17 23:52                   ` Joel Brobecker
2012-04-18  9:16                     ` Pedro Alves
2012-04-18  9:32                       ` Jan Kratochvil
2012-04-18 10:52                         ` Pedro Alves
2012-04-18 12:34                           ` Jan Kratochvil
2012-04-18 12:52                             ` Pedro Alves
2012-04-18 13:04                               ` Jan Kratochvil
2012-04-18 13:18                                 ` Pedro Alves
2012-04-18 15:52                                   ` Jan Kratochvil [this message]
2012-04-18 16:04                                     ` Pedro Alves
2012-04-18 16:09                                       ` Jan Kratochvil
2012-04-18 16:16                                         ` Pedro Alves
2012-04-18 16:09                                       ` Pedro Alves
2012-04-18 16:04                                     ` Mark Kettenis
2012-04-18 16:14                                       ` Jan Kratochvil
2012-04-18 17:05                                         ` Joel Brobecker
2012-04-18 15:04                           ` Joel Brobecker
2012-04-19 15:46                             ` gnulib/ -> gnulib/import/ Pedro Alves
2012-04-16 20:06           ` Fix in-src-tree builds by making gdbserver/gnulib/ a separate library (a la libiberty, etc.), and adding ACX_CONFIGURE_DIR Tom Tromey
2012-04-16 20:36             ` Doug Evans
2012-04-16 20:41               ` Pedro Alves
2012-04-16 22:57                 ` Joel Brobecker
2012-04-16 23:19                   ` Stan Shebs
2012-04-17 12:16                     ` Tom Tromey
2012-04-17 15:16                       ` Joel Brobecker
2012-04-17 10:29           ` Yao Qi
2012-04-17 10:49             ` Pedro Alves

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120418154041.GA17262@host2.jankratochvil.net \
    --to=jan.kratochvil@redhat.com \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    --cc=yao@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox