[DEV] add version of C build
This commit is contained in:
parent
4b3072ddf2
commit
b0d300e3ff
@ -32,6 +32,7 @@ class HeritageList:
|
|||||||
self.flags_m=[]
|
self.flags_m=[]
|
||||||
self.flags_mm=[]
|
self.flags_mm=[]
|
||||||
self.flags_xx_version=1999
|
self.flags_xx_version=1999
|
||||||
|
self.flags_cc_version=1989
|
||||||
# sources list:
|
# sources list:
|
||||||
self.src=[]
|
self.src=[]
|
||||||
self.path=[]
|
self.path=[]
|
||||||
@ -66,6 +67,7 @@ class HeritageList:
|
|||||||
self.flags_cc=[]
|
self.flags_cc=[]
|
||||||
self.flags_xx=[]
|
self.flags_xx=[]
|
||||||
self.flags_xx_version=1999
|
self.flags_xx_version=1999
|
||||||
|
self.flags_xx_version=1989
|
||||||
self.flags_m=[]
|
self.flags_m=[]
|
||||||
self.flags_mm=[]
|
self.flags_mm=[]
|
||||||
# sources list:
|
# sources list:
|
||||||
@ -109,6 +111,8 @@ class HeritageList:
|
|||||||
append_to_list(self.src, element.src)
|
append_to_list(self.src, element.src)
|
||||||
if self.flags_xx_version < element.flags_xx_version:
|
if self.flags_xx_version < element.flags_xx_version:
|
||||||
self.flags_xx_version = element.flags_xx_version
|
self.flags_xx_version = element.flags_xx_version
|
||||||
|
if self.flags_cc_version < element.flags_cc_version:
|
||||||
|
self.flags_cc_version = element.flags_cc_version
|
||||||
|
|
||||||
|
|
||||||
class heritage:
|
class heritage:
|
||||||
@ -121,6 +125,7 @@ class heritage:
|
|||||||
self.flags_cc=[]
|
self.flags_cc=[]
|
||||||
self.flags_xx=[]
|
self.flags_xx=[]
|
||||||
self.flags_xx_version=1999
|
self.flags_xx_version=1999
|
||||||
|
self.flags_cc_version=1989
|
||||||
self.flags_m=[]
|
self.flags_m=[]
|
||||||
self.flags_mm=[]
|
self.flags_mm=[]
|
||||||
# sources list:
|
# sources list:
|
||||||
@ -140,6 +145,7 @@ class heritage:
|
|||||||
self.flags_mm = module.export_flags_mm
|
self.flags_mm = module.export_flags_mm
|
||||||
self.path = module.export_path
|
self.path = module.export_path
|
||||||
self.flags_xx_version = module.xx_version_api
|
self.flags_xx_version = module.xx_version_api
|
||||||
|
self.flags_cc_version = module.cc_version_api
|
||||||
|
|
||||||
def add_depends(self, depend):
|
def add_depends(self, depend):
|
||||||
self.depends.append(depend)
|
self.depends.append(depend)
|
||||||
@ -183,5 +189,7 @@ class heritage:
|
|||||||
self.add_sources(other.src)
|
self.add_sources(other.src)
|
||||||
if self.flags_xx_version < module.xx_version_api:
|
if self.flags_xx_version < module.xx_version_api:
|
||||||
self.flags_xx_version = module.xx_version_api
|
self.flags_xx_version = module.xx_version_api
|
||||||
|
if self.flags_cc_version < module.cc_version_api:
|
||||||
|
self.flags_cc_version = module.cc_version_api
|
||||||
|
|
||||||
|
|
||||||
|
@ -73,6 +73,8 @@ class Module:
|
|||||||
# CPP version:
|
# CPP version:
|
||||||
self.xx_version = 1999
|
self.xx_version = 1999
|
||||||
self.xx_version_api = 1999
|
self.xx_version_api = 1999
|
||||||
|
self.cc_version = 1989
|
||||||
|
self.cc_version_api = 1989
|
||||||
## end of basic INIT ...
|
## end of basic INIT ...
|
||||||
if moduleType == 'BINARY' \
|
if moduleType == 'BINARY' \
|
||||||
or moduleType == 'LIBRARY' \
|
or moduleType == 'LIBRARY' \
|
||||||
@ -187,6 +189,16 @@ class Module:
|
|||||||
##
|
##
|
||||||
def compile_m_to_o(self, file, binary, target, depancy):
|
def compile_m_to_o(self, file, binary, target, depancy):
|
||||||
file_src, file_dst, file_depend, file_cmd = target.file_generate_object(binary,self.name,self.originFolder,file)
|
file_src, file_dst, file_depend, file_cmd = target.file_generate_object(binary,self.name,self.originFolder,file)
|
||||||
|
cc_version = max(self.cc_version, depancy.flags_cc_version)
|
||||||
|
if cc_version == 2011:
|
||||||
|
local_cc_version_flags=["-std=c11", "-D__C_VERSION__=2011"]
|
||||||
|
elif cc_version == 1999:
|
||||||
|
local_cc_version_flags=["-std=c99", "-D__C_VERSION__=1999"]
|
||||||
|
elif cc_version == 1990:
|
||||||
|
local_cc_version_flags=["-std=c90", "-D__C_VERSION__=1990"]
|
||||||
|
else:
|
||||||
|
local_cc_version_flags=["-std=c89", "-D__C_VERSION__=1989"]
|
||||||
|
|
||||||
# create the command line befor requesting start:
|
# create the command line befor requesting start:
|
||||||
cmdLine=lutinTools.list_to_str([
|
cmdLine=lutinTools.list_to_str([
|
||||||
target.cc,
|
target.cc,
|
||||||
@ -197,6 +209,7 @@ class Module:
|
|||||||
lutinTools.add_prefix("-I",self.export_path),
|
lutinTools.add_prefix("-I",self.export_path),
|
||||||
lutinTools.add_prefix("-I",self.local_path),
|
lutinTools.add_prefix("-I",self.local_path),
|
||||||
lutinTools.add_prefix("-I",depancy.path),
|
lutinTools.add_prefix("-I",depancy.path),
|
||||||
|
local_cc_version_flags,
|
||||||
target.global_flags_cc,
|
target.global_flags_cc,
|
||||||
target.global_flags_m,
|
target.global_flags_m,
|
||||||
depancy.flags_cc,
|
depancy.flags_cc,
|
||||||
@ -268,6 +281,16 @@ class Module:
|
|||||||
##
|
##
|
||||||
def compile_cc_to_o(self, file, binary, target, depancy):
|
def compile_cc_to_o(self, file, binary, target, depancy):
|
||||||
file_src, file_dst, file_depend, file_cmd = target.file_generate_object(binary,self.name,self.originFolder,file)
|
file_src, file_dst, file_depend, file_cmd = target.file_generate_object(binary,self.name,self.originFolder,file)
|
||||||
|
cc_version = max(self.cc_version, depancy.flags_cc_version)
|
||||||
|
if cc_version == 2011:
|
||||||
|
local_cc_version_flags=["-std=c11", "-D__C_VERSION__=2011"]
|
||||||
|
elif cc_version == 1999:
|
||||||
|
local_cc_version_flags=["-std=c99", "-D__C_VERSION__=1999"]
|
||||||
|
elif cc_version == 1990:
|
||||||
|
local_cc_version_flags=["-std=c90", "-D__C_VERSION__=1990"]
|
||||||
|
else:
|
||||||
|
local_cc_version_flags=["-std=c89", "-D__C_VERSION__=1989"]
|
||||||
|
|
||||||
# create the command line befor requesting start:
|
# create the command line befor requesting start:
|
||||||
cmdLine=lutinTools.list_to_str([
|
cmdLine=lutinTools.list_to_str([
|
||||||
target.cc,
|
target.cc,
|
||||||
@ -278,6 +301,7 @@ class Module:
|
|||||||
lutinTools.add_prefix("-I",self.export_path),
|
lutinTools.add_prefix("-I",self.export_path),
|
||||||
lutinTools.add_prefix("-I",self.local_path),
|
lutinTools.add_prefix("-I",self.local_path),
|
||||||
lutinTools.add_prefix("-I",depancy.path),
|
lutinTools.add_prefix("-I",depancy.path),
|
||||||
|
local_cc_version_flags,
|
||||||
target.global_flags_cc,
|
target.global_flags_cc,
|
||||||
depancy.flags_cc,
|
depancy.flags_cc,
|
||||||
self.flags_cc,
|
self.flags_cc,
|
||||||
@ -662,6 +686,14 @@ class Module:
|
|||||||
if same_as_api == True:
|
if same_as_api == True:
|
||||||
self.xx_version_api = self.xx_version
|
self.xx_version_api = self.xx_version
|
||||||
|
|
||||||
|
def compile_version_CC(self, version, same_as_api=True):
|
||||||
|
c_version_list = [1989, 1990, 1999, 2011]
|
||||||
|
if version not in c_version_list:
|
||||||
|
debug.error("can not select C version : " + str(version) + " not in " + str(c_version_list))
|
||||||
|
self.cc_version = version
|
||||||
|
if same_as_api == True:
|
||||||
|
self.cc_version_api = self.cc_version
|
||||||
|
|
||||||
def add_src_file(self, list):
|
def add_src_file(self, list):
|
||||||
self.append_to_internalList(self.src, list, True)
|
self.append_to_internalList(self.src, list, True)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user