mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	If we don't have the capability to ptrace, we are probably running inside a container, not the debugger. Check this first so we don't disable forking mode. Make this conditional on libcap - where libcap is not available always assume we *do not* have a debugger attached. This is easier than telling everyone who runs the tests in a confined system to install libcap. Fixes #1285
		
			
				
	
	
		
			97 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
pwtest_sources = [
 | 
						|
  'pwtest.h',
 | 
						|
  'pwtest-implementation.h',
 | 
						|
  'pwtest.c',
 | 
						|
  'pwtest-compat.c',
 | 
						|
]
 | 
						|
 | 
						|
pwtest_deps = [
 | 
						|
  pipewire_dep,
 | 
						|
  mathlib,
 | 
						|
  dl_lib,
 | 
						|
  cap_lib,
 | 
						|
]
 | 
						|
 | 
						|
pwtest_c_args = [
 | 
						|
  '-DBUILD_ROOT="@0@"'.format(meson.build_root()),
 | 
						|
  '-DSOURCE_ROOT="@0@"'.format(meson.source_root()),
 | 
						|
]
 | 
						|
 | 
						|
pwtest_inc = [
 | 
						|
  spa_inc,
 | 
						|
  pipewire_inc,
 | 
						|
  configinc,
 | 
						|
  includes_inc,
 | 
						|
]
 | 
						|
 | 
						|
pwtest_lib = static_library(
 | 
						|
  'pwtest',
 | 
						|
  pwtest_sources,
 | 
						|
  c_args: pwtest_c_args,
 | 
						|
  dependencies: pwtest_deps,
 | 
						|
  include_directories: pwtest_inc,
 | 
						|
)
 | 
						|
 | 
						|
test('test pwtest',
 | 
						|
    executable('test-pwtest',
 | 
						|
               'test-pwtest.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
 | 
						|
# Compilation only, this is the example file for how pwtest works and most
 | 
						|
# of its tests will fail.
 | 
						|
executable('test-example',
 | 
						|
  'test-example.c',
 | 
						|
  include_directories: pwtest_inc,
 | 
						|
  link_with: pwtest_lib)
 | 
						|
 | 
						|
test('test pipewire utils',
 | 
						|
    executable('test-pw-utils',
 | 
						|
               'test-properties.c',
 | 
						|
               'test-array.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
test('test lib',
 | 
						|
    executable('test-lib',
 | 
						|
               'test-lib.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
test('test context',
 | 
						|
    executable('test-context',
 | 
						|
               'test-context.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
test('test support',
 | 
						|
    executable('test-support',
 | 
						|
               'test-support.c',
 | 
						|
               'test-logger.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
test('test spa',
 | 
						|
    executable('test-spa',
 | 
						|
               'test-spa-buffer.c',
 | 
						|
               'test-spa-json.c',
 | 
						|
               'test-spa-utils.c',
 | 
						|
               'test-spa-node.c',
 | 
						|
               'test-spa-pod.c',
 | 
						|
               include_directories: pwtest_inc,
 | 
						|
               link_with: pwtest_lib)
 | 
						|
)
 | 
						|
 | 
						|
valgrind = find_program('valgrind', required: false)
 | 
						|
if valgrind.found()
 | 
						|
  valgrind_env = environment()
 | 
						|
  add_test_setup('valgrind',
 | 
						|
                 exe_wrapper : [ valgrind,
 | 
						|
                   '--leak-check=full',
 | 
						|
                   '--gen-suppressions=all',
 | 
						|
                   '--error-exitcode=3',
 | 
						|
                   ],
 | 
						|
                 env :  valgrind_env,
 | 
						|
                 timeout_multiplier : 3)
 | 
						|
endif
 |