backports: add make help and defconfig-help targets
authorLuis R. Rodriguez <mcgrof@do-not-panic.com>
Fri, 12 Jul 2013 00:34:30 +0000 (17:34 -0700)
committerLuis R. Rodriguez <mcgrof@do-not-panic.com>
Fri, 12 Jul 2013 00:43:57 +0000 (17:43 -0700)
Throw users a bone by helping them compile specific target
drivers. Hauke did some good work in providing tons of
defconfigs, provide a command to let users query these
easily with 'make defconfig-help'. Also provide a more
generic 'make help' target.

Screenshot of make defconfig-help:

mcgrof@frijol ~/backports-20130618 $ make defconfig-help
Driver or subsystem configuration targets:
  defconfig-alx
  defconfig-ar5523
  defconfig-ath5k
  defconfig-ath6kl
  defconfig-ath9k
  defconfig-ath10k
  defconfig-b43
  defconfig-b43legacy
  defconfig-brcmfmac
  defconfig-brcmsmac
  defconfig-carl9170
  defconfig-drm
  defconfig-ieee802154
  defconfig-iwlwifi
  defconfig-media
  defconfig-nfc
  defconfig-regulator
  defconfig-rtlwifi
  defconfig-wifi
  defconfig-wil6210

Running 'make help' will provide the above and in addition to that
something similar to what the Linux kernel provides with the
list of supported targets backports provides.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
backport/Makefile

index 421a4f65198bf2d4ce1bad38e7437239b60ffe79..ca69f41889fbacfcc451a54a97d34ea51b9ca5a0 100644 (file)
@@ -112,6 +112,53 @@ mrproper:
        echo "$(CONFIG_MD5)" > .kernel_config_md5
        @$(MAKE) -f Makefile.real "$@"
 
+.PHONY: defconfig-help
+defconfig-help:
+       @echo "Driver or subsystem configuration targets:"
+       @set -e                                         ;\
+               bk_configs="$$(ls defconfigs/*)"        ;\
+               for cfg in $$bk_configs; do             \
+                       echo "  defconfig-$${cfg##defconfigs/}" ;\
+               done
+       @echo ""
+
+.PHONY: help
+help: defconfig-help
+       @echo "Cleaning targets:"
+       @echo "  clean           - Remove most generated files but keep the config and"
+       @echo "                    enough build support to build external modules"
+       @echo "  mrproper        - Remove all generated files + config + various backup files"
+       @echo ""
+       @echo "Driver configuration help:"
+       @echo "  defconfig-help  - List all prearranged defconfig-targets we have"
+       @echo "                    designed for you. You can use this to find"
+       @echo "                    driver specific configs in case all you really"
+       @echo "                    need is to just compile one or a small group "
+       @echo "                    of drivers."
+       @echo ""
+       @echo "Configuration targets:"
+       @echo "  menuconfig      - Update current config utilising a menu based program"
+       @echo "  allyesconfig    - New config where all options are accepted with yes"
+       @echo "  oldconfig       - Update current config utilising a provided .config as base"
+       @echo "  oldaskconfig    - ??"
+       @echo "  silentoldconfig - Same as oldconfig, but quietly, additionally update deps"
+       @echo "  allnoconfig     - New config where all options are answered with no"
+       @echo "  allyesconfig    - New config where all options are accepted with yes"
+       @echo "  allmodconfig    - New config selecting modules when possible"
+       @echo "  alldefconfig    - New config with all symbols set to default"
+       @echo "  randconfig      - New config with random answer to all options"
+       @echo "  listnewconfig   - List new options"
+       @echo "  olddefconfig    - Same as silentoldconfig but sets new symbols to their default value"
+       @echo ""
+       @echo "Other generic targets:"
+       @echo "  all             - Build all targets marked with [*]"
+       @echo "* modules         - Build all modules"
+       @echo ""
+       @echo "Architecture specific targets:"
+       @echo "  install         - Install modules"
+       @echo "  uninstall       - Uninstall modules"
+       @echo ""
+       @echo "Execute "make" or "make all" to build all targets marked with [*]"
 else
 include $(BACKPORT_PWD)/Makefile.kernel
 endif