meson.build 987 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. subdir('dep1')
  2. libsources = ['meson-sample.c', 'meson-sample.h']
  3. girlib = shared_library(
  4. 'gir_lib',
  5. sources : libsources,
  6. dependencies : [gobj, dep1_dep],
  7. install : true
  8. )
  9. girexe = executable(
  10. 'girprog',
  11. sources : 'prog.c',
  12. dependencies : [glib, gobj, gir],
  13. link_with : girlib
  14. )
  15. fake_dep = dependency('no-way-this-exists', required: false)
  16. gnome.generate_gir(
  17. girlib,
  18. sources : libsources,
  19. nsversion : '1.0',
  20. namespace : 'Meson',
  21. symbol_prefix : 'meson',
  22. identifier_prefix : 'Meson',
  23. includes : ['GObject-2.0', 'MesonDep1-1.0'],
  24. # dep1_dep pulls in dep2_dep for us
  25. dependencies : [fake_dep, dep1_dep],
  26. install : true
  27. )
  28. test('gobject introspection/c', girexe)
  29. gir_paths = ':'.join([girlib.outdir(), dep1lib.outdir(), dep2lib.outdir()])
  30. envdata = environment()
  31. envdata.append('GI_TYPELIB_PATH', gir_paths, separator : ':')
  32. envdata.append('LD_LIBRARY_PATH', gir_paths)
  33. test('gobject introspection/py', find_program('prog.py'),
  34. env : envdata)