70 lines
1.7 KiB
Python
70 lines
1.7 KiB
Python
import os
|
|
import sys
|
|
import rtconfig
|
|
from building import *
|
|
|
|
def get_source(ic_model, file_path, system_path, base_path):
|
|
source_path = []
|
|
files_list = []
|
|
readafter = 0
|
|
if not os.path.isfile(file_path):
|
|
return
|
|
|
|
with open(file_path, 'r') as file:
|
|
# content = file.read()
|
|
for line in file:
|
|
if readafter == 2 and line.find('>') != -1:
|
|
break
|
|
if readafter == 2:
|
|
files_list.append(line.strip())
|
|
if line.find(ic_model) != -1:
|
|
readafter = 1
|
|
if readafter == 1 and line.find('<') != -1:
|
|
readafter = 2
|
|
for line in files_list:
|
|
if line.find('system') != -1:
|
|
source_path.append(os.path.join(system_path, line.strip()))
|
|
else:
|
|
source_path.append(os.path.join(base_path, line.strip()))
|
|
return source_path
|
|
|
|
Import('rtconfig')
|
|
|
|
tools_path = os.path.normpath(os.getcwd() + '../../..' + '/tools')
|
|
sys.path.append(tools_path)
|
|
|
|
|
|
source_file_path = os.path.join(os.getcwd(), 'Source_file')
|
|
base_path = 'library/HT32F1xxxx_Driver/src/'
|
|
system_path = 'library/Device/Holtek/HT32F1xxxx/Source/'
|
|
source_path = []
|
|
ic_list = [
|
|
'HT32F1654',
|
|
'HT32F1656',
|
|
'HT32F12345',
|
|
'HT32F12364',
|
|
'HT32F12366'
|
|
]
|
|
|
|
cwd = GetCurrentDir()
|
|
src = []
|
|
|
|
for ic_name in ic_list:
|
|
if GetDepend(['SOC_' + ic_name]):
|
|
source_path = get_source(ic_name,source_file_path,system_path,base_path)
|
|
|
|
src = Split(source_path)
|
|
|
|
path = [
|
|
cwd + '/library/HT32F1xxxx_Driver/inc',
|
|
cwd + '/library/CMSIS/Include',
|
|
cwd + '/library/Device/Holtek/HT32F1xxxx/Include'
|
|
]
|
|
|
|
CPPDEFINES = ['USE_HT32_DRIVER']
|
|
|
|
group = DefineGroup('Libraries', src, depend = [''], CPPPATH = path, CPPDEFINES = CPPDEFINES)
|
|
|
|
Return('group')
|
|
|