European leaders reached a deal on migration in the early hours of this morning after tense and lengthy talks, but the pledges made to strengthen borders were vague and German Chancellor Angela Merkel conceded differences remained.
Under the agreement, reached after nine hours of talks, EU leaders agreed to share out refugees arriving in the bloc on a voluntary basis and create "controlled centres" inside the European Union to process asylum requests.
They also agreed to share responsibility for migrants rescued at sea, a key demand of Italy's new Prime Minister Giuseppe Conte.
"Italy is not alone anymore," he said.
Mr Conte, whose government includes the anti-establishment 5-Star movement and far-right League, had earlier refused to endorse a summit text on security and trade until other leaders had pledged to help Italy manage Mediterranean arrivals.
The Medecins Sans Frontiers charity has denounced the deal, saying it appeared to be aimed at blocking even the most vulnerable people outside of the bloc.
"The only thing European states appear to have agreed on is to block people at the doorstep of Europe regardless of how vulnerable they are, or what horrors they are escaping - and to demonise non-governmental search and rescue operations," MSF's emergencies chief Karline Kleijer said in a statement.
The Brussels meeting underscored how Europe's 2015 spike in immigration continues to cause tensions within the bloc, despite a sharp drop in arrivals of people fleeing conflict and economic hardship in the Middle East and Africa.
It took place in an atmosphere of political crisis, with German Chancellor Angela Merkel under intense political pressure at home to take a firmer stance on migration.
Mrs Merkel, speaking to reporters earlier this morning, sought to put a positive spin on the result, saying it was a good signal that leaders had been able to agree a common text on the migration issue.
But she acknowledged that the bloc still had "a lot of work to do to bridge the different views."
French President Emmanuel Macron, who has sharply criticised Italy for refusing to allow a migrant rescue ship into its ports, said European cooperation had "won the day".
Taoiseach Leo Varadkar declined to condemn Hungarian Prime Minister Viktor Orban for allegedly racist and xenophobic comments about migrants, saying that the European People's Party, of which he and Mr Orban are members, was a broad church and that Hungarians had a different attitude to migration.
"I don't agree with Viktor Orban's views on migration," the Taoiseach told a news conference.
"I don't agree with him on a lot of things. But you have to respect the fact that other countries come from a different perspective."
He added: "We need to be sensitive to the fact that European public opinion does involve people who have real fears about migration. We need to be honest about that."
Mr Varadkar accused some non-government organisations of helping people smugglers on the Mediterranean, but he did not identify them.
"All NGOs aren't the same. There are some NGOs who are acting in the Mediterranean and who are acting very responsibly, and are rescuing migrants from the sea who otherwise would die.
"There are other NGOs who, even on Twitter in the past couple of days, are advertising their position, we're here to pick people up.
"We found one vessel whose captain is in prison, was falsely registered - some of these NGOs are doing great work. Some of them aren't up to much good, quite frankly."
Mr Varadkar said there should be a degree of "burden-sharing" in the transfer of migrants to other European countries.
He added: "The 28 members agreed a compromise framework on managing migration largely based on the principle that this is a European problem and one that we need to work together on.
"We committed to working with African countries, supporting them to build up governance, to build up security and economic opportunity, providing an extra 500 million (euro) to the European Trust Fund for Africa.
"We took the view that we needed to have a degree of ... burden-sharing on the transfer of migrants to countries and Ireland has already agreed to accept some from that as well."
In a final statement full of convoluted language designed to satisfy the divergent views, the leaders agreed to restrict migrant moves within the bloc but made clear virtually all of their pledges would be carried out on a "voluntary basis" by member states.
They also agreed to tighten their external border and increase financing for Turkey, Morocco and other North African states to prevent migration to Europe.
It was unclear whether the deal would be enough to appease Mrs Merkel's coalition partner, the Christian Social Union (CSU),which has threatened to shut Bavaria's border to migrants.
That could trigger the collapse of her three-month-old government as well as the EU's Schengen zone of free travel.
Diplomats described a tense meeting with small groups of leaders huddled together in a desperate bid to break the deadlock.
Early in the evening, Ms Merkel and Mr Conte set aside 45 minutes for a chat, only to break it off after 20 minutes when the Italian leader rejected the German leader's overtures, according to diplomats.
Before the dinner clash over migration started, Mr Conte refused to endorse a summit text on security and trade until other leaders agreed to his demands to help Italy manage the Mediterranean arrivals.
That forced the summit chairman Donald Tusk and European Commission President Jean-Claude Juncker to cancel their pre-planned news conference.
Fewer than 45,000 migrants have made it to the European Union this year, according to United Nations data, a sharp drop from the wave of 2015 when many thousands were entering on a daily basis.
But the political tremors are still being felt across Europe, with populist, anti-immigrant parties on the rise in many countries.
Ex-communist easterners led by Poland and Hungary are still refusing to accept a share of the new arrivals to alleviate the burden on countries like Italy and Greece.
'Challenges' in migrants coming to Ireland
Minister of State for European Affairs Helen McEntee said there have been "challenges" in migrants coming to Ireland.
Ireland has taken in around half of the 4,000 migrants it vowed to accept by 2017.
Speaking on RTÉ's Morning Ireland, Minister McEntee said that we need "to make sure we take our fair share of migrants".
She said she expects another 700 mrigants to come to Ireland before the end of the year and said the Government will do "what we can" to provide support for them.
She said: "We have about 1,850 out of the 4,000. There have been some challenges in terms of the movement of people and them coming on to Ireland. We are absolutely committed to that number of 4,000. I think in the next few months we will see another figure of about 700 come in".
Additional Reporting: Tony Connelly