The reason for the 777 not having winglets is that it is better to simply use the same weight to make a longer wing in a new design. Airliners are retrofitted with winglets since extending the wings would mean that the entire wing had to be structurally reinforced. I e, you'd have to rebuild the entire wing.
As for the older 747s... Adding winglets costs money. The reduction in fuel over the remaining life of the airliners has to pay for this. They just aren't planning to keep the older 747s in the air long enough for winglets to pay off. Besides, most of them are already paid off and are generating pure revenue. They can get rid of them anytime they want and not have a net loss. They might be reluctant to tie themselves to these old airframes for additional years.
Yehaa,
was that quoted or just paraphrased from the Boeing ads?
Cheers,
Fred