diff options
author | Michal Krol <[email protected]> | 2005-04-14 10:31:36 +0000 |
---|---|---|
committer | Michal Krol <[email protected]> | 2005-04-14 10:31:36 +0000 |
commit | 99b329ca13f92bc723c3e67d35a974adac235323 (patch) | |
tree | 5af105dd8a1a36bb75a59b1dd32a7d0e101dd075 /src/mesa/shader/shaderobjects_3dlabs.c | |
parent | ed5f790919da3ca982a0c3d2f0c705093ed6163f (diff) |
hook to _slang_compile()
Diffstat (limited to 'src/mesa/shader/shaderobjects_3dlabs.c')
-rwxr-xr-x | src/mesa/shader/shaderobjects_3dlabs.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mesa/shader/shaderobjects_3dlabs.c b/src/mesa/shader/shaderobjects_3dlabs.c index 203a006f502..e2239773ff2 100755 --- a/src/mesa/shader/shaderobjects_3dlabs.c +++ b/src/mesa/shader/shaderobjects_3dlabs.c @@ -41,6 +41,8 @@ #if USE_3DLABS_FRONTEND
#include "slang_mesa.h"
#include "Public/ShaderLang.h"
+#else
+#include "slang_compile.h"
#endif
struct gl2_unknown_obj
@@ -545,6 +547,9 @@ _shader_Compile (struct gl2_shader_intf **intf) #if USE_3DLABS_FRONTEND
char **strings;
TBuiltInResource res;
+#else
+ slang_translation_unit unit;
+ slang_unit_type type;
#endif
impl->_obj.compile_status = GL_FALSE;
@@ -615,6 +620,19 @@ _shader_Compile (struct gl2_shader_intf **intf) impl->_obj._generic.info_log = _mesa_strdup (ShGetInfoLog (
impl->_obj._3dlabs_shhandle._obj.handle));
+#else
+ if (impl->_vftbl->GetSubType (intf) == GL_FRAGMENT_SHADER)
+ type = slang_unit_fragment_shader;
+ else
+ type = slang_unit_vertex_shader;
+ if (_slang_compile (impl->_obj.source, &unit, type))
+ {
+ impl->_obj.compile_status = GL_TRUE;
+ }
+ else
+ {
+ impl->_obj._generic.info_log = _mesa_strdup ("error: invalid translation unit");
+ }
#endif
}
|