hamigaki.png

前のページ 上に戻る ホーム 次のページ

付録 A. Boost.Buildについて

目次

字句
トークン
コメント
データ
データ型
変数
変数展開
ルール
定義
呼び出し
制御フロー
条件式
パターン
if
for
while
switch
モジュール
モジュール
モジュールとルール
モジュールファイル
モジュールと変数
.ENVIRONモジュール
グローバル変数
プロパティ
プロパティ
フィーチャー
プロジェクト
プロジェクト階層
Jamfile
プロジェクト定数
環境設定
ターゲット
ターゲットID
共通構文
exe
lib
alias
組み込みルール
ECHO
EXIT
GLOB
MATCH
Bjamのオプション
書式
Bjamコマンドのオプション
BBv2のオプション
リファレンス
modulesモジュール
osモジュール
pathモジュール
setモジュール
targetsモジュール
toolsetモジュール
virtual-target モジュール

ここではBoostライブラリやHamigakiライブラリのビルドに使われるBoost.Buildシステム バージョン2(以下、BBv2)について解説する。

字句

トークン

BBv2のトークンは全て空白(スペース、水平タブ、垂直タブ、復帰、改行、改ページ)で区切られる。C/C++のような区切り文字は存在しない。よって、

hello BBv2! ;
[this_is_a_token] ;

は、「hello」、「BBv2!」、「;」、「[this_is_a_token]」、「;」の5つのトークンとして解釈される。

トークンに空白を含める場合は、ダブルクォーテーションで囲むか、「\」でエスケープ処理を施す。BBv2のエスケープ処理にはC/C++の「\n」のような特殊なパターンはなく、単に次の文字をただの文字として扱う。よって、

"hello BBv2!" ;
\"this\ is\ "a token\"" ;

は、「hello BBv2!」、「;」、「"this is a token"」、「;」の4つのトークンとして解釈される。

コメント

「#」から改行までの文字列はコメントとして扱われ、BBv2に読み飛ばされる。ただし、「#」がトークンの一部である場合はコメントとみなされない。

#This is a comment.
But_#it_is_not_a_commnt. ;

前のページ 上に戻る ホーム 次のページ