diff options
Diffstat (limited to 'include/SConstruct')
-rw-r--r-- | include/SConstruct | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/include/SConstruct b/include/SConstruct deleted file mode 100644 index 9b86034..0000000 --- a/include/SConstruct +++ /dev/null @@ -1,99 +0,0 @@ -#!python -import os, subprocess - - -# Local dependency paths, adapt them to your setup -godot_headers_path = "../../godot_headers/" -godot_bin_path = "../../godot_fork/bin/" -godot_lib_path = "../../godot_fork/bin/" - - -env = Environment() - -if ARGUMENTS.get("use_llvm", "no") == "yes": - env["CXX"] = "clang++" - -target = ARGUMENTS.get("target", "core") -platform = ARGUMENTS.get("p", "linux") - - -godot_name = "godot." + ("x11" if platform == "linux" else platform) + ".tools.64" - - -def add_sources(sources, directory): - for file in os.listdir(directory): - if file.endswith('.cpp'): - sources.append(directory + '/' + file) - - -if target == "core": - if platform == "linux": - env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) - - env.Append(CPPPATH=['.', godot_headers_path]) - - if platform == "windows": - env.Append(LIBS=[godot_name + '.lib']) - env.Append(LIBPATH=[godot_lib_path]) - - env.Append(CPPFLAGS=['-D_GD_CPP_CORE_API_IMPL']) - - sources = [] - add_sources(sources, "godot_cpp/core") - - library = env.SharedLibrary(target='godot_cpp_core', source=sources) - Default(library) - - -elif target == "bindings": - - if ARGUMENTS.get("generate_bindings", "no") == "yes": - godot_executable = godot_bin_path + godot_name - - if env["CXX"] == "clang++": - godot_executable += ".llvm" - - if platform == "windows": - godot_executable += ".exe" - - # TODO Generating the API should be done only if the Godot build is more recent than the JSON file - json_api_file = 'godot_api.json' - - subprocess.call([godot_executable, '--gdnative-generate-json-api', json_api_file]) - - binding_generator_executable = '../binding_generator/target/debug/binding_generator' - if platform == "windows": - binding_generator_executable += ".exe" - - # TODO Should that be the job of the generator? - if not os.path.isdir('godot_cpp/impl'): - os.mkdir('godot_cpp/impl') - - # Note: the binding generator should have been built before - subprocess.call([binding_generator_executable, json_api_file, 'godot_cpp/']) - - if platform == "linux": - if env["CXX"] == "clang++": - env.Append(CCFLAGS = ['-Wno-writable-strings']) - else: - env.Append(CCFLAGS = ['-Wno-write-strings', '-Wno-return-local-addr']) - - env.Append(CCFLAGS = ['-g','-O3', '-std=c++14']) - env.Append(LINKFLAGS = ['-Wl,-R,\'$$ORIGIN\'']) - env.Append(CPPPATH=['.', godot_headers_path, './godot_cpp']) - - if platform == "windows": - env.Append(LIBS=[godot_name]) - env.Append(LIBPATH=[godot_lib_path]) - - env.Append(LIBS=['godot_cpp_core']) - env.Append(LIBPATH=['.']) - - env.Append(CPPFLAGS=['-D_GD_CPP_BINDING_IMPL']) - - sources = [] - add_sources(sources, "godot_cpp/impl/") - - library = env.SharedLibrary(target='godot_cpp_bindings', source=sources) - Default(library) - |