14 lines
497 B
CMake
14 lines
497 B
CMake
# Convert a shader file to a compilable C file
|
|
|
|
# INPUT_FILE, OUTPUT_FILE, SHADER_NAME must be set via -D
|
|
|
|
file(READ ${INPUT_FILE} CONTENTS)
|
|
|
|
string(REPLACE "\\" "\\\\" CONTENTS "${CONTENTS}") # Escape backslashes
|
|
string(REPLACE "\"" "\\\"" CONTENTS "${CONTENTS}") # Escape double quotes
|
|
string(REPLACE "\n" "\\n\"\n\"" CONTENTS "${CONTENTS}") # Escape newlines
|
|
|
|
set(OUTPUT_CONTENT "const char *fallbackShader_${SHADER_NAME} =\n\"${CONTENTS}\";\n")
|
|
|
|
file(WRITE ${OUTPUT_FILE} "${OUTPUT_CONTENT}")
|