Updated global header generator

Now adds include guards


Former-commit-id: bbc67864703910cf21946fd22302efe6a52d8495
This commit is contained in:
Lynix 2012-11-11 17:57:43 +01:00
parent b4e74b6574
commit 84f73f2b6a
3 changed files with 13 additions and 7 deletions

View File

@ -7,4 +7,4 @@ newaction
trigger = "examples",
description = "Generate examples",
execute = examples
}
}

View File

@ -16,7 +16,7 @@ function generateHeaders()
break
end
end
config:close()
local header, err = io.open(modulePath .. ".hpp", "w+")
@ -27,11 +27,16 @@ function generateHeaders()
header:write("// This file was automatically generated by Nazara\n\n")
header:write(head .. "\n")
-- Protection du multi-including
local preprocessorName = "NAZARA_GLOBAL_" .. string.upper(moduleName) .. "_HPP"
header:write("#ifndef " .. preprocessorName .. "\n")
header:write("#define " .. preprocessorName .. "\n\n")
local files = os.matchfiles(modulePath .. "/*.hpp")
local count = 0
for k, filePath in pairs(files) do
local include, fileName = filePath:match(".*(Nazara/.*/(.*))")
if (fileName ~= "Debug.hpp" and
if (fileName ~= "Debug.hpp" and
fileName ~= "DebugOff.hpp" and
fileName ~= "ThreadSafety.hpp" and
fileName ~= "ThreadSafetyOff.hpp") then
@ -40,9 +45,10 @@ function generateHeaders()
end
end
print(string.format("-# of includes: %d", count))
header:write("\n#endif // " .. preprocessorName .. "\n")
header:close()
print(string.format("-# of includes: %d", count))
end
end
@ -51,4 +57,4 @@ newaction
trigger = "generateheaders",
description = "Generate a global header for each module",
execute = generateHeaders
}
}

View File

@ -194,4 +194,4 @@ newaction
trigger = "unicode",
description = "Parse the Unicode Character Data and put the useful informations into a header",
execute = parseUnicodeData
}
}