bld.shlib(...)
コマンドでビルドされたライブラリを にインストールしたいのですが<prefix>/lib<arch_suffix>
、arch_suffix はアーキテクチャに応じて 64 または空にすることができます。
これどうやってするの?
それが不可能な場合、このサフィックスを明示的に指定するにはどうすればよいですか?
bld.shlib(...)
コマンドでビルドされたライブラリを にインストールしたいのですが<prefix>/lib<arch_suffix>
、arch_suffix はアーキテクチャに応じて 64 または空にすることができます。
これどうやってするの?
それが不可能な場合、このサフィックスを明示的に指定するにはどうすればよいですか?
これは、役立つはずの簡単な例です。インストールパスを変更するのは本当に簡単です。この例では、オプション コンテキストの「configure options」グループに「suffix」オプションを追加します。次に、configure コンテキストで、SUFFIX という環境変数を設定します。ビルド コンテキストでは、"install_path" キーワード引数で環境変数を使用します。ここで重要なことは、設定されている環境変数を参照できることです。
def options(opt):
opt.load('compiler_cxx')
grp = opt.get_option_group('configure options')
grp.add_option('--suffix',default='',dest='suffix')
def configure(cfg):
cfg.load('compiler_cxx')
cfg.env.SUFFIX = cfg.options.suffix
def build(bld):
src=['example.cpp']
inc=['.']
libs=['']
bld(features=['cxx','cxxprogram'],
source=src,
includes=inc,
target='example',
name='example',
use=libs,
install_path='${PREFIX}/lib${SUFFIX}'
)
waf distclean configure build install --prefix=/tmp --suffix=64