European Union leaders have pledged at least $1.1bn to UN agencies to help refugees in the Middle East and agreed on closer cooperation to stem the flow of refugee into Europe at a summit described as less tense than feared after weeks of feuding.
Chairman Donald Tusk said the emergency meeting, which ended early on Thursday after seven hours of talks in Brussels, was "really excellent, for sure much better than we expected".
Tusk said he had heard "very substantial and energetic" exchanges between the Austrian and Hungarian leaders, whose common border was among those affected by refugees this summer, but not the mutual recrimination that has threatened to tear apart the bloc's cherished passport-free Schengen zone.
"Today's meeting and this atmosphere are a very positive sign," said European Council President Tusk, a former prime minister of Poland.
"It's quite a symbolic moment for me as it's clear we have stopped this risky blame game."
German Chancellor Angela Merkel, criticised by some eastern neighbours for what they saw as actions that have fuelled the influx of people trying to reach Germany, voiced satisfaction: "We know that the problem is not solved with the decision taken. But we have taken one of many necessary steps.
"I got the feeling that we want to tackle this task together."
'Spirit of solidarity'
Held at short notice after governments fell out badly over a scheme to share out responsibilities for asylum-seekers around the EU, the summit carried political rather than legal weight.
A joint statement read: "We can only manage this challenge by working together in a spirit of solidarity and responsibility."
Proposals on Wednesday included deploying more security personnel to tighten European border controls, donating at least $1.1bn to international aid agencies to help refugees in camps near conflict zones and boosting support for Lebanon, Turkey and Jordan to help them cope with the millions fleeing the war in Syria.
Tusk had earlier urged leaders gathering for the summit to stop clashing over a deal to share out 120,000 refugees and take urgent action to secure the bloc's borders in the face of "millions" of refugees.
"The conflicts in the Middle East, especially in Syria and Iraq, will not end anytime soon," he said.
"This means today we're talking about millions of potential refugees trying to reach Europe, not thousands."
Related: EU leaders to gather for emergency refugee summit
On Tuesday, the Czech Republic, Slovakia, Hungary and Romania voted against a plan adopted to relocate 120,000 asylum-seekers to other member states over the next two years to ease the strain on Italy and Greece, which are on the front line of the crisis.
European officials said the vote was binding on all countries, including those that voted against it.
Slovak Prime Minister Robert Fico said his country will try to block the deal in an EU court. "We won't implement this decision because we think it can't work," Fico said.
Around half a million people have fled to Europe so far this year in search of sanctuary or jobs. As numbers swell, nations have tightened border security.
Hungary has put up a razor-wire fence along its border with Serbia and is close to completing a similar fence separating it from fellow EU member Croatia.
Hungary's Prime Minister Viktor Orban said the EU should come to Greece's aid in protecting the bloc's most porous border.
"If the Greeks are not able to defend their own borders, we should ask kindly, because Greece is a sovereign country, to let other countries of the European Union defend the Greek borders," he said.
Croatia has closed its border with Serbia to all but food transports in an attempt to halt the flow of refugees.