mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 23:20:08 +01:00
glsl2: restructure header file for C++ and C inclusion
As it was, the header could not be cleanly #included by a C source.
This commit is contained in:
parent
1be5d1c887
commit
b820bf979a
1 changed files with 28 additions and 8 deletions
|
|
@ -25,6 +25,12 @@
|
|||
#ifndef GLSL_PARSER_EXTRAS_H
|
||||
#define GLSL_PARSER_EXTRAS_H
|
||||
|
||||
/*
|
||||
* Most of the definitions here only apply to C++
|
||||
*/
|
||||
#ifdef __cplusplus
|
||||
|
||||
|
||||
#include <cstdlib>
|
||||
#include "glsl_symbol_table.h"
|
||||
|
||||
|
|
@ -175,14 +181,6 @@ extern void _mesa_glsl_warning(const YYLTYPE *locp,
|
|||
_mesa_glsl_parse_state *state,
|
||||
const char *fmt, ...);
|
||||
|
||||
extern "C" {
|
||||
extern int preprocess(void *ctx, const char **shader, char **info_log,
|
||||
const struct gl_extensions *extensions);
|
||||
|
||||
extern void _mesa_destroy_shader_compiler();
|
||||
extern void _mesa_destroy_shader_compiler_caches();
|
||||
}
|
||||
|
||||
extern void _mesa_glsl_lexer_ctor(struct _mesa_glsl_parse_state *state,
|
||||
const char *string);
|
||||
|
||||
|
|
@ -212,4 +210,26 @@ extern bool _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp,
|
|||
extern const char *
|
||||
_mesa_glsl_shader_target_name(enum _mesa_glsl_parser_targets target);
|
||||
|
||||
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
/*
|
||||
* These definitions apply to C and C++
|
||||
*/
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern int preprocess(void *ctx, const char **shader, char **info_log,
|
||||
const struct gl_extensions *extensions);
|
||||
|
||||
extern void _mesa_destroy_shader_compiler();
|
||||
extern void _mesa_destroy_shader_compiler_caches();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* GLSL_PARSER_EXTRAS_H */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue