Le 28/08/13 13:14, Thomas Klausner a écrit :
On Wed, Aug 28, 2013 at 01:07:27AM +0200, Richard PALO wrote:
Hi, this has been lingering for awhile...
On Solaris, when boost-libs is built with the option 'icu', PLIST is
missing the following:
lib/libboost_locale.a
lib/libboost_locale.so
lib/libboost_locale.so.${BOOST_VERSION}
The following PLISTs have the above entries, albeit non parameterised:
PLIST.Darwin
PLIST.DragonFly
PLIST.Linux
PLIST.NetBSD
I have prepared a patch with a global PLIST variable 'icu' at
http://www.netbsd.org/~richard/boost-icu.patch
effectively adding to PLIST:
${PLIST.icu}lib/libboost_locale.a
${PLIST.icu}lib/libboost_locale.so
${PLIST.icu}lib/libboost_locale.so.${BOOST_VERSION}
I'd like to make sure that no platform generates these libs
*without* the 'icu' option, in which case I will simply use
PLIST.SunOS and let the other platform deal with it themselves
(since nobody has parameterised it already :-)
Could I get the above platforms to confirm please?
If I build boost-libs with your patch on NetBSD-6.99.23/amd64, it
fails with:
=> Automatic manual page handling
=> Generating post-install file lists
=> Checking file-check results for boost-libs-1.53.0
ERROR: ************************************************************
ERROR: The following files are in
/scratch/devel/boost-libs/work/.destdir/usr/pkg but not in the PLIST:
ERROR:
/scratch/devel/boost-libs/work/.destdir/usr/pkg/lib/libboost_locale.a
ERROR:
/scratch/devel/boost-libs/work/.destdir/usr/pkg/lib/libboost_locale.so
ERROR:
/scratch/devel/boost-libs/work/.destdir/usr/pkg/lib/libboost_locale.so.1.53.0
*** Error code 1
Thomas
Well, that confirms that the original package is broke with respect to
locale.
From the webpage:
http://www.boost.org/doc/libs/1_51_0/libs/locale/doc/html/building_boost_locale.html
Building Boost.Locale
Dependencies
ICU library 3.6 or above is strongly recommended
If no ICU library is given, iconv support is required under POSIX
platforms.
and further down:
Build Options
Boost.Locale supports following options with values off or on
boost.locale.icu=off disable build of ICU backend even if ICU
library exists
boost.locale.iconv=off or boost.locale.iconv=on enable or disable
use of iconv library. It is off by default on Windows and Solaris
boost.locale.winapi=off - disable winapi backend, it is on by
default on Windows and Cygwin
boost.locale.std=off or boost.locale.winapi=on Disable or enable
std backends. std backend is disabled by default when using Sun Studio.
boost.locale.posix=on or boost.locale.posix=off Enable or disable
support of POSIX backend, it is on by default on Linux and Mac OS X
Also Boost.Locale supports following options
-sICU_PATH=/path/to/location/of/icu - the location of custom ICU
library
-sICONV_PATH=/path/to/location/of/iconv - the location of custom
iconv library
It appears that at least three problems exist:
1. 'libiconv' isn't being included, nor is ICONV_PATH specified
2. 'icu' is not disabled by default, but automatically detected
whereas in pkgsrc an option should either be enabled or disabled in
accordance to the option selection.
3. ICU_PATH=${PREFIX} seems ok only for a *pkgsrc* icu, as there
doesn't seem to be any specific builtin support yet.
This is probably why it works to get the locale libraries on solaris.