A powerful magnitude 7.8 earthquake has shaken the Mindanao region in the southern Philippines, and a tsunami was possible on some regional coasts.