Roque Santa Cruz has signed a three-year contract with Malaga, the Primera Division club have confirmed.