Heat the oil in a large, heavy-bottomed saucepan. add the onion, garlic and salt, and fry until translucent. Add the spices, cook for a further minute or two, then stir in the tomatoes, tomato puree and half a pint of water, and cook on a medium heat for 10-15 minutes.