from waflib import Errors

test_s4_src = """
s4/t_s4.c
s4/t_sourcepref.c
s4/t_val.c
s4/t_cond.c
s4/t_transactions.c
s4/t_pattern.c
""".split()

def configure(conf):
    conf.load('unittest', tooldir='waftools')

    conf.check_cc(header_name='CUnit/CUnit.h')
    conf.check_cc(lib='cunit', uselib_store='cunit')
    conf.check_cc(lib='ncurses', uselib_store='ncurses', mandatory=False)

    if conf.check_cc(cflags="-Wno-unused-but-set-variable", mandatory=False):
        conf.env.append_unique("CFLAGS_DISABLE_UNUSEDBUTSETVARIABLE", "-Wno-unused-but-set-variable")

def build(bld):
    bld(features = 'c',
        target = 'memorystatus',
        source = ['runner/memory_status.c'],
        includes = 'utils',
        use = 'valgrind DISABLE_UNUSEDBUTSETVARIABLE',
        install_path = None,
        )

    bld(features = 'c cprogram test',
        target = 'test_s4',
        source = test_s4_src,
        includes = '. runner ../src ../include',
        use = 's4 memorystatus',
        uselib = 'glib2 gthread2 cunit ncurses',
        install_path = None
        )

def options(o):
    o.load('unittest', tooldir='waftools')
