env = Environment()
env.MergeFlags('-O2 -Wall -Wextra -Werror -std=c99')
env.MergeFlags('-I../src -L../src -lasprintf')
env.MergeFlags('!pkg-config cutter --cflags --libs')
env.MergeFlags('-DUNIT_TEST')

env.SharedLibrary('test_1_normal_case',
                  'test_1_normal_case.c')
env.SharedLibrary('test_2_vsnprintf1_error_case',
                  'test_2_vsnprintf1_error_case.c')
env.SharedLibrary('test_3_malloc_error_case',
                  'test_3_malloc_error_case.c')
env.SharedLibrary('test_4_vsnprintf2_error_case',
                  'test_4_vsnprintf2_error_case.c')
env.SharedLibrary('test_5_vsnprintf1_parameter_check_case',
                  'test_5_vsnprintf1_parameter_check_case.c')
env.SharedLibrary('test_6_malloc_parameter_check_case',
                  'test_6_malloc_parameter_check_case.c')
env.SharedLibrary('test_7_vsnprintf2_parameter_check_case',
                  'test_7_vsnprintf2_parameter_check_case.c')
env.SharedLibrary('test_8_free_parameter_check_case',
                  'test_8_free_parameter_check_case.c')

env.Command("test", [],
            "env LD_PRELOAD=libasprintf.so LD_LIBRARY_PATH=src cutter test")
