US President Donald Trump has said he has set a new deadline of “about 10 or 12 days” for Vladimir Putin to end the war in Ukraine.

Speaking alongside British Prime Minister Keir Starmer at his golf club in Turnberry, Scotland, Mr Trump said: “I’m going to make a new deadline of about 10 or 12 days from today.

“There’s no reason in waiting, we just don’t see any progress being made.”

The US president had earlier announced he would bring forward a deadline for Russia to agree a ceasefire with Ukraine from 50 days.

“I’m disappointed in President Putin,” Mr Trump said earlier, ahead of his meeting with Mr Starmer.

He said: “I’m going to reduce that 50 days that I gave him to a lesser number because I think I already know the answer what’s going to happen.”

Mr Trump set the 50-day deadline earlier this month.

The US president has repeatedly voiced exasperation with Putin for continuing attacks on Ukraine despite US efforts to end the war.

Before returning to the White House in January, Mr Trump, who views himself as a peacemaker, had promised to end the three-and-a-half-year-old conflict within 24 hours.

Mr Trump has threatened new sanctions on Russia and buyers of its exports unless an agreement is reached by early September.

But the president, who has also expressed annoyance with Ukrainian President Volodymyr Zelensky, has not always followed up on his tough talk about Mr Putin with action, citing what he deems a good relationship that the two men have had previously.

“We thought we had that settled numerous times, and then President Putin goes out and starts launching rockets into some city like Kyiv and kills a lot of people in a nursing home or whatever,” Mr Trump said. “And I say that’s not the way to do it.”