1In a large pan, heat the oil until shimmering. Add the onions and cook over moderate heat, stirring occasionally, until the onions are wilted and just starting to brown, about 7 minutes.
2Add a generous pinch of salt and cook over moderately low heat, stirring occasionally, until the onions are soft and golden, 25 to 30 minutes.
3Add the wine and soy sauce to the casserole and cook over moderate heat, scraping up any browned bits from the bottom, until evaporated, about 3 minutes.
4Add the stock and bring to a boil. Simmer over moderately low heat, stirring occasionally, until the broth is well flavoured and slightly reduced, about 10 minutes. Season the soup with salt.
5Meanwhile, preheat the broiler. Arrange the bread on a baking sheet and top each piece with 1 tablespoon of the cheese. Broil 6 inches from the heat until the cheese is melted and just starting to brown, about 2 minutes.
6To serve, ladle the soup into bowls and top with the toast.