# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-

top = '../..'

def build(bld):
    tmpdir = 'UNIT_TESTS_TMPDIR="%s"' % bld.bldnode.make_node('tmp-files')

    # unit test objects
    srcFiles = bld.path.ant_glob('**/*.cpp',
                                 excl=['main.cpp',
                                       '**/*-osx.t.cpp',
                                       '**/*-sqlite3.t.cpp'])

    if bld.env['HAVE_OSX_FRAMEWORKS']:
        srcFiles += bld.path.ant_glob('**/*-osx.t.cpp')

    # In case we want to make it optional later
    srcFiles += bld.path.ant_glob('**/*-sqlite3.t.cpp')

    bld.objects(
        target='unit-tests-objects',
        source=srcFiles,
        features='pch',
        headers='unit-tests-pch.hpp',
        use='tests-common',
        defines=[tmpdir])

    # unit test binary
    bld.program(
        target=f'{top}/unit-tests',
        name='unit-tests',
        source=['main.cpp'],
        use='unit-tests-objects',
        install_path=None)
