At the moment you would have to port solidity code (ETH) to C++ (EOS).
In the future EOS will support the Ethereum virtual machine so it could be possible to use existing solidity codebases with minimal changes.In the future EOS will support the Ethereum virtual machine so it could be possible to use existing solidity codebases with minimal changes.
From an earlier version of the EOS whitepaper:
Ethereum Virtual Machine (EVM) This virtual machine has been used for most existing smart contracts and could be adapted to work within an EOS.IO blockchain. It is conceivable that EVM contracts could be run within their own sandbox inside an EOS.IO blockchain and that with some adaptation EVM contracts could communicate with other EOS.IO blockchain applications.
Ethereum Virtual Machine (EVM) This virtual machine has been used for most existing smart contracts and could be adapted to work within an EOS.IO blockchain. It is conceivable that EVM contracts could be run within their own sandbox inside an EOS.IO blockchain and that with some adaptation EVM contracts could communicate with other EOS.IO blockchain applications.
Dan Larimer has confirmed the EVM is no longer a planned feature, you will need to port your code to C++.