President Donald Trump

President Donald Trump will recognize Jerusalem as Israel's capital Wednesday, upending decades of careful US policy and ignoring dire warnings from allies across the Middle East and the world.

A senior administration official said Trump would make the landmark and keenly watched announcement at 1 pm (1800 GMT) from the White House.

"He will say that that the United States government recognizes that Jerusalem is the capital of Israel," a senior administration official said, speaking on condition of anonymity.

"He views this as a recognition of reality, both historic reality," the source added, "and modern reality."

Plunging further into a bitter centuries-old argument between Jews, Muslims and Christians, Trump will also order planning to begin on moving the US embassy from Tel Aviv to Jerusalem.

But he will sign a waiver to keep it in Tel Aviv for now, and perhaps for "years."

"It will take some time to find a site, to address security concerns, design a new facility, fund a new facility and build it," the official said.

Expectations of Trump's announcement have already  roiled the combustible region with allies warning of violence and Americans advised by their government to avoid Jerusalem's old city