47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
# Create stm32XXxx_hal_YYY.c files with #ifdefs
|
|
|
|
import os
|
|
|
|
serieses = ['f0', 'f1', 'f2', 'f3', 'f4', 'f7', 'l0', 'l1', 'l4']
|
|
|
|
all = []
|
|
|
|
for series in serieses:
|
|
files = os.listdir('../../STM32/system/STM32' + series.upper() + '/HAL_Src')
|
|
|
|
generic = [file.replace(series, 'XX') for file in files]
|
|
|
|
#print files
|
|
#print generic
|
|
|
|
all.extend(generic)
|
|
|
|
source = ""
|
|
source_ex = ""
|
|
|
|
for series in serieses:
|
|
|
|
source += '#ifdef STM32' + series.upper() + '\n'
|
|
source_ex += '#ifdef STM32' + series.upper() + '\n'
|
|
|
|
for x in sorted(set(all)):
|
|
if 'system' in x or 'template' in x:
|
|
continue
|
|
|
|
if os.path.isfile('../../STM32/system/STM32' + series.upper() + '/HAL_Src/' + x.replace('XX', series)):
|
|
if 'ex.c' in x:
|
|
source_ex += ' #include "' + x.replace('XX', series) + '"\n'
|
|
else:
|
|
source += ' #include "' + x.replace('XX', series) + '"\n'
|
|
|
|
source += '#endif\n'
|
|
source_ex += '#endif\n'
|
|
|
|
with open('stm32XXxx_hal.c', 'w') as file_hal:
|
|
file_hal.write('#include "stm32_build_defines.h"\n\n')
|
|
file_hal.write(source)
|
|
|
|
with open('stm32XXxx_hal_ex.c', 'w') as file_hal_ex:
|
|
file_hal_ex.write('#include "stm32_build_defines.h"\n\n')
|
|
file_hal_ex.write(source_ex)
|
|
|