Makefile (0da1d4a0b9516adb2acc4841e9f6da6618f47f4e) Makefile (022af62d0190e1e3db63c19aeb5f51ae0612cd71)
1# ===========================================================================
2# Kernel configuration targets
3# These targets are used from top-level makefile
4
5PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config \
6 localmodconfig localyesconfig
7
8ifdef KBUILD_KCONFIG

--- 90 unchanged lines hidden (view full) ---

99else
100 @echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'"
101 $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
102endif
103
104%_defconfig: $(obj)/conf
105 $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig)
106
1# ===========================================================================
2# Kernel configuration targets
3# These targets are used from top-level makefile
4
5PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config \
6 localmodconfig localyesconfig
7
8ifdef KBUILD_KCONFIG

--- 90 unchanged lines hidden (view full) ---

99else
100 @echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'"
101 $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
102endif
103
104%_defconfig: $(obj)/conf
105 $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig)
106
107configfiles=$(wildcard $(srctree)/kernel/configs/$(1).config $(srctree)/arch/$(SRCARCH)/configs/$(1).config)
108
109define mergeconfig
110$(if $(wildcard $(objtree)/.config),, $(error You need an existing .config for this target))
111$(if $(call configfiles,$(1)),, $(error No configuration exists for this target on this architecture))
112$(Q)$(CONFIG_SHELL) $(srctree)/scripts/kconfig/merge_config.sh -m -O $(objtree) $(objtree)/.config $(call configfiles,$(1))
113$(Q)yes "" | $(MAKE) -f $(srctree)/Makefile oldconfig
114endef
115
116PHONY += kvmconfig
117kvmconfig:
118 $(call mergeconfig,kvm_guest)
119
120PHONY += tinyconfig
121tinyconfig: allnoconfig
122 $(call mergeconfig,tiny)
123
124# Help text used by make help
125help:
126 @echo ' config - Update current config utilising a line-oriented program'
127 @echo ' nconfig - Update current config utilising a ncurses menu based program'
128 @echo ' menuconfig - Update current config utilising a menu based program'
129 @echo ' xconfig - Update current config utilising a QT based front-end'
130 @echo ' gconfig - Update current config utilising a GTK based front-end'
131 @echo ' oldconfig - Update current config utilising a provided .config as base'

--- 4 unchanged lines hidden (view full) ---

136 @echo ' savedefconfig - Save current config as ./defconfig (minimal config)'
137 @echo ' allnoconfig - New config where all options are answered with no'
138 @echo ' allyesconfig - New config where all options are accepted with yes'
139 @echo ' allmodconfig - New config selecting modules when possible'
140 @echo ' alldefconfig - New config with all symbols set to default'
141 @echo ' randconfig - New config with random answer to all options'
142 @echo ' listnewconfig - List new options'
143 @echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value'
107# Help text used by make help
108help:
109 @echo ' config - Update current config utilising a line-oriented program'
110 @echo ' nconfig - Update current config utilising a ncurses menu based program'
111 @echo ' menuconfig - Update current config utilising a menu based program'
112 @echo ' xconfig - Update current config utilising a QT based front-end'
113 @echo ' gconfig - Update current config utilising a GTK based front-end'
114 @echo ' oldconfig - Update current config utilising a provided .config as base'

--- 4 unchanged lines hidden (view full) ---

119 @echo ' savedefconfig - Save current config as ./defconfig (minimal config)'
120 @echo ' allnoconfig - New config where all options are answered with no'
121 @echo ' allyesconfig - New config where all options are accepted with yes'
122 @echo ' allmodconfig - New config selecting modules when possible'
123 @echo ' alldefconfig - New config with all symbols set to default'
124 @echo ' randconfig - New config with random answer to all options'
125 @echo ' listnewconfig - List new options'
126 @echo ' olddefconfig - Same as silentoldconfig but sets new symbols to their default value'
144 @echo ' kvmconfig - Enable additional options for guest kernel support'
145 @echo ' tinyconfig - Configure the tiniest possible kernel'
146
147# lxdialog stuff
148check-lxdialog := $(srctree)/$(src)/lxdialog/check-lxdialog.sh
149
150# Use recursively expanded variables so we do not call gcc unless
151# we really need to do so. (Do not call gcc as part of make mrproper)
152HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags) \
153 -DLOCALE

--- 17 unchanged lines hidden (view full) ---

171conf-objs := conf.o zconf.tab.o
172mconf-objs := mconf.o zconf.tab.o $(lxdialog)
173nconf-objs := nconf.o zconf.tab.o nconf.gui.o
174kxgettext-objs := kxgettext.o zconf.tab.o
175qconf-cxxobjs := qconf.o
176qconf-objs := zconf.tab.o
177gconf-objs := gconf.o zconf.tab.o
178
127
128# lxdialog stuff
129check-lxdialog := $(srctree)/$(src)/lxdialog/check-lxdialog.sh
130
131# Use recursively expanded variables so we do not call gcc unless
132# we really need to do so. (Do not call gcc as part of make mrproper)
133HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags) \
134 -DLOCALE

--- 17 unchanged lines hidden (view full) ---

