Place flour in a bowl; add lamb and toss to coat the pieces in flour. In a large saucepan, heat oil over high heat; sear lamb until brown on all sides. Remove lamb from the pan and set aside.
Lower heat, add onions to the pan and cook gently, stirring frequently until softened. Add garlic, cinnamon, cumin, turmeric, cloves and bay leaf; fry for one or two minutes.
Stir in carrots, lentils, pearl barley; mix well with the spices. Add lamb meat, reserved bone and raisins. Pour in beef stock and tomatoes with juice. Stir well, scraping any browned pieces from the bottom of the pan. Bring to the boil, reduce the temperature and simmer covered for 1 hour. Stir occasionally and add more water or stock if necessary.
Add potatoes, cover and simmer for another 30 minutes until potatoes are soft and lamb is tender.
Remove lamb bones, bay leaf and cloves from the stew and serve.