# -*- python -*-
def options(opt):
    pass

def configure(conf):
    pass

def build(bld):
  if not bld.is_defined('JUBATUS_DISABLE_ASSERTIONS'):
    libassert = " LIBGLOG"
  else:
    libassert = ""

  bld.shlib(
    source = [
        'column_table.cpp',
    ],
    target = 'jubatus_column_table',
    name = 'jubatus_column_table',
    use = 'jubatus_util'+libassert
  )

  def make_test(s):
    bld.program(
      features = 'gtest',
      source = s,
      target = s[0:s.rfind('.')],
      includes = '.',
      use = 'MSGPACK jubatus_util jubatus_column_table jubacommon'+libassert)

  tests = [
    'column_table_test.cpp',
    'column_type_test.cpp',
    'abstract_column_test.cpp',
    'bit_vector_test.cpp',
  ]
  for test in tests:
    make_test(test)

  bld.install_files('${PREFIX}/include/jubatus/core/table/column/', [
      'abstract_column.hpp',
      'bit_vector.hpp',
      'column_table.hpp',
      'column_type.hpp',
      'owner.hpp',
      ])