152conf-objs := conf.o zconf.tab.o
153mconf-objs := mconf.o zconf.tab.o $(lxdialog)
154nconf-objs := nconf.o zconf.tab.o nconf.gui.o
155kxgettext-objs := kxgettext.o zconf.tab.o
156qconf-cxxobjs := qconf.o
157qconf-objs := zconf.tab.o
158gconf-objs := gconf.o zconf.tab.o
159
179hostprogs-y := conf
160hostprogs-y := conf nconf mconf kxgettext qconf gconf
180
161
181ifeq ($(MAKECMDGOALS),nconfig)
182 hostprogs-y += nconf
183endif
184
185ifeq ($(MAKECMDGOALS),menuconfig)
186 hostprogs-y += mconf
187endif
188
189ifeq ($(MAKECMDGOALS),update-po-config)
190 hostprogs-y += kxgettext
191endif
192
193ifeq ($(MAKECMDGOALS),xconfig)
194 qconf-target := 1
195endif
196ifeq ($(MAKECMDGOALS),gconfig)
197 gconf-target := 1
198endif
199
200
201ifeq ($(qconf-target),1)
202 hostprogs-y += qconf
203endif
204
205ifeq ($(gconf-target),1)
206 hostprogs-y += gconf
207endif
208
209clean-files := qconf.moc .tmp_qtcheck .tmp_gtkcheck
210clean-files += zconf.tab.c zconf.lex.c zconf.hash.c gconf.glade.h
211clean-files += mconf qconf gconf nconf
212clean-files += config.pot linux.pot
213
214# Check that we have the required ncurses stuff installed for lxdialog (menuconfig)
215PHONY += $(obj)/dochecklxdialog
216$(addprefix $(obj)/,$(lxdialog)): $(obj)/dochecklxdialog

--- 21 unchanged lines hidden (view full) ---

238
239HOSTLOADLIBES_mconf = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
240
241HOSTLOADLIBES_nconf = $(shell \
242 pkg-config --libs menu panel ncurses 2>/dev/null \
243 || echo "-lmenu -lpanel -lncurses" )
244$(obj)/qconf.o: $(obj)/.tmp_qtcheck
245
162clean-files := qconf.moc .tmp_qtcheck .tmp_gtkcheck
163clean-files += zconf.tab.c zconf.lex.c zconf.hash.c gconf.glade.h
164clean-files += mconf qconf gconf nconf
165clean-files += config.pot linux.pot
166
167# Check that we have the required ncurses stuff installed for lxdialog (menuconfig)
168PHONY += $(obj)/dochecklxdialog
169$(addprefix $(obj)/,$(lxdialog)): $(obj)/dochecklxdialog

--- 21 unchanged lines hidden (view full) ---

191
192HOSTLOADLIBES_mconf = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
193
194HOSTLOADLIBES_nconf = $(shell \
195 pkg-config --libs menu panel ncurses 2>/dev/null \
196 || echo "-lmenu -lpanel -lncurses" )
197$(obj)/qconf.o: $(obj)/.tmp_qtcheck
198
246ifeq ($(qconf-target),1)
199ifeq ($(MAKECMDGOALS),xconfig)
247$(obj)/.tmp_qtcheck: $(src)/Makefile
248-include $(obj)/.tmp_qtcheck
249
250# QT needs some extra effort...
251$(obj)/.tmp_qtcheck:
252 @set -e; echo " CHECK qt"; dir=""; pkg=""; \
253 if ! pkg-config --exists QtCore 2> /dev/null; then \
254 echo "* Unable to find the QT4 tool qmake. Trying to use QT3"; \

--- 40 unchanged lines hidden (view full) ---

295 fi; \
296 echo "KC_QT_CFLAGS=$$cflags" > $@; \
297 echo "KC_QT_LIBS=$$libs" >> $@; \
298 echo "KC_QT_MOC=$$moc" >> $@
299endif
300
301$(obj)/gconf.o: $(obj)/.tmp_gtkcheck
302
200$(obj)/.tmp_qtcheck: $(src)/Makefile
201-include $(obj)/.tmp_qtcheck
202
203# QT needs some extra effort...
204$(obj)/.tmp_qtcheck:
205 @set -e; echo " CHECK qt"; dir=""; pkg=""; \
206 if ! pkg-config --exists QtCore 2> /dev/null; then \
207 echo "* Unable to find the QT4 tool qmake. Trying to use QT3"; \

--- 40 unchanged lines hidden (view full) ---

248 fi; \
249 echo "KC_QT_CFLAGS=$$cflags" > $@; \
250 echo "KC_QT_LIBS=$$libs" >> $@; \
251 echo "KC_QT_MOC=$$moc" >> $@
252endif
253
254$(obj)/gconf.o: $(obj)/.tmp_gtkcheck
255
303ifeq ($(gconf-target),1)
256ifeq ($(MAKECMDGOALS),gconfig)
304-include $(obj)/.tmp_gtkcheck
305
306# GTK needs some extra effort, too...
307$(obj)/.tmp_gtkcheck:
308 @if `pkg-config --exists gtk+-2.0 gmodule-2.0 libglade-2.0`; then \
309 if `pkg-config --atleast-version=2.0.0 gtk+-2.0`; then \
310 touch $@; \
311 else \

--- 29 unchanged lines hidden ---
257-include $(obj)/.tmp_gtkcheck
258
259# GTK needs some extra effort, too...
260$(obj)/.tmp_gtkcheck:
261 @if `pkg-config --exists gtk+-2.0 gmodule-2.0 libglade-2.0`; then \
262 if `pkg-config --atleast-version=2.0.0 gtk+-2.0`; then \
263 touch $@; \
264 else \

--- 29 unchanged lines hidden ---