diff options
author | Jonathan Gray <jsg@cvs.openbsd.org> | 2019-01-29 10:47:46 +0000 |
---|---|---|
committer | Jonathan Gray <jsg@cvs.openbsd.org> | 2019-01-29 10:47:46 +0000 |
commit | fa7f9e7cb699d37993af73312444bcc894eda0e0 (patch) | |
tree | e08004e8b9cde92ffdab23dc1f4cd6ad09fe19fb /lib/mesa | |
parent | 4b777969f6add198dc942428a456e28e2b3aab40 (diff) |
Import Mesa 18.3.2
Diffstat (limited to 'lib/mesa')
-rw-r--r-- | lib/mesa/src/util/meson.build | 299 |
1 files changed, 24 insertions, 275 deletions
diff --git a/lib/mesa/src/util/meson.build b/lib/mesa/src/util/meson.build index f377b34da..156621aff 100644 --- a/lib/mesa/src/util/meson.build +++ b/lib/mesa/src/util/meson.build @@ -20,72 +20,41 @@ inc_util = include_directories('.') -subdir('format') +subdir('xmlpool') files_mesa_util = files( - 'anon_file.h', - 'anon_file.c', 'bigmath.h', 'bitscan.c', 'bitscan.h', 'bitset.h', - 'blob.c', - 'blob.h', 'build_id.c', 'build_id.h', - 'cnd_monotonic.h', - 'compiler.h', - 'compress.c', - 'compress.h', 'crc32.c', 'crc32.h', - 'dag.c', 'debug.c', 'debug.h', 'disk_cache.c', 'disk_cache.h', - 'disk_cache_os.c', - 'disk_cache_os.h', - 'double.c', - 'double.h', - 'enum_operators.h', 'fast_idiv_by_const.c', 'fast_idiv_by_const.h', 'format_r11g11b10f.h', 'format_rgb9e5.h', 'format_srgb.h', - 'fossilize_db.c', - 'fossilize_db.h', 'futex.h', 'half_float.c', 'half_float.h', 'hash_table.c', 'hash_table.h', - 'u_idalloc.c', - 'u_idalloc.h', 'list.h', - 'log.c', 'macros.h', - 'memstream.c', - 'memstream.h', 'mesa-sha1.c', 'mesa-sha1.h', 'os_time.c', 'os_time.h', - 'os_file.c', - 'os_memory_fd.c', 'os_misc.c', 'os_misc.h', - 'os_socket.c', - 'os_socket.h', - 'perf/u_trace.h', - 'perf/u_trace.c', - 'perf/u_trace_priv.h', 'u_process.c', 'u_process.h', - 'u_qsort.cpp', - 'u_qsort.h', - 'rwlock.h', 'sha1/sha1.c', 'sha1/sha1.h', 'ralloc.c', @@ -105,28 +74,16 @@ files_mesa_util = files( 'simple_mtx.h', 'slab.c', 'slab.h', - 'softfloat.c', - 'softfloat.h', - 'sparse_array.c', - 'sparse_array.h', 'string_buffer.c', 'string_buffer.h', 'strndup.h', 'strtod.c', 'strtod.h', 'texcompress_rgtc_tmp.h', - 'timespec.h', 'u_atomic.c', 'u_atomic.h', - 'u_debug_describe.c', - 'u_debug_describe.h', - 'u_debug_refcnt.c', - 'u_debug_refcnt.h', 'u_dynarray.h', 'u_endian.h', - 'u_fifo.h', - 'u_hash_table.c', - 'u_hash_table.h', 'u_queue.c', 'u_queue.h', 'u_string.h', @@ -135,51 +92,21 @@ files_mesa_util = files( 'u_vector.h', 'u_math.c', 'u_math.h', - 'u_memset.h', - 'u_mm.c', - 'u_mm.h', 'u_debug.c', 'u_debug.h', - 'u_debug_memory.c', 'u_cpu_detect.c', 'u_cpu_detect.h', - 'u_printf.cpp', - 'u_printf.h', 'vma.c', 'vma.h', - 'xxhash.h', ) -files_drirc = files('00-mesa-defaults.conf') - -install_data(files_drirc, install_dir : join_paths(get_option('datadir'), 'drirc.d')) - -if with_tests - prog_xmllint = find_program('xmllint', required : false, native : true) - if prog_xmllint.found() - test( - 'drirc xml validation', - prog_xmllint, - args : ['--noout', '--valid', files_drirc], - suite : ['util'], - ) - endif -endif +install_data('00-mesa-defaults.conf', install_dir : join_paths(get_option('datadir'), 'drirc.d')) files_xmlconfig = files( 'xmlconfig.c', 'xmlconfig.h', ) -files_xmlconfig += custom_target( - 'driconf_static.h', - input: ['driconf_static.py', '00-mesa-defaults.conf'], - output: 'driconf_static.h', - command: [ - prog_python, '@INPUT0@', '@INPUT1@', '@OUTPUT@' - ], -) - format_srgb = custom_target( 'format_srgb', input : ['format_srgb.py'], @@ -188,73 +115,23 @@ format_srgb = custom_target( capture : true, ) -deps_for_libmesa_util = [ - dep_zlib, - dep_clock, - dep_thread, - dep_atomic, - dep_m, - dep_valgrind, - dep_zstd, - dep_dl, - dep_unwind, -] - -if with_platform_android - deps_for_libmesa_util += dep_android - files_debug_stack = files('u_debug_stack_android.cpp') - else - files_debug_stack = files( - 'u_debug_stack.c', - 'u_debug_symbol.c', - 'u_debug_symbol.h', - ) -endif - -if with_platform_haiku - deps_for_libmesa_util += dep_network -endif - -if with_perfetto - files_mesa_util += files( - 'u_perfetto.cc', - 'u_perfetto.h', - ) - deps_for_libmesa_util += dep_perfetto -endif - -u_trace_py = files('perf/u_trace.py') - -_libmesa_util = static_library( +libmesa_util = static_library( 'mesa_util', - [files_mesa_util, files_debug_stack, format_srgb], - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : deps_for_libmesa_util, - link_with: libmesa_format, - c_args : [c_msvc_compat_args], - gnu_symbol_visibility : 'hidden', + [files_mesa_util, format_srgb], + include_directories : inc_common, + dependencies : [dep_zlib, dep_clock, dep_thread, dep_atomic, dep_m], + c_args : [c_msvc_compat_args, c_vis_args], build_by_default : false ) -idep_mesautil = declare_dependency( - link_with : _libmesa_util, - include_directories : [inc_util, inc_gallium], - dependencies : [dep_zlib, dep_clock, dep_thread, dep_atomic, dep_m, dep_valgrind], -) - -xmlconfig_deps = [] -if not (with_platform_android or with_platform_windows) - xmlconfig_deps += dep_expat -endif -xmlconfig_deps += dep_regex - -_libxmlconfig = static_library( +libxmlconfig = static_library( 'xmlconfig', files_xmlconfig, - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : [idep_mesautil, dep_m, xmlconfig_deps], + include_directories : inc_common, + link_with : libmesa_util, + dependencies : [dep_expat, dep_m], c_args : [ - c_msvc_compat_args, + c_msvc_compat_args, c_vis_args, '-DSYSCONFDIR="@0@"'.format( join_paths(get_option('prefix'), get_option('sysconfdir')) ), @@ -262,71 +139,19 @@ _libxmlconfig = static_library( join_paths(get_option('prefix'), get_option('datadir')) ), ], - gnu_symbol_visibility : 'hidden', build_by_default : false, ) -idep_xmlconfig = declare_dependency( - dependencies : xmlconfig_deps, - link_with : _libxmlconfig, -) - -files_xxd = files('xxd.py') - if with_tests - # DRI_CONF macros use designated initializers (required for union - # initializaiton), so we need c++2a since gtest forces us to use c++ - if host_machine.system() != 'windows' and cpp.has_argument('-std=c++2a') - test('xmlconfig', - executable('xmlconfig_test', - files('tests/xmlconfig.cpp'), - include_directories : [inc_include, inc_src], - dependencies : [idep_mesautil, idep_xmlconfig, idep_gtest], - override_options : ['cpp_std=c++2a'], - cpp_args: ['-Wno-write-strings'] - ), - suite : ['util'], - env: ['HOME=' + join_paths(meson.current_source_dir(), - 'tests', 'drirc_home'), - 'DRIRC_CONFIGDIR=' + join_paths(meson.current_source_dir(), - 'tests', 'drirc_configdir')] - ) - endif - test( 'u_atomic', executable( 'u_atomic_test', files('u_atomic_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : idep_mesautil, + include_directories : inc_common, + link_with : libmesa_util, c_args : [c_msvc_compat_args], - ), - suite : ['util'], - ) - - test( - 'blob', - executable( - 'blob_test', - files('blob_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : idep_mesautil, - c_args : [c_msvc_compat_args], - ), - suite : ['util'], - ) - - test( - 'rb_tree', - executable( - 'rb_tree_test', - files('rb_tree_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : idep_mesautil, - c_args : [c_msvc_compat_args], - ), - suite : ['util'], + ) ) test( @@ -334,102 +159,26 @@ if with_tests executable( 'roundeven_test', files('roundeven_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], + include_directories : inc_common, c_args : [c_msvc_compat_args], dependencies : [dep_m], - ), - suite : ['util'], - should_fail : meson.get_cross_property('xfail', '').contains('roundeven'), - ) - - # FIXME: this test crashes on windows - if host_machine.system() != 'windows' - test( - 'mesa-sha1', - executable( - 'mesa-sha1_test', - files('mesa-sha1_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - link_with : _libmesa_util, - c_args : [c_msvc_compat_args], - ), - suite : ['util'], - ) - endif - - foreach t: ['bitset', 'register_allocate', 'u_debug_stack', 'u_qsort'] - test( - t, - executable( - t + '_test', - files(t + '_test.cpp'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : [idep_mesautil, idep_gtest], - ), - suite : ['util'], ) - endforeach - - process_test_exe = executable( - 'process_test', - files('process_test.c'), - include_directories : [inc_include, inc_src, inc_mapi, inc_mesa, inc_gallium, inc_gallium_aux], - dependencies : idep_mesautil, - c_args : [c_msvc_compat_args], ) - if (host_machine.system() == 'windows' and build_machine.system() != 'windows') - # This conversion is only required on mingw crosscompilers, otherwise we hit at least one of these issues - # https://gitlab.freedesktop.org/mesa/mesa/-/issues/2690 - # https://gitlab.freedesktop.org/mesa/mesa/-/issues/2788 - prog_winepath = find_program('winepath') - process_test_exe_full_path = run_command( - prog_winepath, '-w', process_test_exe.full_path() - ).stdout().strip() - else - process_test_exe_full_path = process_test_exe.full_path() - endif test( - 'process', - process_test_exe, - suite : ['util'], - env: ['BUILD_FULL_PATH='+process_test_exe_full_path] - ) - - test('int_min_max', - executable('int_min_max_test', - files('tests/int_min_max.cpp'), - include_directories : [inc_include, inc_src], - dependencies : [idep_mesautil, idep_gtest], - ), - suite : ['util'], - ) - - test( - 'dag', + 'mesa-sha1', executable( - 'dag_test', - 'tests/dag_test.cpp', - dependencies : [idep_mesautil, idep_gtest], - include_directories : [inc_include, inc_src], - ), - suite : ['util'], + 'mesa-sha1_test', + files('mesa-sha1_test.c'), + include_directories : inc_common, + link_with : libmesa_util, + c_args : [c_msvc_compat_args], + ) ) - subdir('tests/cache') subdir('tests/fast_idiv_by_const') - subdir('tests/fast_urem_by_const') subdir('tests/hash_table') - if not (host_machine.system() == 'windows' and cc.get_id() == 'gcc') - # FIXME: These tests fail with mingw, but not with msvc. - subdir('tests/string_buffer') - endif - if cc.has_header('sys/time.h') # MinGW has this, but Vanilla windows doesn't - subdir('tests/timespec') - endif + subdir('tests/string_buffer') subdir('tests/vma') subdir('tests/set') - subdir('tests/sparse_array') - subdir('tests/format') - subdir('tests/vector') endif |