You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stdcxx.apache.org by Eric Lemings <Er...@roguewave.com> on 2008/02/12 23:45:44 UTC

RE: [Vote] stdcxx naming in sourcepro builds

 

> -----Original Message-----
> From: Andrew Black [mailto:ablack@roguewave.com] 
> Sent: Tuesday, February 12, 2008 9:59 AM
> To: Eric Lemings
> Cc: Scott Zhong; _RW_SourcePro Development
> Subject: Re: [Vote] stdcxx naming in sourcepro builds
> 
> 
> Eventually, it will be necessary to add build tags to the 
> library name,
> in order to resolve bugzilla 5128 (and whatever bug(s) it duplicates),
> but that will also require resolution of STDCXX-336.  On the
> infrastructure side, it will be necessary to devise a mechanism to
> communicate the complete build tag to the glue scripts.

To resolve these installation-related issues, I suspect the STDCXX
distribution will need functionality similar to pkg-config
(http://pkg-config.freedesktop.org/wiki/) which provides clients with
the necessary details (install directories, compiler flags, library
names, etc.) but also extended to provide a list of installed build
configurations.  (Some open source projects use this utility directly,
others use a stand-alone, hand-written script.)

For example, a hypothetical script and usage:

    Usage: stdcxx-config [TAG OPTIONS]

    Options:
      --prefix	Prints the directory where TAG is installed
	--cxxflags	Prints the necessary compile flags for building
with TAG
	--ldlibs	Prints the necessary link libraries for building
with TAG
      --ldflags   Prints the necessary link flags for building with TAG
	...other pkg-config-like options...

    If no options are specified, stdcxx-config prints a list of
    configuration tags, one per line, for each build configuration
installed
    on this system.

This will allow STDCXX to install builds built with different compilers,
different diagnostic tools, etc. though a user-defined build tag may
be required when configuring the build to identify it.

Brad.