Sorry this is a short post, I just saw a tweet on this before I hop into bed (the only good use I found for twitter, following game devs). Its an hlsl to glsl cross compiler: github.com/James-Jones/HLSLCrossCompiler
For the record, Cg is syntactically more-or-less identical to HLSL. Since the NVIDIA Cg toolkit can already generate GLSL output from Cg shaders using the “glslf” and “glslv” profiles, you can already do this today with Panda3D.