diff --git a/CMakeLists.txt b/CMakeLists.txt index 2379b9985..6d30a63ee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -100,6 +100,9 @@ set(RESOURCE_FILES "sharedconfig.ini" "authconfig.ini" "chatconfig.ini" "worldco message(STATUS "Checking resource file integrity") include(Utils) +UpdateConfigOption(${PROJECT_BINARY_DIR}/authconfig.ini "port" "auth_server_port") +UpdateConfigOption(${PROJECT_BINARY_DIR}/chatconfig.ini "port" "chat_server_port") +UpdateConfigOption(${PROJECT_BINARY_DIR}/masterconfig.ini "port" "master_server_port") foreach(resource_file ${RESOURCE_FILES}) set(file_size 0) @@ -115,9 +118,6 @@ foreach(resource_file ${RESOURCE_FILES}) ) message(STATUS "Moved " ${resource_file} " to project binary directory") elseif(resource_file MATCHES ".ini") - UpdateConfigOption("build/authconfig.ini" "port" "auth_server_port") - UpdateConfigOption("build/chatconfig.ini" "port" "chat_server_port") - UpdateConfigOption("build/masterconfig.ini" "port" "master_server_port") message(STATUS "Checking " ${resource_file} " for missing config options") file(READ ${PROJECT_BINARY_DIR}/${resource_file} current_file_contents) string(REPLACE "\\\n" "" current_file_contents ${current_file_contents}) diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake index c0c67ef07..3c58241d7 100644 --- a/cmake/Utils.cmake +++ b/cmake/Utils.cmake @@ -7,6 +7,10 @@ function(UpdateConfigOption file_name old_option_name new_option_name) string(APPEND old_option_name "=") string(APPEND new_option_name "=") message(STATUS "Checking " ${file_name} " for " ${old_option_name} " and adding " ${new_option_name} " if it does not exist") + if(NOT EXISTS ${file_name}) + message(STATUS ${file_name} " does not exist. Doing nothing") + return() + endif() file(READ ${file_name} current_file_contents) string(REPLACE "\\\n" "" current_file_contents ${current_file_contents}) string(REPLACE "\n" ";" current_file_contents ${current_file_contents})