How to Make It
In a medium skillet, combine the coriander seeds, mace blades, cardamom seeds, star anise and whole clove and toast over moderately high heat, shaking the skillet frequently, until fragrant, about 2 minutes. Transfer the spices to a plate to cool. Finely grind the spices with 1/2 teaspoon of cayenne.
Using a teaspoon, scoop the seeds and pulp from the tomatoes, leaving the shells intact, and add to a strainer set over a bowl; press on the seeds and pulp to extract as much juice as possible. Cut the tomato shells into 1/2-inch pieces and add them to the juice.
Heat 1 1/2 tablespoons of the olive oil in a small skillet. Add the garlic and cook over moderately low heat, stirring occasionally, until golden, about 5 minutes.
Melt the butter in a large, deep skillet. Add the onion and cook over moderately high heat, stirring frequently, until softened, 4 to 5 minutes. Add the garlic, 2 tablespoons of the ground spices and the galangal, lemon zest and brown sugar and cook, stirring, for 2 minutes. Add the rice vinegar and cook until evaporated, about 30 seconds. Add the tomatoes, water, mango and whole basil leaves and simmer over low heat for 40 minutes. Stir in the lemon juice and season with salt and cayenne; keep warm.
Season the salmon with salt and cayenne. Heat the remaining 1 tablespoon of olive oil in a large skillet. Add the salmon and cook over moderately high heat until browned on the bottom, 3 minutes. Turn and cook until browned on the second side, 2 to 3 minutes.
Pour the tomato compote into a strainer set over a bowl. Mound the compote in warmed soup plates, top with the salmon fillets and spoon the strained tomato broth around. Garnish with the shredded basil and serve.