if (HB_HAVE_GLIB AND NOT HB_DISABLE_TEST_PROGS)
  file (READ "${CMAKE_CURRENT_SOURCE_DIR}/Makefile.am" MAKEFILEAM)
  extract_make_variable (TEST_PROGS ${MAKEFILEAM})

  list (APPEND TEST_PROGS
    test-ot-tag
    test-c
    test-cplusplus
  )

  if (HB_HAVE_FREETYPE)
    list (APPEND TEST_PROGS test-ot-math)
  endif ()

  foreach (test_name IN ITEMS ${TEST_PROGS})
    if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.c)
      add_executable (${test_name} ${test_name}.c)
    elseif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${test_name}.cc)
      add_executable (${test_name} ${test_name}.cc)
    else ()
      message (FATAL_ERROR "No source file found for test ${test_name}")
    endif ()
    target_link_libraries (${test_name} harfbuzz harfbuzz-subset)
    add_test (${test_name} ${test_name})
  endforeach ()
  set_tests_properties (${TEST_PROGS} PROPERTIES ENVIRONMENT
    "G_TEST_SRCDIR=${CMAKE_CURRENT_SOURCE_DIR};G_TEST_BUILDDIR=${CMAKE_CURRENT_BINARY_DIR}"
  )
endif ()
