The French parliament has approved a far-reaching reform of immigration policy.
Deputies backed the law by 367 votes to 164. Most of the opposition came from the left.
The legislation will be debated by the upper house next month.
It is the brainchild of interior minister Nicolas Sarkozy, who wants to make immigration more selective.
His proposals have been criticised by some human rights and pressure groups in France and in Africa.
But he told parliament: “We will choose who enters France in consultation with foreign countries. Dialogue with our partners is important because the future of our continent is inextricably linked with the future of Africa. That is the geographical reality.”
The law would limit numbers according to what the government believes the economy really needs.
There would be more emphasis on letting in skilled graduates to reduce unemployment among the immigrant population, and residence permits would no longer be automatically granted to anyone who has lived in France for ten years.
There are also plans for a new citizenship test on French values and the language.