This is possible by using transistors as constant current source, this way the capacitor will charge and discharge in a linear way creating the wave.
Changing the capacitor value will change the frequency.
The OpAmp is there just to buffer the output to allow removing the DC offset, you can use the output directly if you want for some reason..
Anyway, the wave have a distortion at the peak because the current isn't constant all the way. I reduced this effect by injecting voltage at the CTRL pin, but this doesn't fix it.