)]}'
{
  "log": [
    {
      "commit": "69349c2dc01c489eccaa4c472542c08e370c6d7e",
      "tree": "2422ef07a511d51714e0e16da1ac65c7256e9add",
      "parents": [
        "7c427f45503f77f148cc2b66864e0684c60fa3a0"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu Apr 12 19:46:32 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 12 18:35:58 2012 -0700"
      },
      "message": "kconfig: fix IS_ENABLED to not require all options to be defined\n\nUsing IS_ENABLED() within C (vs.  within CPP #if statements) in its\ncurrent form requires us to actually define every possible bool/tristate\nKconfig option twice (__enabled_* and __enabled_*_MODULE variants).\n\nThis results in a huge autoconf.h file, on the order of 16k lines for a\nx86_64 defconfig.\n\nFixing IS_ENABLED to be able to work on the smaller subset of just\nthings that we really have defined is step one to fixing this.  Which\nmeans it has to not choke when fed non-enabled options, such as:\n\n  include/linux/netdevice.h:964:1: warning: \"__enabled_CONFIG_FCOE_MODULE\" is not defined [-Wundef]\n\nThe original prototype of how to implement a C and preprocessor\ncompatible way of doing this came from the Google+ user \"comex .\" in\nresponse to Linus\u0027 crowdsourcing challenge for a possible improvement on\nhis earlier C specific solution:\n\n\t#define config_enabled(x)       (__stringify(x)[0] \u003d\u003d \u00271\u0027)\n\nIn this implementation, I\u0027ve chosen variable names that hopefully make\nhow it works more understandable.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a11c8ea20bf850b3a2c60db8c2e7497d28aba99",
      "tree": "975a44ccb84f5fb182fa1d6d58025b0cde381965",
      "parents": [
        "bac6aa865b3dc98e9fbc17f11d4d513d6b0bc435"
      ],
      "author": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Wed Jul 20 17:38:57 2011 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Fri Jul 29 21:53:30 2011 +0200"
      },
      "message": "kconfig: Introduce IS_ENABLED(), IS_BUILTIN() and IS_MODULE()\n\nReplace the config_is_*() macros with a variant that allows for grepping\nfor usage of CONFIG_* options in the code. Usage:\n\n  if (IS_ENABLED(CONFIG_NUMA))\n\nor\n\n  #if IS_ENABLED(CONFIG_NUMA)\n\nThe IS_ENABLED() macro evaluates to 1 if the argument is set (to either \u0027y\u0027\nor \u0027m\u0027), IS_BUILTIN() tests if the option is \u0027y\u0027 and IS_MODULE() test if\nthe option is \u0027m\u0027. Only boolean and tristate options are supported.\n\nReviewed-by: Arnaud Lacombe \u003clacombar@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    }
  ]
}
