From de1bb51b0ac72eebb39e64db7d71e97770ef2dbc Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 19 Dec 2010 08:48:15 +0000 Subject: [PATCH] another reason to run makesrna needlessly every build is that the makesrna binary is newer then the generated files. --- source/blender/makesrna/intern/makesrna.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source/blender/makesrna/intern/makesrna.c b/source/blender/makesrna/intern/makesrna.c index f4479885676..145f04d644b 100644 --- a/source/blender/makesrna/intern/makesrna.c +++ b/source/blender/makesrna/intern/makesrna.c @@ -53,12 +53,14 @@ static int file_older(const char *file1, const char *file2) { struct stat st1, st2; + // printf("compare: %s %s\n", file1, file2); if(stat(file1, &st1)) return 0; if(stat(file2, &st2)) return 0; return (st1.st_mtime < st2.st_mtime); } +const char *makesrna_path= NULL; static int replace_if_different(char *tmpfile, const char *dep_files[]) { @@ -102,6 +104,10 @@ static int replace_if_different(char *tmpfile, const char *dep_files[]) REN_IF_DIFF; } + if(file_older(orgfile, makesrna_path)) { + REN_IF_DIFF; + } + /* now check if any files we depend on are newer then any generated files */ if(dep_files) { int pass; @@ -2783,6 +2789,7 @@ int main(int argc, char **argv) } else { printf("Running makesrna, program versions %s\n", RNA_VERSION_DATE); + makesrna_path= argv[0]; return_status= rna_preprocess(argv[1]); }