Skip to content
Snippets Groups Projects

Only recreate embedded shader files if existing ones are obsolete

Merged Jonathan Kunstwald requested to merge feature/add-embed-shader-obsolete-check into master
1 file
+ 19
1
Compare changes
  • Side-by-side
  • Inline
+ 19
1
@@ -22,9 +22,27 @@ function(embed_files output fileDir mapName files)
set(outputCC "${output}.cc")
set(outputHH "${output}.hh")
set(existingFilesObsolete TRUE)
set(existingFilesPresent FALSE)
set(existingFilePath "")
if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/${outputCC})
set(existingFilesObsolete FALSE)
set(existingFilesPresent TRUE)
set(existingFilePath ${CMAKE_CURRENT_LIST_DIR}/${outputCC})
endif()
set(resourceCount 0)
set(registrationCode "")
foreach(bin ${files})
if (${existingFilesPresent} AND NOT ${existingFilesObsolete})
if (${bin} IS_NEWER_THAN ${existingFilePath})
set(existingFilesObsolete TRUE)
endif()
endif()
MATH(EXPR resourceCount "${resourceCount}+1")
string(REPLACE "${embedDir}" "" relativeBinPath "${bin}")
@@ -32,7 +50,7 @@ function(embed_files output fileDir mapName files)
set(registrationCode "${registrationCode}{\"${relativeBinPath}\", R\"%%RES_EMBED%%(\n${filedataString}\n)%%RES_EMBED%%\"},\n")
endforeach()
if(${resourceCount})
if(${resourceCount} AND ${existingFilesObsolete})
file(WRITE ${outputHH} "#pragma once\n\n#include <utility>\n\n")
file(APPEND ${outputHH} "// This file is generated upon running CMake, do not modify it!\n\n")
file(APPEND ${outputHH} "namespace internal_embedded_files {\n")
Loading