There are many attempts to build an open source phones. This is possible with availability of required modules like GSM, Wifi and other parts. All you need is to put hardware together and take care of software. Of course it sounds easy and fun, but in reality you may face lots of problems starting with selecting components, assembling them in compact shape, writing code. Be sure the end result always be a brick in a hand. Anyway building a phone can be fun and give valuable experience. Arsenijs have shared his interesting smartphone solution in hackaday.io.
He used Raspberry Pi zero as base component. He wanted phone to be repairable, cheap and built from available parts. The end declared price is about $50.
Phone building blocks consists of Raspberry Pi zero, ESP8266 for WiFi connectivity and Arduino. It comes with 2G GSM module with 3G promise in future updates. Phone face is 128×64 1.3’’ OLED screen. As for smartphone screen might be too small, but for basic functionality is OK.
The phone runs Raspbian Linux, so you are free to add new features and functions as you would do with regular Raspberry pi dev board. The extension port can be used for adding other standard features like IR transceiver, control buttons, secondary displays, cameras, sensors, storage and so on. Also battery is also of your choice.