boost-prebuiltモジュール

BBv2でもBoostのビルド済みライブラリを使いたいと思って、Hamigakiライブラリのビルド処理を改良中です。
とりあえずビルド済みライブラリをひっぱてくるモジュールboost-prebuiltはできました。
boost-prebuilt.jam


使い方はこんな感じです。

import boost-prebuilt ;
boost-prebuilt boost_filesystem : <search>$(BOOST_LIBPATH) ;
exe hoge : hoge.cpp boost_filesystem ;

"--layout=system"でビルドしている場合は、

boost-prebuilt boost_filesystem
: <search>$(BOOST_LIBPATH) <boost-layout>system ;

のようにboost-layoutフィーチャーで指定できます。
こういった設定の違いや、ビルド済みライブラリを使うか、ソースからビルドするかといった選択はツールセット毎に行えるべきなので、今後はboost-prebuiltか既定のlibルールをuser-config.jamやsite-config.jamで使い分けるような感じにしたいと思っています。


副産物として、<boost/version.hpp>からバージョンを取ってくるモジュールも作りました。
boost-version.jam

import boost-version ;
ECHO [ boost-version.version ] ;        # 「1.34.0」形式
ECHO [ boost-version.lib-version ] ;    # 「1_34」形式

Hamigakiライブラリ用もあります。
hamigaki-version.jam