# Hamigaki Bjam Library Jamfile

# Copyright Takeshi Mouri 2007.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)

# See http://hamigaki.sourceforge.jp/libs/bjam for library home page.

subproject libs/bjam/build ;

MODULES =
    order
    path
    property_set
    regex
    sequence
    set
    ;

SOURCES =
    bjam_context
    bjam_exceptions
    builtin_rules
    class
    glob
    instantiate_bjam_exprgr
    instantiate_bjam_grammar
    native_rules
    pattern
    predefined_variables
    search
    shell
    util_path
    util_regex
    variable_expansion
    modules/$(MODULES)
    ;

if $(OS) in NT CYGWIN
{
    SOURCES += registry ;
    OPTS += <find-library>advapi32 ;
}

lib hamigaki_bjam
    :
        ../src/$(SOURCES).cpp
    :
        [ common-names ]
        <include>$(HAMIGAKI_ROOT)  <sysinclude>$(HAMIGAKI_ROOT)
        <include>$(BOOST_INCLUDE)  <sysinclude>$(BOOST_INCLUDE)
        <vc-8_0><*><cflags>-wd4996
        <vc-8_0><*><cflags>-wd4819
    :
        debug release
    ;

dll hamigaki_bjam
    :
        ../src/$(SOURCES).cpp
        <lib>../../process/build/hamigaki_process
    :
        <library-path>$(BOOST_LIBPATH)
        find-boost-filesystem-lib
        find-boost-regex-lib
        [ common-names ]
        <define>HAMIGAKI_BJAM_DYN_LINK=1
        <runtime-link>dynamic
        <include>$(HAMIGAKI_ROOT)  <sysinclude>$(HAMIGAKI_ROOT)
        <include>$(BOOST_INCLUDE)  <sysinclude>$(BOOST_INCLUDE)
        <vc-8_0><*><cflags>-wd4996
        <vc-8_0><*><cflags>-wd4819
        $(OPTS)
    :
        debug release
    ;

install bjam lib
     : <lib>hamigaki_bjam <dll>hamigaki_bjam
     ;

stage stage/lib
    : <lib>hamigaki_bjam <dll>hamigaki_bjam
    : # copy to a path rooted at HAMIGAKI_ROOT:
      <locate>$(HAMIGAKI_ROOT)
      [ common-names ]
      <target>stage
      <target>all
    : # build variants
      debug release
    ;
