project('linkcustom', 'c')

# This would require passing the static linker to the build script or having
# it detect it by itself. I'm too lazy to implement it now and it is not
# really needed for testing that custom targets work. It is the responsibility
# of the custom target to produce things in the correct format.
assert(not meson.is_cross_build(),
       'MESON_SKIP_TEST cross checking not implemented.')

cc = meson.get_compiler('c')
genprog = find_program('generate_conflicting_stlibs.py')

clib = custom_target('linkcustom',
  output: ['libflob_1.a', 'libflob_2.a'],
  command: [genprog,
            '-o', '@OUTPUT@',
            '--private-dir', '@PRIVATE_DIR@'] + cc.cmd_array())

clib_2 = clib[1]

exe = executable('prog', 'prog.c', link_with: clib_2)
test('linkcustom', exe)

d = declare_dependency(link_with: clib_2)

exe2 = executable('prog2', 'prog.c', dependencies: d)
test('linkcustom2', exe2)

# Link whole tests

if meson.backend() == 'xcode'
    message('Xcode does not support link whole so skipping.')
    subdir_done()
endif

exe3 = executable('prog3', 'prog.c', link_whole: clib_2)
test('linkwhole', exe)

d2 = declare_dependency(link_whole: clib_2)

exe4 = executable('prog4', 'prog.c', dependencies: d2)
test('linkwhole2', exe2)
