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.
20 lines
854 B
20 lines
854 B
5 years ago
|
project('object extraction', 'c')
|
||
|
|
||
4 years ago
|
if meson.backend() == 'xcode'
|
||
|
# Xcode gives object files unique names but only if they would clash. For example
|
||
|
# two files named lib.o instead get the following names:
|
||
|
#
|
||
|
# lib-4fbe522d8ba4cb1f1b89cc2df640a2336b92e1a5565f0a4c5a79b5b5e2969eb9.o
|
||
|
# lib-4fbe522d8ba4cb1f1b89cc2df640a2336deeff2bc2297affaadbe20f5cbfee56.o
|
||
|
#
|
||
|
# No-one has reverse engineered the naming scheme so we would access them.
|
||
|
# IF you feel up to the challenge, patches welcome.
|
||
|
error('MESON_SKIP_TEST, Xcode can not extract objs when they would have the same filename.')
|
||
|
endif
|
||
|
|
||
5 years ago
|
lib = shared_library('somelib', ['lib.c', 'src/lib.c'])
|
||
|
# Also tests that the object list is flattened properly
|
||
|
obj = lib.extract_objects(['lib.c', ['src/lib.c']])
|
||
|
exe = executable('main', 'main.c', objects: obj)
|
||
|
test('extraction', exe)
|