diff options
Diffstat (limited to 'build_files/cmake/cmake_netbeans_project.py')
-rwxr-xr-x | build_files/cmake/cmake_netbeans_project.py | 58 |
1 files changed, 38 insertions, 20 deletions
diff --git a/build_files/cmake/cmake_netbeans_project.py b/build_files/cmake/cmake_netbeans_project.py index 81b1a460f67..d4cce46434d 100755 --- a/build_files/cmake/cmake_netbeans_project.py +++ b/build_files/cmake/cmake_netbeans_project.py @@ -29,18 +29,20 @@ Example linux usage Windows not supported so far """ -from project_info import (SIMPLE_PROJECTFILE, - SOURCE_DIR, - CMAKE_DIR, - PROJECT_DIR, - source_list, - is_project_file, - is_c_header, - # is_py, - cmake_advanced_info, - cmake_compiler_defines, - project_name_get, - ) +from project_info import ( + SIMPLE_PROJECTFILE, + SOURCE_DIR, + CMAKE_DIR, + PROJECT_DIR, + source_list, + is_project_file, + is_c_header, + # is_py, + cmake_advanced_info, + cmake_compiler_defines, + cmake_cache_var, + project_name_get, + ) import os @@ -70,6 +72,10 @@ def create_nb_project_main(): # be tricky, get the project name from git if we can! PROJECT_NAME = project_name_get() + + make_exe = cmake_cache_var("CMAKE_MAKE_PROGRAM") + make_exe_basename = os.path.basename(make_exe) + # --------------- NB spesific defines = [("%s=%s" % cdef) if cdef[1] else cdef[0] for cdef in defines] defines += [cdef.replace("#define", "").strip() for cdef in cmake_compiler_defines()] @@ -130,9 +136,9 @@ def create_nb_project_main(): f = open(join(PROJECT_DIR_NB, "configurations.xml"), 'w') f.write('<?xml version="1.0" encoding="UTF-8"?>\n') - f.write('<configurationDescriptor version="94">\n') + f.write('<configurationDescriptor version="95">\n') f.write(' <logicalFolder name="root" displayName="root" projectFiles="true" kind="ROOT">\n') - f.write(' <df name="0" root="%s">\n' % SOURCE_DIR) # base_root_rel + f.write(' <df root="%s" name="0">\n' % SOURCE_DIR) # base_root_rel # write files! files_rel_local = [normpath(relpath(join(CMAKE_DIR, path), SOURCE_DIR)) for path in files_rel] @@ -184,16 +190,27 @@ def create_nb_project_main(): f.write(' <toolsSet>\n') f.write(' <compilerSet>default</compilerSet>\n') + f.write(' <dependencyChecking>false</dependencyChecking>\n') + f.write(' <rebuildPropChanged>false</rebuildPropChanged>\n') f.write(' </toolsSet>\n') - f.write(' <dependencyChecking>false</dependencyChecking>\n') - f.write(' <rebuildPropChanged>false</rebuildPropChanged>\n') + f.write(' <codeAssistance>\n') + f.write(' </codeAssistance>\n') f.write(' <makefileType>\n') f.write(' <makeTool>\n') f.write(' <buildCommandWorkingDir>.</buildCommandWorkingDir>\n') - f.write(' <buildCommand>${MAKE} -f Makefile</buildCommand>\n') - f.write(' <cleanCommand>${MAKE} -f Makefile clean</cleanCommand>\n') + + if make_exe_basename == "ninja": + build_cmd = "ninja" + clean_cmd = "ninja -t clean" + else: + build_cmd = "${MAKE} -f Makefile" + clean_cmd = "${MAKE} -f Makefile clean" + + f.write(' <buildCommand>%s</buildCommand>\n' % build_cmd) + f.write(' <cleanCommand>%s</cleanCommand>\n' % clean_cmd) f.write(' <executablePath>./bin/blender</executablePath>\n') + del build_cmd, clean_cmd def write_toolinfo(): f.write(' <incDir>\n') @@ -220,10 +237,11 @@ def create_nb_project_main(): f.write(' \n') for path in files_rel_local: + is_c = path.endswith(".c") f.write(' <item path="%s"\n' % path) f.write(' ex="false"\n') - f.write(' tool="1"\n') - f.write(' flavor2="0">\n') + f.write(' tool="%d"\n' % (0 if is_c else 1)) + f.write(' flavor2="%d">\n' % (3 if is_c else 0)) f.write(' </item>\n') f.write(' <runprofile version="9">\n') |