]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - scripts/kconfig/Makefile
Merge branch 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mv-sheeva.git] / scripts / kconfig / Makefile
index 5ddf8becd7a2120760407b30280424713b9de6c8..6d69c7ccdcc788519efc06297678cfc50f9082d0 100644 (file)
@@ -2,7 +2,8 @@
 # Kernel configuration targets
 # These targets are used from top-level makefile
 
-PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config
+PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config \
+       localmodconfig localyesconfig
 
 ifdef KBUILD_KCONFIG
 Kconfig := $(KBUILD_KCONFIG)
@@ -28,6 +29,35 @@ oldconfig: $(obj)/conf
 silentoldconfig: $(obj)/conf
        $< -s $(Kconfig)
 
+localmodconfig: $(obj)/streamline_config.pl $(obj)/conf
+       $(Q)perl $< $(Kconfig) > .tmp.config
+       $(Q)if [ -f .config ]; then                             \
+                       cmp -s .tmp.config .config ||           \
+                       (mv -f .config .config.old.1;           \
+                        mv -f .tmp.config .config;             \
+                        $(obj)/conf -s $(Kconfig);             \
+                        mv -f .config.old.1 .config.old)       \
+       else                                                    \
+                       mv -f .tmp.config .config;              \
+                       $(obj)/conf -s $(Kconfig);              \
+       fi
+       $(Q)rm -f .tmp.config
+
+localyesconfig: $(obj)/streamline_config.pl $(obj)/conf
+       $(Q)perl $< $(Kconfig) > .tmp.config
+       $(Q)sed -i s/=m/=y/ .tmp.config
+       $(Q)if [ -f .config ]; then                             \
+                       cmp -s .tmp.config .config ||           \
+                       (mv -f .config .config.old.1;           \
+                        mv -f .tmp.config .config;             \
+                        $(obj)/conf -s $(Kconfig);             \
+                        mv -f .config.old.1 .config.old)       \
+       else                                                    \
+                       mv -f .tmp.config .config;              \
+                       $(obj)/conf -s $(Kconfig);              \
+       fi
+       $(Q)rm -f .tmp.config
+
 # Create new linux.pot file
 # Adjust charset to UTF-8 in .po file to accept UTF-8 in Kconfig files
 # The symlink is used to repair a deficiency in arch/um
@@ -83,6 +113,8 @@ help:
        @echo  '  xconfig         - Update current config utilising a QT based front-end'
        @echo  '  gconfig         - Update current config utilising a GTK based front-end'
        @echo  '  oldconfig       - Update current config utilising a provided .config as base'
+       @echo  '  localmodconfig  - Update current config disabling modules not loaded'
+       @echo  '  localyesconfig  - Update current config converting local mods to core'
        @echo  '  silentoldconfig - Same as oldconfig, but quietly, additionally update deps'
        @echo  '  randconfig      - New config with random answer to all options'
        @echo  '  defconfig       - New config with default answer to all options'