Import Upstream version 2.72.4
This commit is contained in:
commit
4ef3ff9793
2003 changed files with 1332420 additions and 0 deletions
326
glib/tests/meson.build
Normal file
326
glib/tests/meson.build
Normal file
|
|
@ -0,0 +1,326 @@
|
|||
glib_tests = {
|
||||
'array-test' : {},
|
||||
'asyncqueue' : {},
|
||||
'atomic' : {
|
||||
'c_args' : cc.get_id() == 'gcc' ? ['-Wstrict-aliasing=2'] : [],
|
||||
},
|
||||
'base64' : {},
|
||||
'bitlock' : {},
|
||||
'bookmarkfile' : {},
|
||||
'bytes' : {},
|
||||
'cache' : {},
|
||||
'charset' : {},
|
||||
'checksum' : {},
|
||||
'collate' : {},
|
||||
'completion' : {},
|
||||
'cond' : {},
|
||||
'convert' : {},
|
||||
'dataset' : {},
|
||||
'date' : {
|
||||
# FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
|
||||
'should_fail' : host_system == 'darwin',
|
||||
},
|
||||
'dir' : {},
|
||||
'environment' : {
|
||||
# FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/1392
|
||||
'should_fail' : host_system == 'darwin',
|
||||
},
|
||||
'error' : {},
|
||||
'fileutils' : {},
|
||||
'gdatetime' : {
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
'guuid' : {},
|
||||
'gvariant' : {
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
'gwakeup' : {
|
||||
'source' : ['gwakeuptest.c', '../gwakeup.c'],
|
||||
'install' : false,
|
||||
},
|
||||
'hash' : {},
|
||||
'hmac' : {},
|
||||
'hook' : {},
|
||||
'hostutils' : {},
|
||||
'io-channel' : {},
|
||||
'keyfile' : {},
|
||||
'list' : {},
|
||||
'logging' : {},
|
||||
'macros' : {},
|
||||
'mainloop' : {},
|
||||
'mappedfile' : {},
|
||||
'markup' : {},
|
||||
'markup-parse' : {},
|
||||
'markup-collect' : {},
|
||||
'markup-escape' : {},
|
||||
'markup-subparser' : {},
|
||||
'memchunk' : {},
|
||||
'mem-overflow' : {
|
||||
'link_args' : cc.get_id() == 'gcc' and cc.version().version_compare('> 6')
|
||||
? ['-Wno-alloc-size-larger-than'] : [],
|
||||
},
|
||||
'mutex' : {},
|
||||
'node' : {},
|
||||
'once' : {},
|
||||
'option-context' : {},
|
||||
'option-argv0' : {},
|
||||
'overflow' : {},
|
||||
'overflow-fallback' : {
|
||||
'source' : 'overflow.c',
|
||||
'c_args' : ['-D_GLIB_TEST_OVERFLOW_FALLBACK'],
|
||||
},
|
||||
'pattern' : {},
|
||||
'private' : {},
|
||||
'protocol' : {},
|
||||
'queue' : {},
|
||||
'rand' : {},
|
||||
'rcbox' : {},
|
||||
'rec-mutex' : {},
|
||||
'refcount' : {},
|
||||
'refcount-macro' : {
|
||||
'source' : 'refcount.c',
|
||||
'c_args' : ['-DG_DISABLE_CHECKS'],
|
||||
},
|
||||
'refstring' : {},
|
||||
'regex' : {
|
||||
'dependencies' : [pcre],
|
||||
'c_args' : use_pcre_static_flag ? ['-DPCRE_STATIC'] : [],
|
||||
},
|
||||
'relation' : {},
|
||||
'rwlock' : {},
|
||||
'scannerapi' : {},
|
||||
'search-utils' : {},
|
||||
'sequence' : {
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
'shell' : {},
|
||||
'slice' : {},
|
||||
'slice-color' : {
|
||||
'extra_sources' : ['memchunks.c'],
|
||||
},
|
||||
'slice-concurrent' : {},
|
||||
'slist' : {},
|
||||
'sort' : {},
|
||||
'spawn-multithreaded' : {},
|
||||
'spawn-path-search' : {},
|
||||
'spawn-singlethread' : {},
|
||||
'strfuncs' : {},
|
||||
'string' : {},
|
||||
'strvbuilder' : {},
|
||||
'testing' : {},
|
||||
'test-printf' : {},
|
||||
'thread' : {},
|
||||
'thread-pool' : {},
|
||||
'timeout' : {},
|
||||
'timer' : {},
|
||||
'tree' : {},
|
||||
'types' : {},
|
||||
'utf8-performance' : {},
|
||||
'utf8-pointer' : {},
|
||||
'utf8-validate' : {},
|
||||
'utf8-misc' : {},
|
||||
'utils' : {},
|
||||
'unicode' : {},
|
||||
'uri' : {},
|
||||
'1bit-mutex' : {},
|
||||
'1bit-emufutex' : {
|
||||
'source' : '1bit-mutex.c',
|
||||
'c_args' : ['-DTEST_EMULATED_FUTEX'],
|
||||
'install' : false,
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
'642026' : {
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
'642026-ec' : {
|
||||
'source' : '642026.c',
|
||||
'c_args' : ['-DG_ERRORCHECK_MUTEXES'],
|
||||
'suite' : ['slow'],
|
||||
},
|
||||
}
|
||||
|
||||
if have_cxx
|
||||
glib_tests += {
|
||||
'cxx' : {
|
||||
'source' : ['cxx.cpp'],
|
||||
}
|
||||
}
|
||||
endif
|
||||
|
||||
if cc.get_id() != 'msvc'
|
||||
glib_tests += {'autoptr' : {}}
|
||||
endif
|
||||
|
||||
if glib_conf.has('HAVE_EVENTFD')
|
||||
glib_tests += {
|
||||
'gwakeup-fallback' : {
|
||||
'source' : ['gwakeuptest.c', '../gwakeup.c'],
|
||||
'c_args' : ['-DTEST_EVENTFD_FALLBACK'],
|
||||
'install' : false,
|
||||
},
|
||||
}
|
||||
endif
|
||||
|
||||
if host_machine.system() == 'windows'
|
||||
if winsock2.found()
|
||||
glib_tests += {
|
||||
'gpoll' : {
|
||||
'dependencies' : [winsock2],
|
||||
},
|
||||
}
|
||||
endif
|
||||
glib_tests += {
|
||||
'win32' : {},
|
||||
}
|
||||
else
|
||||
glib_tests += {
|
||||
'include' : {},
|
||||
'unix' : {},
|
||||
}
|
||||
if have_rtld_next
|
||||
glib_tests += {
|
||||
'gutils-user-database' : {
|
||||
'depends' : [
|
||||
shared_library('getpwuid-preload',
|
||||
'getpwuid-preload.c',
|
||||
name_prefix : '',
|
||||
dependencies: libdl_dep,
|
||||
install_dir : installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
),
|
||||
],
|
||||
'env' : {
|
||||
'LD_PRELOAD': '@0@/getpwuid-preload.so'.format(meson.current_build_dir()),
|
||||
},
|
||||
'installed_tests_env' : {
|
||||
'LD_PRELOAD': '@0@/getpwuid-preload.so'.format(installed_tests_execdir),
|
||||
},
|
||||
},
|
||||
}
|
||||
endif
|
||||
endif
|
||||
|
||||
if installed_tests_enabled
|
||||
install_data(
|
||||
'4096-random-bytes',
|
||||
'casefold.txt',
|
||||
'casemap.txt',
|
||||
'echo-script',
|
||||
'echo-script.bat',
|
||||
'empty',
|
||||
'iochannel-test-infile',
|
||||
'keyfile.c',
|
||||
'keyfiletest.ini',
|
||||
'pages.ini',
|
||||
install_dir : installed_tests_execdir,
|
||||
)
|
||||
install_subdir('bookmarks', install_dir : installed_tests_execdir)
|
||||
install_subdir('markups', install_dir : installed_tests_execdir)
|
||||
install_subdir('time-zones', install_dir : installed_tests_execdir)
|
||||
endif
|
||||
|
||||
# Not entirely random of course, but at least it changes over time
|
||||
random_number = minor_version + meson.version().split('.').get(1).to_int()
|
||||
|
||||
test_env = environment()
|
||||
test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
|
||||
test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
|
||||
test_env.set('G_DEBUG', 'gc-friendly')
|
||||
test_env.set('MALLOC_CHECK_', '2')
|
||||
test_env.set('MALLOC_PERTURB_', '@0@'.format(random_number % 256))
|
||||
|
||||
test_deps = [libm, thread_dep, libglib_dep]
|
||||
test_cargs = ['-DG_LOG_DOMAIN="GLib"', '-UG_DISABLE_ASSERT']
|
||||
|
||||
foreach test_name, extra_args : glib_tests
|
||||
source = extra_args.get('source', test_name + '.c')
|
||||
install = installed_tests_enabled and extra_args.get('install', true)
|
||||
|
||||
if install
|
||||
test_conf = configuration_data()
|
||||
test_conf.set('installed_tests_dir', installed_tests_execdir)
|
||||
test_conf.set('program', test_name)
|
||||
test_conf.set('env', '')
|
||||
configure_file(
|
||||
input: installed_tests_template_tap,
|
||||
output: test_name + '.test',
|
||||
install_dir: installed_tests_metadir,
|
||||
configuration: test_conf
|
||||
)
|
||||
endif
|
||||
|
||||
exe = executable(test_name, source,
|
||||
c_args : test_cargs + extra_args.get('c_args', []),
|
||||
link_args : extra_args.get('link_args', []),
|
||||
dependencies : test_deps + extra_args.get('dependencies', []),
|
||||
install_dir: installed_tests_execdir,
|
||||
install: install,
|
||||
)
|
||||
|
||||
suite = ['glib'] + extra_args.get('suite', [])
|
||||
timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
|
||||
test(test_name, exe,
|
||||
env : test_env,
|
||||
timeout : timeout,
|
||||
suite : suite,
|
||||
should_fail : extra_args.get('should_fail', false),
|
||||
)
|
||||
endforeach
|
||||
|
||||
executable('spawn-path-search-helper', 'spawn-path-search-helper.c',
|
||||
c_args : test_cargs,
|
||||
dependencies : test_deps,
|
||||
install_dir: installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
)
|
||||
|
||||
executable('spawn-test-helper', 'spawn-test-helper.c',
|
||||
c_args : test_cargs,
|
||||
dependencies : test_deps,
|
||||
install_dir: installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
)
|
||||
|
||||
# test-spawn-echo helper binary required by the spawn tests above
|
||||
executable('test-spawn-echo', 'test-spawn-echo.c',
|
||||
c_args : test_cargs,
|
||||
dependencies : test_deps,
|
||||
install_dir: installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
)
|
||||
|
||||
if host_machine.system() == 'windows'
|
||||
# test-spawn-sleep helper binary required by the spawn tests above
|
||||
executable('test-spawn-sleep', 'test-spawn-sleep.c',
|
||||
c_args : test_cargs,
|
||||
dependencies : test_deps,
|
||||
install_dir: installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
)
|
||||
endif
|
||||
|
||||
executable('testing-helper', 'testing-helper.c',
|
||||
c_args : test_cargs,
|
||||
dependencies : test_deps,
|
||||
install_dir: installed_tests_execdir,
|
||||
install: installed_tests_enabled,
|
||||
)
|
||||
|
||||
# some testing of gtester functionality
|
||||
if not meson.is_cross_build() and host_system != 'windows'
|
||||
xmllint = find_program('xmllint', required: false)
|
||||
if xmllint.found()
|
||||
tmpsample_xml = custom_target('tmpsample.xml',
|
||||
output : 'tmpsample.xml',
|
||||
command : [ gtester, '-k', '--quiet', '--i-know-this-is-deprecated', '-o', '@OUTPUT@',
|
||||
'--test-arg=--gtester-selftest', gtester])
|
||||
|
||||
test('gtester-xmllint-check', xmllint,
|
||||
args : ['--noout', tmpsample_xml],
|
||||
env : test_env,
|
||||
suite : ['glib'],
|
||||
)
|
||||
endif
|
||||
endif
|
||||
|
||||
subdir('path-test-subdir')
|
||||
Loading…
Add table
Add a link
Reference in a new issue