get_property(_ADD_MY_TEST GLOBAL PROPERTY _ADD_MY_TEST)
IF (NOT _ADD_MY_TEST)

  # set that we have defined GENERATE_CCCC
  set_property(GLOBAL PROPERTY _ADD_MY_TEST "YES")


  FUNCTION(ADD_MY_TEST)
    CMAKE_PARSE_ARGUMENTS(ARG  "" "TEST" "SOURCES;LIBS" ${ARGN})
    get_property(_mytests GLOBAL PROPERTY _mytests)

    list(APPEND _mytests "${ARG_TEST}")

    add_executable(${ARG_TEST} ${ARG_SOURCES})
    target_link_libraries(${ARG_TEST} ${ARG_LIBS})
    add_test(${ARG_TEST} ${ARG_TEST})

    set_property(GLOBAL PROPERTY _mytests ${_mytests})
  ENDFUNCTION()


ENDIF()
