根目录的Kconfig
项目根目录中的Kconfig是起始文件
根目录Kconfig添加自定义模块下的Kconfig
mainmenu "RT-Thread Project Configuration"
BSP_DIR := .
RTT_DIR := rt-thread
PKGS_DIR := packages
source "$(RTT_DIR)/Kconfig"
osource "$PKGS_DIR/Kconfig"
source "$(BSP_DIR)/drivers/Kconfig"
//添加自定义模块
source "$(BSP_DIR)/my_mode/Kconfig"
自定义模块 Kconfig
自定义模块下的Kconfig内容如下my_mode\Kconfig
//显示菜单名
menu "my_mode app management"
config RT_USING_ORB
bool "Using Object Request Broker"
select RT_USING_FINSH
select FINSH_USING_MSH
default n
help
Using Object Request Broker
config RT_USING_ORB_DEMO
bool "Using Object Request Broker Demo"
select RT_USING_ORB
default n
help
Using Object Request Broker Demo
endmenu
自定义模块 SConscript
自定义模块SConscript内容如下 my_mode\orb\SConscript
import os
from building import *
cwd = GetCurrentDir()
src = Glob('*.c') + Glob('*.cpp')
CPPPATH = [cwd]
// 添加 目录 添加依赖宏定义
group = DefineGroup('orb', src, depend = ['RT_USING_ORB'], CPPPATH = CPPPATH)
list = os.listdir(cwd)
for item in list:
if os.path.isfile(os.path.join(cwd, item, 'SConscript')):
group = group + SConscript(os.path.join(item, 'SConscript'))
Return('group')
自定义模块 源码
自定义模块 源码my_mode\orb\orb.c
#ifdef RT_USING_ORB
orb_node_heard_type orb_node_heard;
#endif