openwrt系统中,网络相关相关的内核配置宏在netsupport.mk中文件中定义的,比如下面这2个功能,KCONFIG的宏定义是开启的,实际在启动编译的时候并没有进行编译,为什么呢?
define KernelPackage/sched-connmark
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Traffic shaper conntrack mark support
DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
KCONFIG:=CONFIG_NET_ACT_CONNMARK
FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
AUTOLOAD:=$(call AutoLoad,71, act_connmark)
endef
$(eval $(call KernelPackage,sched-connmark))
define KernelPackage/sched-esfq
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Traffic shaper ESFQ support
DEPENDS:=+kmod-sched-core +kmod-ipt-core
KCONFIG:= \
CONFIG_NET_SCH_ESFQ \
CONFIG_NET_SCH_ESFQ_NFCT=y
FILES:=$(LINUX_DIR)/net/sched/sch_esfq.ko
endef
$(eval $(call KernelPackage,sched-esfq))
发现还需要再打开.config文件中的CONFIG_PACKAGE_kmod-sched-connmark和CONFIG_PACKAGE_kmod-sched-esfq