Makefile (31d1b7710262fba12282b24083f20dc76e0efc93) | Makefile (558e78e3ce844c61ceffe32775dbefacf167b023) |
---|---|
1# SPDX-License-Identifier: GPL-2.0 2# =========================================================================== 3# Kernel configuration targets 4# These targets are used from top-level makefile 5 6PHONY += xconfig gconfig menuconfig config localmodconfig localyesconfig \ 7 build_menuconfig build_nconfig build_gconfig build_xconfig 8 --- 128 unchanged lines hidden (view full) --- 137 @echo ' olddefconfig - Same as oldconfig but sets new symbols to their' 138 @echo ' default value without prompting' 139 @echo ' kvmconfig - Enable additional options for kvm guest kernel support' 140 @echo ' xenconfig - Enable additional options for xen dom0 and guest kernel support' 141 @echo ' tinyconfig - Configure the tiniest possible kernel' 142 @echo ' testconfig - Run Kconfig unit tests (requires python3 and pytest)' 143 144# =========================================================================== | 1# SPDX-License-Identifier: GPL-2.0 2# =========================================================================== 3# Kernel configuration targets 4# These targets are used from top-level makefile 5 6PHONY += xconfig gconfig menuconfig config localmodconfig localyesconfig \ 7 build_menuconfig build_nconfig build_gconfig build_xconfig 8 --- 128 unchanged lines hidden (view full) --- 137 @echo ' olddefconfig - Same as oldconfig but sets new symbols to their' 138 @echo ' default value without prompting' 139 @echo ' kvmconfig - Enable additional options for kvm guest kernel support' 140 @echo ' xenconfig - Enable additional options for xen dom0 and guest kernel support' 141 @echo ' tinyconfig - Configure the tiniest possible kernel' 142 @echo ' testconfig - Run Kconfig unit tests (requires python3 and pytest)' 143 144# =========================================================================== |
145# Shared Makefile for the various kconfig executables: 146# conf: Used for defconfig, oldconfig and related targets | |
147# object files used by all kconfig flavours | 145# object files used by all kconfig flavours |
146common-objs := confdata.o expr.o symbol.o preprocess.o zconf.tab.o |
|
148 | 147 |
149conf-objs := conf.o zconf.tab.o 150 151hostprogs-y := conf 152 | |
153targets += zconf.lex.c 154 155# generated files seem to need this to find local include files 156HOSTCFLAGS_zconf.lex.o := -I$(src) 157HOSTCFLAGS_zconf.tab.o := -I$(src) 158 | 148targets += zconf.lex.c 149 150# generated files seem to need this to find local include files 151HOSTCFLAGS_zconf.lex.o := -I$(src) 152HOSTCFLAGS_zconf.tab.o := -I$(src) 153 |
154# conf: Used for defconfig, oldconfig and related targets 155hostprogs-y += conf 156conf-objs := conf.o $(common-objs) 157 |
|
159# nconf: Used for the nconfig target based on ncurses 160hostprogs-y += nconf | 158# nconf: Used for the nconfig target based on ncurses 159hostprogs-y += nconf |
161nconf-objs := nconf.o zconf.tab.o nconf.gui.o | 160nconf-objs := nconf.o nconf.gui.o $(common-objs) |
162 163HOSTLDLIBS_nconf = $(shell . $(obj)/.nconf-cfg && echo $$libs) 164HOSTCFLAGS_nconf.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) 165HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) 166 167$(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/.nconf-cfg 168 169# mconf: Used for the menuconfig target based on lxdialog 170hostprogs-y += mconf 171lxdialog := checklist.o inputbox.o menubox.o textbox.o util.o yesno.o | 161 162HOSTLDLIBS_nconf = $(shell . $(obj)/.nconf-cfg && echo $$libs) 163HOSTCFLAGS_nconf.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) 164HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) 165 166$(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/.nconf-cfg 167 168# mconf: Used for the menuconfig target based on lxdialog 169hostprogs-y += mconf 170lxdialog := checklist.o inputbox.o menubox.o textbox.o util.o yesno.o |
172mconf-objs := mconf.o zconf.tab.o $(addprefix lxdialog/, $(lxdialog)) | 171mconf-objs := mconf.o $(addprefix lxdialog/, $(lxdialog)) $(common-objs) |
173 174HOSTLDLIBS_mconf = $(shell . $(obj)/.mconf-cfg && echo $$libs) 175$(foreach f, mconf.o $(lxdialog), \ 176 $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/.mconf-cfg && echo $$$$cflags))) 177 178$(obj)/mconf.o: $(obj)/.mconf-cfg 179$(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/.mconf-cfg 180 181# qconf: Used for the xconfig target based on Qt 182hostprogs-y += qconf 183qconf-cxxobjs := qconf.o | 172 173HOSTLDLIBS_mconf = $(shell . $(obj)/.mconf-cfg && echo $$libs) 174$(foreach f, mconf.o $(lxdialog), \ 175 $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/.mconf-cfg && echo $$$$cflags))) 176 177$(obj)/mconf.o: $(obj)/.mconf-cfg 178$(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/.mconf-cfg 179 180# qconf: Used for the xconfig target based on Qt 181hostprogs-y += qconf 182qconf-cxxobjs := qconf.o |
184qconf-objs := zconf.tab.o | 183qconf-objs := $(common-objs) |
185 186HOSTLDLIBS_qconf = $(shell . $(obj)/.qconf-cfg && echo $$libs) 187HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/.qconf-cfg && echo $$cflags) 188 189$(obj)/qconf.o: $(obj)/.qconf-cfg $(obj)/qconf.moc 190 191quiet_cmd_moc = MOC $@ 192 cmd_moc = $(shell . $(obj)/.qconf-cfg && echo $$moc) -i $< -o $@ 193 194$(obj)/%.moc: $(src)/%.h $(obj)/.qconf-cfg 195 $(call cmd,moc) 196 197# gconf: Used for the gconfig target based on GTK+ 198hostprogs-y += gconf | 184 185HOSTLDLIBS_qconf = $(shell . $(obj)/.qconf-cfg && echo $$libs) 186HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/.qconf-cfg && echo $$cflags) 187 188$(obj)/qconf.o: $(obj)/.qconf-cfg $(obj)/qconf.moc 189 190quiet_cmd_moc = MOC $@ 191 cmd_moc = $(shell . $(obj)/.qconf-cfg && echo $$moc) -i $< -o $@ 192 193$(obj)/%.moc: $(src)/%.h $(obj)/.qconf-cfg 194 $(call cmd,moc) 195 196# gconf: Used for the gconfig target based on GTK+ 197hostprogs-y += gconf |
199gconf-objs := gconf.o zconf.tab.o | 198gconf-objs := gconf.o $(common-objs) |
200 201HOSTLDLIBS_gconf = $(shell . $(obj)/.gconf-cfg && echo $$libs) 202HOSTCFLAGS_gconf.o = $(shell . $(obj)/.gconf-cfg && echo $$cflags) 203 204$(obj)/gconf.o: $(obj)/.gconf-cfg 205 206$(obj)/zconf.tab.o: $(obj)/zconf.lex.c 207 208# check if necessary packages are available, and configure build flags 209define filechk_conf_cfg 210 $(CONFIG_SHELL) $< 211endef 212 213$(obj)/.%conf-cfg: $(src)/%conf-cfg.sh FORCE 214 $(call filechk,conf_cfg) 215 216clean-files += .*conf-cfg | 199 200HOSTLDLIBS_gconf = $(shell . $(obj)/.gconf-cfg && echo $$libs) 201HOSTCFLAGS_gconf.o = $(shell . $(obj)/.gconf-cfg && echo $$cflags) 202 203$(obj)/gconf.o: $(obj)/.gconf-cfg 204 205$(obj)/zconf.tab.o: $(obj)/zconf.lex.c 206 207# check if necessary packages are available, and configure build flags 208define filechk_conf_cfg 209 $(CONFIG_SHELL) $< 210endef 211 212$(obj)/.%conf-cfg: $(src)/%conf-cfg.sh FORCE 213 $(call filechk,conf_cfg) 214 215clean-files += .*conf-cfg |