blob: 17d3f01812500790f46c653e6135a708972e1099 [file] [log] [blame]
libcheck_files = [
'check.c',
'check_error.c',
'check_list.c',
'check_log.c',
'check_msg.c',
'check_pack.c',
'check_print.c',
'check_run.c',
'check_str.c',
'libcompat/libcompat.c'
]
if not cdata.has('HAVE_ALARM')
libcheck_files += ['libcompat/alarm.c']
endif
if not cdata.has('HAVE_GETTIMEOFDAY')
libcheck_files += ['libcompat/gettimeofday.c']
endif
if not cdata.has('HAVE_CLOCK_GETTIME')
libcheck_files += ['libcompat/clock_gettime.c']
endif
if not cdata.has('HAVE_DECL_LOCALTIME_R')
libcheck_files += ['libcompat/localtime_r.c']
endif
if not cdata.has('HAVE_DECL_STRSIGNAL')
libcheck_files += ['libcompat/strsignal.c']
endif
if not cdata.has('HAVE_DECL_STRDUP') and not cdata.has('HAVE__STRDUP')
libcheck_files += ['libcompat/strdup.c']
endif
if not cdata.has('HAVE_GETLINE')
libcheck_files += ['libcompat/getline.c']
endif
# FIXME: check that timer_create, timer_settime, timer_delete are in rt_lib
if not rt_lib.found()
libcheck_files += [
'libcompat/timer_create.c',
'libcompat/timer_settime.c',
'libcompat/timer_delete.c'
]
endif
configure_file(input : 'check.h.in',
output : 'check.h',
configuration : check_cdata)
internal_check_h_inc = include_directories('..')
# Must explicitly make symbols public if default visibility is hidden
if have_visibility_hidden
libcheck_visibility_args = ['-DCK_DLL_EXP=extern __attribute__ ((visibility ("default")))']
else
if host_system == 'windows'
libcheck_visibility_args = ['-DCK_DLL_EXP=__declspec(dllexport)']
else
libcheck_visibility_args = ['-DCK_DLL_EXP=extern']
endif
endif
no_warn_args = []
foreach arg : [
'-Wno-undef',
'-Wno-redundant-decls',
'-Wno-missing-prototypes',
'-Wno-missing-declarations',
'-Wno-old-style-definition',
'-Wno-declaration-after-statement']
if cc.has_argument(arg)
no_warn_args += [arg]
endif
endforeach
libcheck = static_library('check',
libcheck_files,
include_directories : [configinc, internal_check_h_inc],
dependencies : [rt_lib, mathlib],
c_args: gst_c_args + libcheck_visibility_args + no_warn_args +
# Don't want libcompat to think we don't have these and substitute
# replacements since we don't check for or define these. See libcompat.h
['-DHAVE_VSNPRINTF', '-DHAVE_SNPRINTF', '-DHAVE_MALLOC', '-DHAVE_REALLOC'],
pic: true)