|
|
@ -13,11 +13,19 @@ |
|
|
|
# limitations under the License. |
|
|
|
# limitations under the License. |
|
|
|
|
|
|
|
|
|
|
|
import os, sys |
|
|
|
import os, sys |
|
|
|
|
|
|
|
import pickle |
|
|
|
import backends, build |
|
|
|
import backends, build |
|
|
|
import xml.etree.ElementTree as ET |
|
|
|
import xml.etree.ElementTree as ET |
|
|
|
import xml.dom.minidom |
|
|
|
import xml.dom.minidom |
|
|
|
from coredata import MesonException |
|
|
|
from coredata import MesonException |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class RegenInfo(): |
|
|
|
|
|
|
|
def __init__(self, source_dir, build_dir, depfiles, solutionfile): |
|
|
|
|
|
|
|
self.source_dir = source_dir |
|
|
|
|
|
|
|
self.build_dir = build_dir |
|
|
|
|
|
|
|
self.depfiles = depfiles |
|
|
|
|
|
|
|
self.solutionfile = solutionfile |
|
|
|
|
|
|
|
|
|
|
|
class Vs2010Backend(backends.Backend): |
|
|
|
class Vs2010Backend(backends.Backend): |
|
|
|
def __init__(self, build): |
|
|
|
def __init__(self, build): |
|
|
|
super().__init__(build) |
|
|
|
super().__init__(build) |
|
|
@ -70,6 +78,15 @@ class Vs2010Backend(backends.Backend): |
|
|
|
self.gen_testproj('RUN_TESTS', os.path.join(self.environment.get_build_dir(), 'RUN_TESTS.vcxproj')) |
|
|
|
self.gen_testproj('RUN_TESTS', os.path.join(self.environment.get_build_dir(), 'RUN_TESTS.vcxproj')) |
|
|
|
self.gen_regenproj('REGEN', os.path.join(self.environment.get_build_dir(), 'REGEN.vcxproj')) |
|
|
|
self.gen_regenproj('REGEN', os.path.join(self.environment.get_build_dir(), 'REGEN.vcxproj')) |
|
|
|
self.generate_solution(sln_filename, projlist) |
|
|
|
self.generate_solution(sln_filename, projlist) |
|
|
|
|
|
|
|
self.generate_regen_info(sln_filename) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def generate_regen_info(self, sln_filename): |
|
|
|
|
|
|
|
deps = self.get_regen_filelist() |
|
|
|
|
|
|
|
regeninfo = RegenInfo(self.environment.get_source_dir(), |
|
|
|
|
|
|
|
self.environment.get_build_dir(), |
|
|
|
|
|
|
|
deps, |
|
|
|
|
|
|
|
sln_filename) |
|
|
|
|
|
|
|
pickle.dump(regeninfo, open(os.path.join(self.environment.get_scratch_dir(), 'regeninfo.dump'), 'wb')) |
|
|
|
|
|
|
|
|
|
|
|
def get_obj_target_deps(self, obj_list): |
|
|
|
def get_obj_target_deps(self, obj_list): |
|
|
|
result = {} |
|
|
|
result = {} |
|
|
|