Which of these can we say?
- London's people are happy.
- The people of London are happy.
- People are happy in London.
- People in London are happy.
All are correct but they don't all mean the same thing.
Numbers 1 and 2 mean that the people who live in London are happy.
Number 3 suggests that people (who may live elsewhere) are happy when they are in London.
Number 4 is ambiguous. It is not clear whether it refers to the entire population, some of the population or visitors to London.
In general English allows for abstract possessives like this. Like your example, a city or a country can be talked about as possessing their populations so London's people and Britain's people make sense. You could also say a ship's crew or a house's residents.
While all your suggestions are grammatically sound and would be interpreted as @Ronald Sole suggests, generally when talking about a location's residents, you often use a derivative of the location name. This is known as a demonym. In your case the sentence would most succinctly be written:
Londoners are happy
I say derivative as while the word often simply involves adding an 'n' to the location for countries (American, Russian, Costa Rican), or 'er' to a town or city (the afore-mentioned Londoner, New Yorker, Berliner), it can get a bit more complex: Germans lose a 'y' from Germany, for a Mexican the 'o' changes to 'an', Canada also adds an 'i' before the 'a' for Canadian.
Sometimes the demonym is just wierd: Norwegian for Norway people is comprehensible, but Glaswegian for Glasgow? A Liverpudlian (because puddles are little pools?) comes from Liverpool, someone from Newcastle is Novacastrian and a resident of Culiacán is, apparently a Cliché.
Wikipedia has a sizeable list of city demonyms.
's
. You can say, "London residents" and things like that.