Assumption that greentea test file is always named main.cpp is
incorrect. Updated mbed_greentea_add_test() macro to make TEST_SOURCES
parameter compulsory, which is used to specify greentea test
file(s). This allows tests to use C, or have a different name.
Therefore also updated all pre-existing greentea test CMake files to
explicity add main.cpp to TEST_SOURCES.
CMakeLists.txt file in /hal/tests/TESTS/mbed_hal_fpga_ci_test_shield
directory was non-functional as it used the greentea_add_test macro,
which expects a main.cpp in current directory, but no main.cpp exists
there. I checked with @rajkan01 who confirmed that this CMake file is
serving no purpose and is there erroneously. All tests in subdirectories
of this directory have their own CMakeLists.txt that successfully build
them.