meson.build 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. if conf.get('HAVE_GLIB', 0) == 0
  2. message('You need to have glib support enabled to run test/api tests')
  3. subdir_done()
  4. endif
  5. tests = [
  6. 'test-aat-layout.c',
  7. 'test-baseline.c',
  8. 'test-base-minmax.c',
  9. 'test-be-glyph-advance.c',
  10. 'test-be-num-glyphs.c',
  11. 'test-blob.c',
  12. 'test-buffer.c',
  13. 'test-c.c',
  14. 'test-collect-unicodes.c',
  15. 'test-cplusplus.cc',
  16. 'test-common.c',
  17. 'test-draw.c',
  18. 'test-draw-varc.c',
  19. 'test-extents.c',
  20. 'test-font.c',
  21. 'test-font-scale.c',
  22. 'test-get-table-tags.c',
  23. 'test-glyph-names.c',
  24. 'test-instance-cff2.c',
  25. 'test-map.c',
  26. 'test-object.c',
  27. 'test-ot-alternates.c',
  28. 'test-ot-collect-glyphs.c',
  29. 'test-ot-color.c',
  30. 'test-ot-face.c',
  31. 'test-ot-glyphname.c',
  32. 'test-ot-layout.c',
  33. 'test-ot-ligature-carets.c',
  34. 'test-ot-name.c',
  35. 'test-ot-meta.c',
  36. 'test-ot-metrics.c',
  37. 'test-ot-tag.c',
  38. 'test-ot-extents-cff.c',
  39. 'test-ot-metrics-tt-var.c',
  40. 'test-paint.c',
  41. 'test-subset-repacker.c',
  42. 'test-set.c',
  43. 'test-shape.c',
  44. 'test-style.c',
  45. 'test-subset.c',
  46. 'test-subset-cmap.c',
  47. 'test-subset-drop-tables.c',
  48. 'test-subset-glyf.c',
  49. 'test-subset-hdmx.c',
  50. 'test-subset-hmtx.c',
  51. 'test-subset-nameids.c',
  52. 'test-subset-os2.c',
  53. 'test-subset-post.c',
  54. 'test-subset-vmtx.c',
  55. 'test-subset-cff1.c',
  56. 'test-subset-cff2.c',
  57. 'test-subset-gvar.c',
  58. 'test-subset-hvar.c',
  59. 'test-subset-vvar.c',
  60. 'test-subset-sbix.c',
  61. 'test-subset-gpos.c',
  62. 'test-subset-colr.c',
  63. 'test-subset-cbdt.c',
  64. 'test-unicode.c',
  65. 'test-var-coords.c',
  66. 'test-version.c',
  67. ]
  68. if conf.get('HAVE_FREETYPE', 0) == 1
  69. tests += [
  70. 'test-ot-math.c',
  71. 'test-ft.c',
  72. ]
  73. endif
  74. if conf.get('HAVE_CORETEXT', 0) == 1
  75. tests += [
  76. 'test-coretext.c',
  77. ]
  78. endif
  79. if conf.get('HAVE_FREETYPE', 0) == 1 and conf.get('HAVE_PTHREAD', 0) == 1
  80. tests += 'test-multithread.c'
  81. endif
  82. # Default test running environment
  83. env = environment()
  84. env.set('MALLOC_CHECK_', '2')
  85. env.set('G_DEBUG', 'gc-friendly')
  86. env.set('G_SLICE', 'always-malloc')
  87. env.set('G_TEST_SRCDIR', meson.current_source_dir())
  88. env.set('G_TEST_BUILDDIR', meson.current_build_dir())
  89. foreach source : tests
  90. cpp_args = []
  91. test_name = source.split('.')[0]
  92. deps = [glib_dep, freetype_dep, thread_dep, libharfbuzz_dep, libharfbuzz_icu_dep]
  93. suite = ['api']
  94. if test_name.contains('-subset') or test_name.contains('-instance')
  95. deps += libharfbuzz_subset_dep
  96. suite += 'subset'
  97. endif
  98. if test_name.contains('-instance')
  99. cpp_args += '-DHB_EXPERIMENTAL_API'
  100. endif
  101. test(test_name, executable(test_name, source,
  102. cpp_args: cpp_args,
  103. include_directories: [incconfig],
  104. dependencies: deps,
  105. install: false,
  106. ), env: env, suite: suite)
  107. endforeach