Total to buy Maersk Oil in $7.45-billion deal