123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- project('linker script', 'c')
- # Static map file
- mapfile = 'bob.map'
- vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile)
- l = shared_library('bob', 'bob.c', link_args : vflag, link_depends : mapfile)
- e = executable('prog', 'prog.c', link_with : l)
- test('core', e)
- # configure_file
- conf = configuration_data()
- conf.set('in', 'bobMcBob')
- m = configure_file(
- input : 'bob.map.in',
- output : 'bob-conf.map',
- configuration : conf,
- )
- vflag = '-Wl,--version-script,@0@'.format(m)
- l = shared_library('bob-conf', 'bob.c', link_args : vflag, link_depends : m)
- e = executable('prog-conf', 'prog.c', link_with : l)
- test('core', e)
- # custom_target
- python = find_program('python3')
- m = custom_target(
- 'bob-ct.map',
- command : [python, '@INPUT0@', '@INPUT1@', 'bob-ct.map'],
- input : ['copy.py', 'bob.map'],
- output : 'bob-ct.map',
- depend_files : 'bob.map',
- )
- vflag = '-Wl,--version-script,@0@'.format(m.full_path())
- l = shared_library('bob-ct', ['bob.c', m], link_args : vflag, link_depends : m)
- e = executable('prog-ct', 'prog.c', link_with : l)
- test('core', e)
- # File
- mapfile = files('bob.map')
- vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile[0])
- l = shared_library('bob-files', 'bob.c', link_args : vflag, link_depends : mapfile)
- e = executable('prog-files', 'prog.c', link_with : l)
- test('core', e)
- subdir('sub')
- # With map file in subdir
- mapfile = 'sub/foo.map'
- vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile)
- l = shared_library('bar', 'bob.c', link_args : vflag, link_depends : mapfile)
- e = executable('prog-bar', 'prog.c', link_with : l)
- test('core', e)
|