初次创建仓库提交代码
1. 已经构建好了架子了。 2. 添加了示例的插件
This commit is contained in:
141
tests/data/customer_test.yaml
Normal file
141
tests/data/customer_test.yaml
Normal file
@ -0,0 +1,141 @@
|
||||
ConfigList:
|
||||
- ipc_iford.nor.glibc-11.1.0-squashfs.ssc029a.512.bga12_ddr4_defconfig
|
||||
- ipc-rtos_iford.spinand.glibc-11.1.0-ramdisk.ssc029a.512.bga12_ddr4_defconfig
|
||||
MiReleaseList: []
|
||||
MhalReleaseList: []
|
||||
|
||||
RtosReleaseList:
|
||||
- coremark
|
||||
- common
|
||||
- font
|
||||
- iqserver
|
||||
- disp_app
|
||||
- dualos_pipeline
|
||||
- aov_preload
|
||||
- cm4_preload
|
||||
- preload_rtos
|
||||
- preload_sample
|
||||
- lvgl
|
||||
- usb_gadget_app
|
||||
- aesdma
|
||||
- bdma
|
||||
- camclk
|
||||
- cpufreq
|
||||
- drvutil
|
||||
- emac
|
||||
- fcie
|
||||
- flash
|
||||
- fsp_qspi
|
||||
- gpio
|
||||
- i2c
|
||||
- input
|
||||
- int
|
||||
- ir
|
||||
- kernel
|
||||
- loadns
|
||||
- miu
|
||||
- mmupte
|
||||
- mspi
|
||||
- msys
|
||||
- padmux
|
||||
- pwm
|
||||
- rtc
|
||||
- rtcpwc
|
||||
- saradc
|
||||
- sdmmc
|
||||
- str
|
||||
- timer
|
||||
- tsensor
|
||||
- uart
|
||||
- voltage
|
||||
- watchdog
|
||||
- algo
|
||||
- decompress
|
||||
- freertos_plus_fat
|
||||
- lwfs
|
||||
- proxyfs
|
||||
- tcpip
|
||||
- arm
|
||||
- riscv
|
||||
- libc
|
||||
- newlib_stub
|
||||
- cam_dev_wrapper
|
||||
- cam_drv_poll
|
||||
- cam_fs_wrapper
|
||||
- cam_os_wrapper
|
||||
- cam_proc_wrapper
|
||||
- env_util
|
||||
- initcall
|
||||
- loadable_module
|
||||
- memmang
|
||||
- memmap
|
||||
- mempool
|
||||
- MsWrapper
|
||||
- newlib_stub
|
||||
- freertos_main
|
||||
- freertos_posix
|
||||
- sys_I_SW
|
||||
|
||||
|
||||
PmRtosReleaseList:
|
||||
- pm_aesdma
|
||||
- pm_bdma
|
||||
- pm_camclk
|
||||
- pm_cpufreq
|
||||
- pm_drvutil
|
||||
- pm_loadns
|
||||
- pm_emac
|
||||
- pm_flash
|
||||
- pm_fsp_qspi
|
||||
- pm_gpio
|
||||
- pm_i2c
|
||||
- pm_int
|
||||
- pm_ir
|
||||
- pm_kernel
|
||||
- pm_miu
|
||||
- pm_mmupte
|
||||
- pm_mspi
|
||||
- pm_msys
|
||||
- pm_padmux
|
||||
- pm_pcie
|
||||
- pm_pl011
|
||||
- pm_mhal_pm_clk
|
||||
- pm_pm_idle
|
||||
- pm_mhal_pm_mbx
|
||||
- pm_rtcpwc
|
||||
- pm_mhal_pm_sys
|
||||
- pm_mhal_pm_wdt
|
||||
- pm_pspi
|
||||
- pm_pwm
|
||||
- pm_pm_power
|
||||
- pm_rtc
|
||||
- pm_rtcpwc
|
||||
- pm_saradc
|
||||
- pm_sdmmc
|
||||
- pm_timer
|
||||
- pm_tsensor
|
||||
- pm_uart
|
||||
- pm_voltage
|
||||
- pm_watchdog
|
||||
- pm_decompress
|
||||
- pm_freertos_plus_fat
|
||||
- pm_lwfs
|
||||
- pm_proxyfs
|
||||
- pm_tcpip
|
||||
- pm_arm
|
||||
- pm_riscv
|
||||
- pm_cam_dev_wrapper
|
||||
- pm_cam_drv_poll
|
||||
- pm_cam_fs_wrapper
|
||||
- pm_cam_os_wrapper
|
||||
- pm_cam_proc_wrapper
|
||||
- pm_env_util
|
||||
- pm_initcall
|
||||
- pm_libc
|
||||
- pm_memmang
|
||||
- pm_memmap
|
||||
- pm_mempool
|
||||
- pm_MsWrapper
|
||||
- pm_freertos
|
||||
- pm_freertos_posix
|
||||
- pm_sys_I_SW
|
133
tests/data/test.mk
Normal file
133
tests/data/test.mk
Normal file
@ -0,0 +1,133 @@
|
||||
# 这是一个测试用的复杂 Makefile 示例
|
||||
# 包含了各种 Makefile 语法特性用于测试解析器
|
||||
|
||||
# 简单变量赋值
|
||||
SIMPLE_VAR = simple value
|
||||
|
||||
# 不同分隔符的变量赋值
|
||||
COLON_VAR := immediately expanded value
|
||||
|
||||
# 多行变量定义
|
||||
MULTILINE_VAR = first line \
|
||||
second line \
|
||||
third line
|
||||
|
||||
# 带注释的变量定义
|
||||
WITH_COMMENT = value with trailing comment # 这是一个注释
|
||||
|
||||
# 定义函数
|
||||
define MULTI_LINE_FUNCTION
|
||||
echo "This is line 1"
|
||||
echo "This is line 2"
|
||||
echo "This is line 3"
|
||||
endef
|
||||
|
||||
# 使用 += 追加变量内容
|
||||
APPEND_VAR = initial value
|
||||
APPEND_VAR += appended value
|
||||
|
||||
# 条件语句
|
||||
ifdef DEBUG
|
||||
LOG_LEVEL = debug
|
||||
else
|
||||
LOG_LEVEL = info
|
||||
endif
|
||||
|
||||
# 使用函数
|
||||
SOURCES = main.c util.c driver.c
|
||||
OBJECTS = $(patsubst %.c,%.o,$(SOURCES))
|
||||
|
||||
# 空变量定义
|
||||
EMPTY_VAR =
|
||||
|
||||
# 带特殊字符的变量定义
|
||||
SPECIAL_CHARS = $$HOME/bin:/usr/local/bin:$$PATH
|
||||
|
||||
# 引用其他变量
|
||||
COMPOUND_VAR = $(SIMPLE_VAR) and $(COLON_VAR)
|
||||
|
||||
# 内容中包含等号的变量
|
||||
EQUAL_IN_VALUE = key1=value1 key2=value2
|
||||
|
||||
# 目标定义
|
||||
all: build test
|
||||
|
||||
# 带多条命令的目标
|
||||
build:
|
||||
@echo "Building..." # 注释
|
||||
$(CC) -o output $(SOURCES)
|
||||
@echo "Build complete"
|
||||
|
||||
# 依赖于多个目标的规则
|
||||
test: unit_test integration_test
|
||||
@echo "All tests completed"
|
||||
|
||||
# 模式规则
|
||||
%.o: %.c
|
||||
$(CC) -c -o $@ $<
|
||||
|
||||
# 伪目标
|
||||
.PHONY: all clean test
|
||||
|
||||
# 复杂的多行命令
|
||||
clean:
|
||||
@echo "Cleaning up..."
|
||||
rm -f *.o
|
||||
rm -f output
|
||||
@echo "Clean complete"
|
||||
|
||||
# 变量中包含换行
|
||||
NEWLINE := line1$(shell echo)line2
|
||||
|
||||
# 带续行符的shell命令
|
||||
test_shell:
|
||||
for file in $(SOURCES); do \
|
||||
echo "Processing $$file"; \
|
||||
cat $$file | grep "TODO"; \
|
||||
done
|
||||
|
||||
# 使用 ?= 条件赋值
|
||||
CC ?= gcc
|
||||
|
||||
# 使用 != 执行命令并赋值
|
||||
CURRENT_DIR != pwd
|
||||
|
||||
# 包含其他 Makefile
|
||||
-include optional.mk
|
||||
include required.mk
|
||||
|
||||
# 导出变量到环境变量
|
||||
export PATH
|
||||
export JAVA_HOME = /usr/lib/jvm/default-java
|
||||
|
||||
# 嵌套使用变量
|
||||
NESTED = $($(VARNAME))
|
||||
|
||||
# 使用自动变量
|
||||
auto_vars: file1.c file2.c
|
||||
@echo "First prerequisite: $<"
|
||||
@echo "All prerequisites: $^"
|
||||
@echo "Target name: $@"
|
||||
|
||||
# 使用通配符
|
||||
HEADERS = $(wildcard *.h)
|
||||
|
||||
# 使用 vpath 指令
|
||||
vpath %.c src
|
||||
vpath %.h include
|
||||
|
||||
# 静态模式规则
|
||||
MODULES = mod1 mod2 mod3
|
||||
$(MODULES:%=%.o): %.o: %.c
|
||||
$(CC) -c -o $@ $<
|
||||
|
||||
# 字符串替换
|
||||
TEXT = Hello World
|
||||
REPLACED = $(subst Hello,Goodbye,$(TEXT))
|
||||
|
||||
# shell 命令输出作为变量内容
|
||||
VERSION := $(shell git describe --tags)
|
||||
|
||||
# 路径处理
|
||||
SRC_PATH = src/module/file.c
|
||||
FILE_NAME = $(notdir $(SRC_PATH))
|
52
tests/data/test_defconfig
Normal file
52
tests/data/test_defconfig
Normal file
@ -0,0 +1,52 @@
|
||||
# 这是一个测试用的复杂 defconfig 文件示例
|
||||
# 包含了各种 defconfig 语法特性用于测试解析器
|
||||
|
||||
# 简单的键值对,使用等号
|
||||
CONFIG_SIMPLE = y
|
||||
|
||||
# 使用等号前后有空格的键值对
|
||||
CONFIG_WITH_SPACES = y
|
||||
|
||||
# 没有空格的键值对
|
||||
CONFIG_NO_SPACES=y
|
||||
|
||||
# 带有数值的配置
|
||||
CONFIG_INT_VALUE = 100
|
||||
CONFIG_HEX_VALUE = 0x1000
|
||||
CONFIG_OCTAL_VALUE = 0755
|
||||
|
||||
# 带有字符串的配置
|
||||
CONFIG_STRING = "hello world"
|
||||
CONFIG_STRING_NO_QUOTES = hello world
|
||||
|
||||
# 带有特殊字符的配置
|
||||
CONFIG_PATH = /usr/local/bin:/usr/bin:/bin
|
||||
CONFIG_SPECIAL_CHARS = $HOME/.config
|
||||
|
||||
# 带有注释的配置
|
||||
CONFIG_WITH_COMMENT = y # 这是一个注释
|
||||
|
||||
# 多种格式混合
|
||||
CONFIG_MIXED = "value with spaces" # 和注释
|
||||
|
||||
# 空值配置
|
||||
CONFIG_EMPTY =
|
||||
|
||||
# 带有布尔值的配置
|
||||
CONFIG_BOOL_TRUE = y
|
||||
CONFIG_BOOL_FALSE = n
|
||||
|
||||
# 带有多行内容的配置(实际 defconfig 中不常见,但为测试解析器的健壮性添加)
|
||||
CONFIG_MULTILINE = first line \
|
||||
second line \
|
||||
third line
|
||||
|
||||
# 含有等号的值
|
||||
CONFIG_WITH_EQUAL = key=value
|
||||
|
||||
# 重复的键(后面的应该覆盖前面的)
|
||||
CONFIG_DUPLICATE = first
|
||||
CONFIG_DUPLICATE = second
|
||||
|
||||
# 长路径配置
|
||||
CONFIG_LONG_PATH = /very/long/path/to/some/file/that/might/wrap/around/in/editor/and/cause/parsing/issues/file.conf
|
Reference in New Issue
Block a user