123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- 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')
|