Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

编译所有bsp #533

Open
supperthomas opened this issue Aug 24, 2024 · 8 comments
Open

编译所有bsp #533

supperthomas opened this issue Aug 24, 2024 · 8 comments

Comments

@supperthomas
Copy link
Owner

supperthomas commented Aug 24, 2024

  1. 分类bsp,根据yml文件来解析可以用的bsp

    每个toolchain下面对应bsp 然后python根据yml文件,来过滤需要编译的bsp 目录,如果目录不在yml中,就不编译,
    如果在的话,再判断是否在失败的bsp中,如果不在,就编译。

  2. 或者根据每个bsp下面的yml文件中的介绍来判断。

@supperthomas
Copy link
Owner Author

raspberry-pi/raspi2
ck802
yichip/yc3121-pos
synopsys/boards
zynqmp-a53-dfzu2eg
phytium/aarch64
ESP32_C3
mm32l07x
amebaz
nuclei/nuclei_fpga_eval
nuclei/gd32vf103_rvstar
thead-smart
ft2004
ti/c28x/tms320f28379d
stm32/stm32l431-tencentos-tiny-EVB_MX+
rockchip/rk2108
w60x
ht32/ht32f12366
ht32/ht32f52352
nuvoton/numaker-iot-ma35d1
nuvoton/nk-n9h30
nuvoton/numaker-hmi-ma35d1
nuvoton/nk-980iot
nuvoton/numaker-m2354
nuvoton/numaker-iot-m487
nuvoton/nk-rtu980
nuvoton/numaker-m032ki
nuvoton/ma35-rtp
nuvoton/numaker-m467hj
nuvoton/numaker-pfm-m487
nuvoton/numaker-iot-m467
airm2m/air105
qemu-virt64-aarch64
hc32l136
essemi/es32f365x
essemi/es32f0654
renesas/libraries/bsp-template
renesas/ra8m1-ek
renesas/ra8d1-ek
renesas/ra8d1-vision-board
fm33lc026
nxp/lpc/lpc55sxx/Libraries/template/lpc55s6xxxx
nxp/lpc/lpc5410x
nxp/lpc/lpc54608-LPCXpresso
nxp/lpc/lpc1114
nxp/lpc/lpc54114-lite
nxp/imx/imx6ull-smart
nxp/imx/imxrt/imxrt1170-nxp-evk/m7
microchip/saml10

@supperthomas
Copy link
Owner Author

  1. 按钮按下之后,update所有bsp,然后create PR

  2. 按下按钮之后,upload fail的bsp 和log

@supperthomas
Copy link
Owner Author

做一个脚本,检查所有bsp,并且生成yml

@supperthomas
Copy link
Owner Author

from multiprocessing import Process

def worker(n):
    print(f"Process {n} is working")

processes = []
for i in range(5):  # 假设你有 5 个任务
    p = Process(target=worker, args=(i,))
    p.start()
    processes.append(p)

for p in processes:
    p.join()  # 等待所有进程完成

@supperthomas
Copy link
Owner Author

1 如何上传失败log
2 如何遍历所有bsp
3.如何触发选项

@supperthomas
Copy link
Owner Author

  1. 先根据pr内容,解析出来要编译哪些bsp
    如果只有bsp内的文件修改,解析出bsp下一级的bsp目录进行编译
    参数:nrf5x,stm32
    如果只有bsp目录下面的文件夹修改,则就编这一个
    nrf5x/nrf52840

2.如果是没有bsp修改的,解析出来哪些文件夹修改,然后根据文件夹,来对所有bsp进行冒烟测试,只编译部分bsp(每个文件夹挑一个)
参数bsp_smoke

@supperthomas
Copy link
Owner Author

情况1:
只改了bsp
编译对应的bsp,全部编译
情况2:
改了除了bsp的文件,比如内核:
编译rt-spark

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant