def compile(file, simple_message = True): if simple_message: raw_print("Compiling...", color=colors['yellow']) else: raw_print("Compiling " + file + "...", color=colors['yellow']) exit = os.system(COMPILER_COMMANDS[extension.replace('.', '')].replace('%FILE%', file)) if exit == 0: color_print("Done.", colors['green']) else: color_print("Failed!", colors['red']) sys.exit() compiled_files.append(file)
from build_config import BUILD_FILES, FORCED_FILES, COMPILER_COMMANDS, LINKER_COMMAND, LINKER_OUT, BEGIN_COMMANDS, FINISH_COMMANDS, SMART_DETECT from pyout import raw_print, color_print, colors from file_change_checker import has_file_changed, update_file_cache from dep_tree import DEPENDENCY_TREE import glob, os, os.path, filecmp, shutil, sys, time start_time = time.time() files = [] requested_files = [] checked_files = [] #Run begin commands for command in BEGIN_COMMANDS: if os.system(command) != 0: color_print("Cannot run begin commands.", colors['red']) sys.exit() #Discover the files raw_print("Discovering files...", color=colors['yellow']) for file_type in BUILD_FILES: for file in glob.glob(file_type): files.append(file) for file in BUILD_FILES: if not '*' in file: files.append(file) if len(files) < 1: color_print("No files found.", colors['blue'])
line = line.replace('#include "', "") line = line.replace('"\n', "") else: continue dep = line if not line.startswith('/'): dep = '/'.join(file.split('/')[:-1]) + '/' + line if dep in dependencies[file]: continue if os.path.isfile(dep): dependencies[file].append(dep) new_deps_added = True tree = open("dep_tree.py", 'w') tree.write("### File Dependency Tree ###\n\n") tree.write("DEPENDENCY_TREE = {\n") for file, deps in dependencies.items(): tree.write("\t'" + file + "': [\n") for dep in deps: tree.write('\t\t"' + dep + '",\n') tree.write("\t],\n") tree.write("}") tree.close() color_print("Done.", colors['green'])