By default, shadow_caster="TRUE" allows to use stencil shadow volumes. No shader is required with shadow volumes.
The only requirement is that your models and meshes must have closed surfaces else you will have visual artifacts
(see at the end of this artticle
Shadow volumes work fine with omni lights but can be CPU intensive if you have dense meshes.
The second technique is the shadow mapping. You have to enable it in the scene node (see the shadow mapping demo
Shadow mapping works with any mesh or object that modifies the depth buffer. But it suffers from aliasing and then requires the use of shaders to have soft shadows.
Currently GeeXLab supports the basic shadow mapping algorithm so it works fine with spot lights. And depending on your scene, it
can also work with omni light (see HERE