Boost logo

Boost-Build :

Subject: Re: [Boost-build] [Locale] Help Needed with Boost-Build
From: Vladimir Prus (ghost_at_[hidden])
Date: 2010-09-12 05:12:46


On Sunday 12 September 2010 12:31:14 Artyom wrote:

> > > Input Options:
> > >
> > > - with icu - turned on by default.
> > > - with iconv (turned off by default in Windows and Solaris)
> > > - with posix-backend (turned on by default on Linux and Mac)
> > > - with winapi-backend (turned on on windows and cygwin)
> > > - with std-backend (turned off by default with SunStudio/stlport)
> >
> > How those options are supposed to be specified?
> > Only by user, in any
> > combination he might want?
>
> Yes, any option in any combination.
>
> User should be able to specify them to reduce
> backends or dependencies he does not need or even
> add backends even if they may fail some tests.
>
> Also if ICU is not found, for example, the ICU option should
> be turned off automatically.

And do you want with-icu option for your library to be independent from
similar option for regex?

> > > Note, when building under MSVC/Debug; search for icuXXXd library
> > > rather then for icuXXX library.
> > > - if with iconv is on
> > > if iconv is a part of standard C library, use it
> > > Otherwise find libiconv, if not found, turn iconv off.
> >
> > Would you please either specify code that compiles and links with
> > iconv and does not compile or does not link without? Alternatively,
> > point me at existing checks? CMake does not appear to have such
> > check in 2.6.
>
> I have written my own in CMake with check_cxx_compiles:
>
> #include <iconv.h>
> int main()
> {
> iconv_t v=iconv_open((char *)0,(char *)0);
> }
>
> And if not compiles, search for iconv and iconv.h

OK.

> > > Build Defines:
> > >
> > > - Add BOOST_ALL_NO_LIB
> >
> > Why? That would make Boost.Locale different from every other compiled
> > library.
>
>
> Very simply, latest Boost.Thread allows to use boost::mutex without
> linking to the library itself. However if I do include <boost/thread.hpp>
> under MSVC it would enforce it to link with library.
>
> So I just want to reduce the dependency I don't need.

Then BOOST_THREAD_NO_LIB would be a better approach. Anyway, as soon
as you want to have this define only when building Boost.Locate itself,
it's probably not important.

> > >
> > > If using boost<= 1.43 link with thread library
> >
> > Why does this depend on Boost version?
>
> Not really important, as I told above, newer versions have header only
> Boost.Thread's mutex, older require link.

I guess this is indeed not important for a version that is supposed to
become official part of Boost.

>
> > I can look into this, but before -- can you give me a link to "golden"
> sources
> > of Boost.Locale, or better still -- to live version control system where it
> > lives. Write access would be slightly better.
>
> Sorry (I send the link only to Boost and not Boost-Build):
>
> Sources: http://sourceforge.net/projects/cppcms/files/boost_locale/
> SVN:
> https://cppcms.svn.sourceforge.net/svnroot/cppcms/boost_locale/branches/rework
>
> Please give me your sourceforge account and I'll add commit permissions
> immediately to the project.

I'm vladimir_prus there.

Thanks,

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk