X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2Fbertos_utils.py;h=2b7d6767e2a8235e9b58850f7ef74eb2878b6e23;hb=e5342297fe73a412dfc0d22bac403f30b05e3bc0;hp=f67da76a2b2dcb0e14cdd3a25f5fc050c360b90d;hpb=d2e1b5bfdb8f4f33e27bb7fa5ccd6408ba033436;p=bertos.git diff --git a/wizard/bertos_utils.py b/wizard/bertos_utils.py index f67da76a..2b7d6767 100644 --- a/wizard/bertos_utils.py +++ b/wizard/bertos_utils.py @@ -89,8 +89,13 @@ def loadBertosProject(project_file): return project_info def mergeSources(srcdir, new_sources, old_sources): + # The current mergeSources function provide only a raw copy of the sources in the + # created project. + # # TODO: implement the three way merge algorithm - pass + # + shutil.rmtree(srcdir, True) + copytree.copytree(sources_dir + "/bertos", srcdir, ignore_list=const.IGNORE_LIST) def projectFileGenerator(project_info): directory = project_info.info("PROJECT_PATH") @@ -110,6 +115,7 @@ def projectFileGenerator(project_info): def createBertosProject(project_info, edit=False): directory = project_info.info("PROJECT_PATH") sources_dir = project_info.info("SOURCES_PATH") + old_sources_dir = project_info.info("OLD_SOURCES_PATH") if not edit: if os.path.isdir(directory): shutil.rmtree(directory, True) @@ -124,13 +130,11 @@ def createBertosProject(project_info, edit=False): # If not in editing mode it copies all the bertos sources in the /bertos subdirectory of the project shutil.rmtree(srcdir, True) copytree.copytree(sources_dir + "/bertos", srcdir, ignore_list=const.IGNORE_LIST) - else: + elif old_sources_dir: # If in editing mode it merges the current bertos sources with the selected ones # TODO: implement the three way merge algotihm # - # mergeSources(srcdir, sources_dir, old_sources_dir) - # - pass + mergeSources(srcdir, sources_dir, old_sources_dir) # Destination makefile makefile = directory + "/Makefile" makefile = open("mktemplates/Makefile").read() @@ -675,7 +679,8 @@ def loadConfigurationInfos(path): def updateConfigurationValues(def_conf, user_conf): for param in def_conf["paramlist"]: - def_conf[param[1]]["value"] = user_conf[param[1]]["value"] + if param[1] in user_conf and "value" in user_conf[param[1]]: + def_conf[param[1]]["value"] = user_conf[param[1]]["value"] return def_conf def findParameterType(parameter):