cmCPackGenerator: Add GetOptionIfSet() to avoid duplicate calls

This commit is contained in:
Vitaly Stakhovsky
2024-11-04 12:00:00 -05:00
parent 384dbef61e
commit 17ee28728b
7 changed files with 108 additions and 110 deletions
+16 -14
View File
@@ -191,15 +191,16 @@ std::string cmCPackArchiveGenerator::GetArchiveComponentFileName(
std::string componentUpper(cmSystemTools::UpperCase(component));
std::string packageFileName;
if (this->IsSet("CPACK_ARCHIVE_" + componentUpper + "_FILE_NAME")) {
if (cmValue v = this->GetOptionIfSet("CPACK_ARCHIVE_" + componentUpper +
"_FILE_NAME")) {
packageFileName += *v;
} else if ((v = this->GetOptionIfSet("CPACK_ARCHIVE_FILE_NAME"))) {
packageFileName +=
*this->GetOption("CPACK_ARCHIVE_" + componentUpper + "_FILE_NAME");
} else if (this->IsSet("CPACK_ARCHIVE_FILE_NAME")) {
packageFileName += this->GetComponentPackageFileName(
*this->GetOption("CPACK_ARCHIVE_FILE_NAME"), component, isGroupName);
this->GetComponentPackageFileName(*v, component, isGroupName);
} else {
packageFileName += this->GetComponentPackageFileName(
*this->GetOption("CPACK_PACKAGE_FILE_NAME"), component, isGroupName);
v = this->GetOption("CPACK_PACKAGE_FILE_NAME");
packageFileName +=
this->GetComponentPackageFileName(*v, component, isGroupName);
}
packageFileName += this->GetOutputExtension();
@@ -394,10 +395,11 @@ int cmCPackArchiveGenerator::PackageComponentsAllInOne()
this->packageFileNames.emplace_back(this->toplevel);
this->packageFileNames[0] += "/";
if (this->IsSet("CPACK_ARCHIVE_FILE_NAME")) {
this->packageFileNames[0] += *this->GetOption("CPACK_ARCHIVE_FILE_NAME");
if (cmValue v = this->GetOptionIfSet("CPACK_ARCHIVE_FILE_NAME")) {
this->packageFileNames[0] += *v;
} else {
this->packageFileNames[0] += *this->GetOption("CPACK_PACKAGE_FILE_NAME");
v = this->GetOption("CPACK_PACKAGE_FILE_NAME");
this->packageFileNames[0] += *v;
}
this->packageFileNames[0] += this->GetOutputExtension();
@@ -481,10 +483,10 @@ int cmCPackArchiveGenerator::GetThreadCount() const
int threads = 1;
// CPACK_ARCHIVE_THREADS overrides CPACK_THREADS
if (this->IsSet("CPACK_ARCHIVE_THREADS")) {
threads = std::stoi(*this->GetOption("CPACK_ARCHIVE_THREADS"));
} else if (this->IsSet("CPACK_THREADS")) {
threads = std::stoi(*this->GetOption("CPACK_THREADS"));
if (cmValue v = this->GetOptionIfSet("CPACK_ARCHIVE_THREADS")) {
threads = std::stoi(*v);
} else if (cmValue v2 = this->GetOptionIfSet("CPACK_THREADS")) {
threads = std::stoi(*v2);
}
return threads;
+9 -9
View File
@@ -101,13 +101,12 @@ int cmCPackDragNDropGenerator::InitializeInternal()
}
this->SetOptionIfNotSet("CPACK_COMMAND_REZ", rez_path);
if (this->IsSet("CPACK_DMG_SLA_DIR")) {
slaDirectory = this->GetOption("CPACK_DMG_SLA_DIR");
if (cmValue v = this->GetOptionIfSet("CPACK_DMG_SLA_DIR")) {
slaDirectory = *v;
if (!slaDirectory.empty() &&
this->IsOn("CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE") &&
this->IsSet("CPACK_RESOURCE_FILE_LICENSE")) {
std::string license_file =
this->GetOption("CPACK_RESOURCE_FILE_LICENSE");
(v = this->GetOptionIfSet("CPACK_RESOURCE_FILE_LICENSE"))) {
std::string license_file = *v;
if (!license_file.empty() &&
(license_file.find("CPack.GenericLicense.txt") ==
std::string::npos)) {
@@ -119,7 +118,8 @@ int cmCPackDragNDropGenerator::InitializeInternal()
singleLicense = true;
}
}
if (!this->IsSet("CPACK_DMG_SLA_LANGUAGES")) {
cmValue lang = this->GetOptionIfSet("CPACK_DMG_SLA_LANGUAGES");
if (!lang) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"CPACK_DMG_SLA_DIR set but no languages defined "
"(set CPACK_DMG_SLA_LANGUAGES)"
@@ -132,7 +132,7 @@ int cmCPackDragNDropGenerator::InitializeInternal()
return 0;
}
cmList languages{ this->GetOption("CPACK_DMG_SLA_LANGUAGES") };
cmList languages{ *lang };
if (languages.empty()) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"CPACK_DMG_SLA_LANGUAGES set but empty" << std::endl);
@@ -742,8 +742,8 @@ std::string cmCPackDragNDropGenerator::GetComponentInstallSuffix(
std::string componentFileName = cmStrCat(
"CPACK_DMG_", cmSystemTools::UpperCase(componentName), "_FILE_NAME");
if (this->IsSet(componentFileName)) {
return this->GetOption(componentFileName);
if (cmValue v = this->GetOptionIfSet(componentFileName)) {
return *v;
}
return GetComponentPackageFileName(package_file_name, componentName, false);
}
+9
View File
@@ -1318,6 +1318,15 @@ bool cmCPackGenerator::IsSet(const std::string& name) const
return this->MakefileMap->IsSet(name);
}
cmValue cmCPackGenerator::GetOptionIfSet(const std::string& name) const
{
cmValue ret = this->MakefileMap->GetDefinition(name);
if (!ret || ret->empty() || cmIsNOTFOUND(*ret)) {
return {};
}
return ret;
}
bool cmCPackGenerator::IsOn(const std::string& name) const
{
return this->GetOption(name).IsOn();
+1
View File
@@ -103,6 +103,7 @@ public:
cmValue GetOption(const std::string& op) const;
std::vector<std::string> GetOptions() const;
bool IsSet(const std::string& name) const;
cmValue GetOptionIfSet(const std::string& name) const;
bool IsOn(const std::string& name) const;
bool IsSetToOff(const std::string& op) const;
bool IsSetToEmpty(const std::string& op) const;
+38 -44
View File
@@ -97,9 +97,8 @@ int cmCPackInnoSetupGenerator::InitializeInternal()
int cmCPackInnoSetupGenerator::PackageFiles()
{
// Includes
if (IsSet("CPACK_INNOSETUP_EXTRA_SCRIPTS")) {
const cmList extraScripts(GetOption("CPACK_INNOSETUP_EXTRA_SCRIPTS"));
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_EXTRA_SCRIPTS")) {
const cmList extraScripts(*v);
for (const std::string& i : extraScripts) {
includeDirectives.emplace_back(cmStrCat(
"#include ", QuotePath(cmSystemTools::CollapseFullPath(i, toplevel))));
@@ -133,9 +132,8 @@ int cmCPackInnoSetupGenerator::PackageFiles()
}
// [Code] section
if (IsSet("CPACK_INNOSETUP_CODE_FILES")) {
const cmList codeFiles(GetOption("CPACK_INNOSETUP_CODE_FILES"));
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_CODE_FILES")) {
const cmList codeFiles(*v);
for (const std::string& i : codeFiles) {
codeIncludes.emplace_back(cmStrCat(
"#include ", QuotePath(cmSystemTools::CollapseFullPath(i, toplevel))));
@@ -168,26 +166,26 @@ bool cmCPackInnoSetupGenerator::ProcessSetupSection()
}
setupDirectives["AppPublisher"] = GetOption("CPACK_PACKAGE_VENDOR");
if (IsSet("CPACK_PACKAGE_HOMEPAGE_URL")) {
setupDirectives["AppPublisherURL"] =
GetOption("CPACK_PACKAGE_HOMEPAGE_URL");
setupDirectives["AppSupportURL"] = GetOption("CPACK_PACKAGE_HOMEPAGE_URL");
setupDirectives["AppUpdatesURL"] = GetOption("CPACK_PACKAGE_HOMEPAGE_URL");
if (cmValue v = GetOptionIfSet("CPACK_PACKAGE_HOMEPAGE_URL")) {
setupDirectives["AppPublisherURL"] = *v;
setupDirectives["AppSupportURL"] = *v;
setupDirectives["AppUpdatesURL"] = *v;
}
SetOptionIfNotSet("CPACK_INNOSETUP_IGNORE_LICENSE_PAGE", "OFF");
if (IsSet("CPACK_RESOURCE_FILE_LICENSE") &&
!GetOption("CPACK_INNOSETUP_IGNORE_LICENSE_PAGE").IsOn()) {
setupDirectives["LicenseFile"] = cmSystemTools::ConvertToWindowsOutputPath(
GetOption("CPACK_RESOURCE_FILE_LICENSE"));
if (!GetOption("CPACK_INNOSETUP_IGNORE_LICENSE_PAGE").IsOn()) {
if (cmValue v = GetOptionIfSet("CPACK_RESOURCE_FILE_LICENSE")) {
setupDirectives["LicenseFile"] =
cmSystemTools::ConvertToWindowsOutputPath(*v);
}
}
SetOptionIfNotSet("CPACK_INNOSETUP_IGNORE_README_PAGE", "ON");
if (IsSet("CPACK_RESOURCE_FILE_README") &&
!GetOption("CPACK_INNOSETUP_IGNORE_README_PAGE").IsOn()) {
setupDirectives["InfoBeforeFile"] =
cmSystemTools::ConvertToWindowsOutputPath(
GetOption("CPACK_RESOURCE_FILE_README"));
if (!GetOption("CPACK_INNOSETUP_IGNORE_README_PAGE").IsOn()) {
if (cmValue v = GetOptionIfSet("CPACK_RESOURCE_FILE_README")) {
setupDirectives["InfoBeforeFile"] =
cmSystemTools::ConvertToWindowsOutputPath(*v);
}
}
SetOptionIfNotSet("CPACK_INNOSETUP_USE_MODERN_WIZARD", "OFF");
@@ -201,16 +199,14 @@ bool cmCPackInnoSetupGenerator::ProcessSetupSection()
setupDirectives["SetupIconFile"] = "compiler:SetupClassicIcon.ico";
}
if (IsSet("CPACK_INNOSETUP_ICON_FILE")) {
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_ICON_FILE")) {
setupDirectives["SetupIconFile"] =
cmSystemTools::ConvertToWindowsOutputPath(
GetOption("CPACK_INNOSETUP_ICON_FILE"));
cmSystemTools::ConvertToWindowsOutputPath(*v);
}
if (IsSet("CPACK_PACKAGE_ICON")) {
if (cmValue v = GetOptionIfSet("CPACK_PACKAGE_ICON")) {
setupDirectives["WizardSmallImageFile"] =
cmSystemTools::ConvertToWindowsOutputPath(
GetOption("CPACK_PACKAGE_ICON"));
cmSystemTools::ConvertToWindowsOutputPath(*v);
}
if (!RequireOption("CPACK_PACKAGE_INSTALL_DIRECTORY")) {
@@ -238,8 +234,8 @@ bool cmCPackInnoSetupGenerator::ProcessSetupSection()
toplevelProgramFolder = false;
}
if (IsSet("CPACK_INNOSETUP_PASSWORD")) {
setupDirectives["Password"] = GetOption("CPACK_INNOSETUP_PASSWORD");
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_PASSWORD")) {
setupDirectives["Password"] = *v;
setupDirectives["Encryption"] = "yes";
}
@@ -306,9 +302,9 @@ bool cmCPackInnoSetupGenerator::ProcessSetupSection()
bool cmCPackInnoSetupGenerator::ProcessFiles()
{
std::map<std::string, std::string> customFileInstructions;
if (IsSet("CPACK_INNOSETUP_CUSTOM_INSTALL_INSTRUCTIONS")) {
const cmList instructions(
GetOption("CPACK_INNOSETUP_CUSTOM_INSTALL_INSTRUCTIONS"));
if (cmValue v =
GetOptionIfSet("CPACK_INNOSETUP_CUSTOM_INSTALL_INSTRUCTIONS")) {
const cmList instructions(*v);
if (instructions.size() % 2 != 0) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"CPACK_INNOSETUP_CUSTOM_INSTALL_INSTRUCTIONS should "
@@ -328,8 +324,8 @@ bool cmCPackInnoSetupGenerator::ProcessFiles()
toplevelProgramFolder ? "{autoprograms}\\" : "{group}\\";
std::map<std::string, std::string> icons;
if (IsSet("CPACK_PACKAGE_EXECUTABLES")) {
const cmList executables(GetOption("CPACK_PACKAGE_EXECUTABLES"));
if (cmValue v = GetOptionIfSet("CPACK_PACKAGE_EXECUTABLES")) {
const cmList executables(*v);
if (executables.size() % 2 != 0) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"CPACK_PACKAGE_EXECUTABLES should should contain pairs of "
@@ -345,13 +341,13 @@ bool cmCPackInnoSetupGenerator::ProcessFiles()
}
std::vector<std::string> desktopIcons;
if (IsSet("CPACK_CREATE_DESKTOP_LINKS")) {
cmExpandList(GetOption("CPACK_CREATE_DESKTOP_LINKS"), desktopIcons);
if (cmValue v = GetOptionIfSet("CPACK_CREATE_DESKTOP_LINKS")) {
cmExpandList(*v, desktopIcons);
}
std::vector<std::string> runExecutables;
if (IsSet("CPACK_INNOSETUP_RUN_EXECUTABLES")) {
cmExpandList(GetOption("CPACK_INNOSETUP_RUN_EXECUTABLES"), runExecutables);
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_RUN_EXECUTABLES")) {
cmExpandList(*v, runExecutables);
}
for (const std::string& i : files) {
@@ -507,8 +503,8 @@ bool cmCPackInnoSetupGenerator::ProcessFiles()
static cmsys::RegularExpression urlRegex(
"^(mailto:|(ftps?|https?|news)://).*$");
if (IsSet("CPACK_INNOSETUP_MENU_LINKS")) {
const cmList menuIcons(GetOption("CPACK_INNOSETUP_MENU_LINKS"));
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_MENU_LINKS")) {
const cmList menuIcons(*v);
if (menuIcons.size() % 2 != 0) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"CPACK_INNOSETUP_MENU_LINKS should "
@@ -784,8 +780,7 @@ bool cmCPackInnoSetupGenerator::ConfigureISScript()
const std::string& defaultMessage =
"; CPack didn't find any entries for this section";
if (IsSet("CPACK_CREATE_DESKTOP_LINKS") &&
!GetOption("CPACK_CREATE_DESKTOP_LINKS").Get()->empty()) {
if (!IsSetToEmpty("CPACK_CREATE_DESKTOP_LINKS")) {
cmCPackInnoSetupKeyValuePairs tasks;
tasks["Name"] = "\"desktopicon\"";
tasks["Description"] = "\"{cm:CreateDesktopIcon}\"";
@@ -858,9 +853,8 @@ bool cmCPackInnoSetupGenerator::Compile()
}
}
if (IsSet("CPACK_INNOSETUP_EXECUTABLE_ARGUMENTS")) {
const cmList args(GetOption("CPACK_INNOSETUP_EXECUTABLE_ARGUMENTS"));
if (cmValue v = GetOptionIfSet("CPACK_INNOSETUP_EXECUTABLE_ARGUMENTS")) {
const cmList args(*v);
isccArgs.insert(isccArgs.end(), args.begin(), args.end());
}
+33 -39
View File
@@ -130,23 +130,20 @@ int cmCPackNSISGenerator::PackageFiles()
if (this->IsSet("CPACK_NSIS_MUI_ICON") ||
this->IsSet("CPACK_NSIS_MUI_UNIICON")) {
std::string installerIconCode;
if (this->IsSet("CPACK_NSIS_MUI_ICON")) {
installerIconCode += cmStrCat(
"!define MUI_ICON \"", this->GetOption("CPACK_NSIS_MUI_ICON"), "\"\n");
if (cmValue icon = this->GetOptionIfSet("CPACK_NSIS_MUI_ICON")) {
installerIconCode += cmStrCat("!define MUI_ICON \"", *icon, "\"\n");
}
if (this->IsSet("CPACK_NSIS_MUI_UNIICON")) {
installerIconCode +=
cmStrCat("!define MUI_UNICON \"",
this->GetOption("CPACK_NSIS_MUI_UNIICON"), "\"\n");
if (cmValue icon = this->GetOptionIfSet("CPACK_NSIS_MUI_UNIICON")) {
installerIconCode += cmStrCat("!define MUI_UNICON \"", *icon, "\"\n");
}
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_MUI_ICON_CODE",
installerIconCode.c_str());
}
std::string installerHeaderImage;
if (this->IsSet("CPACK_NSIS_MUI_HEADERIMAGE")) {
installerHeaderImage = *this->GetOption("CPACK_NSIS_MUI_HEADERIMAGE");
} else if (this->IsSet("CPACK_PACKAGE_ICON")) {
installerHeaderImage = *this->GetOption("CPACK_PACKAGE_ICON");
if (cmValue img = this->GetOptionIfSet("CPACK_NSIS_MUI_HEADERIMAGE")) {
installerHeaderImage = *img;
} else if (cmValue icon = this->GetOptionIfSet("CPACK_PACKAGE_ICON")) {
installerHeaderImage = *icon;
}
if (!installerHeaderImage.empty()) {
std::string installerIconCode = cmStrCat(
@@ -155,35 +152,33 @@ int cmCPackNSISGenerator::PackageFiles()
installerIconCode);
}
if (this->IsSet("CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP")) {
std::string installerBitmapCode = cmStrCat(
"!define MUI_WELCOMEFINISHPAGE_BITMAP \"",
this->GetOption("CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP"), "\"\n");
if (cmValue v =
this->GetOptionIfSet("CPACK_NSIS_MUI_WELCOMEFINISHPAGE_BITMAP")) {
std::string installerBitmapCode =
cmStrCat("!define MUI_WELCOMEFINISHPAGE_BITMAP \"", *v, "\"\n");
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_MUI_WELCOMEFINISH_CODE",
installerBitmapCode);
}
if (this->IsSet("CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP")) {
std::string installerBitmapCode = cmStrCat(
"!define MUI_UNWELCOMEFINISHPAGE_BITMAP \"",
this->GetOption("CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP"), "\"\n");
if (cmValue v =
this->GetOptionIfSet("CPACK_NSIS_MUI_UNWELCOMEFINISHPAGE_BITMAP")) {
std::string installerBitmapCode =
cmStrCat("!define MUI_UNWELCOMEFINISHPAGE_BITMAP \"", *v, "\"\n");
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_MUI_UNWELCOMEFINISH_CODE",
installerBitmapCode);
}
if (this->IsSet("CPACK_NSIS_MUI_FINISHPAGE_RUN")) {
std::string installerRunCode =
cmStrCat("!define MUI_FINISHPAGE_RUN \"$INSTDIR\\",
this->GetOption("CPACK_NSIS_EXECUTABLES_DIRECTORY"), '\\',
this->GetOption("CPACK_NSIS_MUI_FINISHPAGE_RUN"), "\"\n");
if (cmValue v = this->GetOptionIfSet("CPACK_NSIS_MUI_FINISHPAGE_RUN")) {
std::string installerRunCode = cmStrCat(
"!define MUI_FINISHPAGE_RUN \"$INSTDIR\\",
this->GetOption("CPACK_NSIS_EXECUTABLES_DIRECTORY"), '\\', *v, "\"\n");
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_MUI_FINISHPAGE_RUN_CODE",
installerRunCode);
}
if (this->IsSet("CPACK_NSIS_WELCOME_TITLE")) {
if (cmValue v = this->GetOptionIfSet("CPACK_NSIS_WELCOME_TITLE")) {
std::string welcomeTitleCode =
cmStrCat("!define MUI_WELCOMEPAGE_TITLE \"",
this->GetOption("CPACK_NSIS_WELCOME_TITLE"), "\"");
cmStrCat("!define MUI_WELCOMEPAGE_TITLE \"", *v, "\"");
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_WELCOME_TITLE_CODE",
welcomeTitleCode);
}
@@ -193,10 +188,9 @@ int cmCPackNSISGenerator::PackageFiles()
"!define MUI_WELCOMEPAGE_TITLE_3LINES");
}
if (this->IsSet("CPACK_NSIS_FINISH_TITLE")) {
if (cmValue v = this->GetOptionIfSet("CPACK_NSIS_FINISH_TITLE")) {
std::string finishTitleCode =
cmStrCat("!define MUI_FINISHPAGE_TITLE \"",
this->GetOption("CPACK_NSIS_FINISH_TITLE"), "\"");
cmStrCat("!define MUI_FINISHPAGE_TITLE \"", *v, "\"");
this->SetOptionIfNotSet("CPACK_NSIS_INSTALLER_FINISH_TITLE_CODE",
finishTitleCode);
}
@@ -211,28 +205,28 @@ int cmCPackNSISGenerator::PackageFiles()
"ManifestDPIAware true");
}
if (this->IsSet("CPACK_NSIS_BRANDING_TEXT")) {
if (cmValue brandingText =
this->GetOptionIfSet("CPACK_NSIS_BRANDING_TEXT")) {
// Default position to LEFT
std::string brandingTextPosition = "LEFT";
if (this->IsSet("CPACK_NSIS_BRANDING_TEXT_TRIM_POSITION")) {
std::string wantedPosition =
this->GetOption("CPACK_NSIS_BRANDING_TEXT_TRIM_POSITION");
if (!wantedPosition.empty()) {
if (cmValue wantedPosition =
this->GetOptionIfSet("CPACK_NSIS_BRANDING_TEXT_TRIM_POSITION")) {
if (!wantedPosition->empty()) {
const std::set<std::string> possiblePositions{ "CENTER", "LEFT",
"RIGHT" };
if (possiblePositions.find(wantedPosition) ==
if (possiblePositions.find(*wantedPosition) ==
possiblePositions.end()) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"Unsupported branding text trim position "
<< wantedPosition << std::endl);
<< *wantedPosition << std::endl);
return false;
}
brandingTextPosition = wantedPosition;
brandingTextPosition = *wantedPosition;
}
}
std::string brandingTextCode =
cmStrCat("BrandingText /TRIM", brandingTextPosition, " \"",
this->GetOption("CPACK_NSIS_BRANDING_TEXT"), "\"\n");
*brandingText, "\"\n");
this->SetOptionIfNotSet("CPACK_NSIS_BRANDING_TEXT_CODE", brandingTextCode);
}
@@ -60,10 +60,8 @@ int cmCPackProductBuildGenerator::PackageFiles()
std::string resDir = cmStrCat(packageDirFileName, "/Contents");
if (this->IsSet("CPACK_PRODUCTBUILD_RESOURCES_DIR")) {
std::string userResDir =
this->GetOption("CPACK_PRODUCTBUILD_RESOURCES_DIR");
if (cmValue v = this->GetOptionIfSet("CPACK_PRODUCTBUILD_RESOURCES_DIR")) {
std::string userResDir = *v;
if (!cmSystemTools::CopyADirectory(userResDir, resDir)) {
cmCPackLogger(cmCPackLog::LOG_ERROR,
"Problem copying the resource files" << std::endl);