Going to be pretty hard since the tops of the buildings are the same colour as the sky. I'll give it a try and then let you know how it was done.
ok I did one and this is what I did.
Before doing the sky go to levels and click on auto input levels. (This will get rid of some of the haziness and boost the colours). Then, I duplicated the layer and used linear burn mode - to make the buildings stand out more. While it was in this mode I selected the sky using scissor select but you can select it anyway you wish. Although fuzzy select will pick up areas you dont want selected this time. Feather your selection and remove top layer. Make sure your layer mode is back in normal - although it will not matter if you only have one layer now. Then you can add your sky gradient - I have a horizon to sky 'light blue to azure'. The lightest needs to go to the bottom. (I took this gradient from a photo). If you like add a little contrast and that should be all you need unless the photo is blurry and noisy.