public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Template Repository Question
@ 1999-03-02 17:36 Pyle, Mike
  1999-03-31 23:46 ` Pyle, Mike
  0 siblings, 1 reply; 4+ messages in thread
From: Pyle, Mike @ 1999-03-02 17:36 UTC (permalink / raw)
  To: egcs

Please excuse me if this is obvious but I'm trying to get a handle on how
the template repositories work. I understand that the .rpo files are built
and at link time collect2 investigates them and recompiles and relinks as
necessary to instantiate all the required templates. But how, if at all, can
this work for any libraries that you might be including that use templates?
Are you stuck making the libraries explicitly instantiate any templates that
are used? It seems like this would be the case but any insights would
appreciated.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Template Repository Question
  1999-03-02 17:36 Template Repository Question Pyle, Mike
@ 1999-03-31 23:46 ` Pyle, Mike
  0 siblings, 0 replies; 4+ messages in thread
From: Pyle, Mike @ 1999-03-31 23:46 UTC (permalink / raw)
  To: egcs

Please excuse me if this is obvious but I'm trying to get a handle on how
the template repositories work. I understand that the .rpo files are built
and at link time collect2 investigates them and recompiles and relinks as
necessary to instantiate all the required templates. But how, if at all, can
this work for any libraries that you might be including that use templates?
Are you stuck making the libraries explicitly instantiate any templates that
are used? It seems like this would be the case but any insights would
appreciated.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Template Repository Question
  1999-03-02 19:02 Mike Stump
@ 1999-03-31 23:46 ` Mike Stump
  0 siblings, 0 replies; 4+ messages in thread
From: Mike Stump @ 1999-03-31 23:46 UTC (permalink / raw)
  To: egcs, mike.pyle

> From: "Pyle, Mike" <mike.pyle@centraxcorp.com>
> To: egcs@egcs.cygnus.com
> Date: Tue, 2 Mar 1999 17:45:07 -0800 

> Please excuse me if this is obvious but I'm trying to get a handle
> on how the template repositories work. I understand that the .rpo
> files are built and at link time collect2 investigates them and
> recompiles and relinks as necessary to instantiate all the required
> templates. But how, if at all, can this work for any libraries that
> you might be including that use templates?  Are you stuck making the
> libraries explicitly instantiate any templates that are used? It
> seems like this would be the case but any insights would
> appreciated.

You have a mound of options.

You can decide where to put things explicitly by hand editing the rpo
files.  This should provide 100% control to the user. Certain power
users may not be happy with anything less.  I of course don't
recommand this.

You can do a full link with the library files, and let it fail, but in
the process, it will instantiate everything it can (someplace).

If you have multiple libraries, you can do them step wise, and get
ever increasing sets without any duplication:

gcc f1.o
ar f1.a f1.o
gcc f2.o f1.a
ar f2.a f2.o
...

You can not include any template instantiations, and require the user
#include <libtemplates.h> in a .c file, and compile it with -frepo and
ensure that everything the library needs _can_ be instantiate in that
file.

There are a host of other options of course that don't involve -frepo.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Template Repository Question
@ 1999-03-02 19:02 Mike Stump
  1999-03-31 23:46 ` Mike Stump
  0 siblings, 1 reply; 4+ messages in thread
From: Mike Stump @ 1999-03-02 19:02 UTC (permalink / raw)
  To: egcs, mike.pyle

> From: "Pyle, Mike" <mike.pyle@centraxcorp.com>
> To: egcs@egcs.cygnus.com
> Date: Tue, 2 Mar 1999 17:45:07 -0800 

> Please excuse me if this is obvious but I'm trying to get a handle
> on how the template repositories work. I understand that the .rpo
> files are built and at link time collect2 investigates them and
> recompiles and relinks as necessary to instantiate all the required
> templates. But how, if at all, can this work for any libraries that
> you might be including that use templates?  Are you stuck making the
> libraries explicitly instantiate any templates that are used? It
> seems like this would be the case but any insights would
> appreciated.

You have a mound of options.

You can decide where to put things explicitly by hand editing the rpo
files.  This should provide 100% control to the user. Certain power
users may not be happy with anything less.  I of course don't
recommand this.

You can do a full link with the library files, and let it fail, but in
the process, it will instantiate everything it can (someplace).

If you have multiple libraries, you can do them step wise, and get
ever increasing sets without any duplication:

gcc f1.o
ar f1.a f1.o
gcc f2.o f1.a
ar f2.a f2.o
...

You can not include any template instantiations, and require the user
#include <libtemplates.h> in a .c file, and compile it with -frepo and
ensure that everything the library needs _can_ be instantiate in that
file.

There are a host of other options of course that don't involve -frepo.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~1999-03-31 23:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-03-02 17:36 Template Repository Question Pyle, Mike
1999-03-31 23:46 ` Pyle, Mike
1999-03-02 19:02 Mike Stump
1999-03-31 23:46 ` Mike Stump

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).