Clone of mesa.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Carl Worth 67c27afc16 Add test for an object-like macro with a definition beginning with '(' 15 years ago
main Add hash table implementation from glsl2 project. 15 years ago
tests Add test for an object-like macro with a definition beginning with '(' 15 years ago
.gitignore Add a very simple test for the pre-processor. 15 years ago
Makefile Add support for the structure of function-like macros. 15 years ago
README Add README file describing glcpp. 15 years ago
glcpp-lex.l Add support for the structure of function-like macros. 15 years ago
glcpp-parse.y Eliminate a reduce/reduce conflict in the function-like macro production. 15 years ago
glcpp.c Fix defines involving both literals and other defined macros. 15 years ago
glcpp.h Add support for the structure of function-like macros. 15 years ago
hash_table.c Add hash table implementation from glsl2 project. 15 years ago
hash_table.h Add hash table implementation from glsl2 project. 15 years ago
xtalloc.c Convert lexer to talloc and add xtalloc wrappers. 15 years ago

README

glcpp -- GLSL "C" preprocessor

This is a simple preprocessor designed to provide the preprocessing
needs of the GLSL language. The requirements for this preprocessor are
specified in the GLSL 1.30 specification availble from:

http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.30.08.pdf

This specification is not precise on some semantics, (for example,
#define and #if), defining these merely "as is standard for C++
preprocessors". To fill in these details, I've been using the C99
standard (for which I had a convenient copy) as available from:

http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf