Искон. Возникло на базе оборота скалить зубы «смеяться» < «показывать зубы». См. скалиться, щель.
Школьный этимологический словарь русского языка. Происхождение слов. — М.: Дрофа
Н. М. Шанский, Т. А. Боброва
2004