The Meson Build System http://mesonbuild.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
865 B

project('gui_app_test', 'c')
#
# test that linking a Windows console applications with the main function in a
# library is correctly instructed which entrypoint function to look for
#
console_lib = static_library('main', 'console_prog.c')
executable('console', 'dummy.c', link_with: console_lib, gui_app: false)
#
# also verify that the correct subsystem is set by executable(gui_app:)
#
gui_prog = executable('gui_prog', 'gui_prog.c', gui_app: true)
console_prog = executable('console_prog', 'console_prog.c', gui_app: false)
tester = find_program('gui_app_tester.py')
tool = find_program('objdump', 'dumpbin', required: false)
# TODO: when 'llvm-objdump -f' emits the subsystem type, we could use that also
if tool.found()
test('is_gui', tester, args: [tool.path(), gui_prog, '2'])
test('not_gui', tester, args: [tool.path(), console_prog, '3'])
endif