Fix issue #676: emit error message on failure to open spv file.
This commit is contained in:
parent
0302bdf04a
commit
8f674e821e
@ -5319,6 +5319,8 @@ void OutputSpvBin(const std::vector<unsigned int>& spirv, const char* baseName)
|
||||
{
|
||||
std::ofstream out;
|
||||
out.open(baseName, std::ios::binary | std::ios::out);
|
||||
if (out.fail())
|
||||
printf("ERROR: Failed to open file: %s\n", baseName);
|
||||
for (int i = 0; i < (int)spirv.size(); ++i) {
|
||||
unsigned int word = spirv[i];
|
||||
out.write((const char*)&word, 4);
|
||||
@ -5331,6 +5333,8 @@ void OutputSpvHex(const std::vector<unsigned int>& spirv, const char* baseName,
|
||||
{
|
||||
std::ofstream out;
|
||||
out.open(baseName, std::ios::binary | std::ios::out);
|
||||
if (out.fail())
|
||||
printf("ERROR: Failed to open file: %s\n", baseName);
|
||||
out << "\t// " GLSLANG_REVISION " " GLSLANG_DATE << std::endl;
|
||||
if (varName != nullptr) {
|
||||
out << "\t #pragma once" << std::endl;
|
||||
|
@ -662,7 +662,7 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
|
||||
if (! (Options & EOptionMemoryLeakMode)) {
|
||||
printf("%s", logger.getAllMessages().c_str());
|
||||
if (Options & EOptionOutputHexadecimal) {
|
||||
glslang::OutputSpvHex(spirv, GetBinaryName((EShLanguage)stage), variableName);
|
||||
glslang::OutputSpvHex(spirv, GetBinaryName((EShLanguage)stage), variableName);
|
||||
} else {
|
||||
glslang::OutputSpvBin(spirv, GetBinaryName((EShLanguage)stage));
|
||||
}
|
||||
@ -999,8 +999,8 @@ void usage()
|
||||
"\n"
|
||||
" --keep-uncalled don't eliminate uncalled functions when linking\n"
|
||||
" --ku synonym for --keep-uncalled\n"
|
||||
" --variable-name <name> Creates a C header file that contains a uint32_t array named <name> initialized with the shader binary code.\n"
|
||||
" --vn <name> synonym for --variable-name <name>.\n"
|
||||
" --variable-name <name> Creates a C header file that contains a uint32_t array named <name> initialized with the shader binary code.\n"
|
||||
" --vn <name> synonym for --variable-name <name>.\n"
|
||||
);
|
||||
|
||||
exit(EFailUsage);
|
||||
|
@ -2,5 +2,5 @@
|
||||
// For the version, it uses the latest git tag followed by the number of commits.
|
||||
// For the date, it uses the current date (when then script is run).
|
||||
|
||||
#define GLSLANG_REVISION "Overload400-PrecQual.1842"
|
||||
#define GLSLANG_DATE "17-Feb-2017"
|
||||
#define GLSLANG_REVISION "Overload400-PrecQual.1843"
|
||||
#define GLSLANG_DATE "18-Feb-2017"
|
||||
|
Loading…
x
Reference in New Issue
Block a user