Qatar has agreed to supply Shell in Singapore with up to 18 million barrels of oil a year for five years in what the Gulf state's energy company said was its first ever five-year crude sales deal.