From: Paul Gortmaker <paul.gortmaker@windriver.com> To: Linus Torvalds <torvalds@linux-foundation.org> Cc: <linux-kbuild@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <akpm@linux-foundation.org>, <davem@davemloft.net>, <tony@bakeyournoodle.com>, <mmarek@suse.cz>, <lacombar@gmail.com> Subject: Re: [PATCH 5/5] kconfig: limit IS_ENABLED & similar to CPP usage Date: Thu, 12 Apr 2012 13:46:29 -0400 [thread overview] Message-ID: <4F8714F5.1050605@windriver.com> (raw) In-Reply-To: <CA+55aFxmpotS+Yw0niuYRq4eqpYjx6=TAvoz8v=NxD3N_7u7qg@mail.gmail.com> On 12-04-11 08:04 PM, Linus Torvalds wrote: > On Wed, Apr 11, 2012 at 4:50 PM, Paul Gortmaker > <paul.gortmaker@windriver.com> wrote: >> Using IS_ENABLED() within C (vs. within CPP #if statements) requires >> us to actually define every possible bool/tristate Kconfig option >> twice (__enabled_* and __enabled_*_MODULE variants). > > Why do you keep the __enabled_*[_MODULE] things alive at all? Good point. Clearly I wasn't aggressive enough in my shitectomy. Testing with no __enabled_* stuff now. That reduces the line count even more, which is nice. I've not auto-prefixed the CONFIG_ though, since that seems to break the grep use case. P. > > Why can't you just check the CONFIG_xyz[_MODULE] #defines directly? > > IOW, why isn't IS_ENABLED() just > > #define IS_ENABLED(option) \ > (defined(CONFIG_##option) || defined(CONFIG_##option##_MODULE)) > > #define IS_BUILTIN(option) \ > (defined(CONFIG_##option)) > > and we're done with it all? What's the advantage of the __enabled_ > thing again, when you depend on the preprocessor anyway? > > Linus
WARNING: multiple messages have this Message-ID (diff)
From: Paul Gortmaker <paul.gortmaker@windriver.com> To: Linus Torvalds <torvalds@linux-foundation.org> Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, akpm@linux-foundation.org, davem@davemloft.net, tony@bakeyournoodle.com, mmarek@suse.cz, lacombar@gmail.com Subject: Re: [PATCH 5/5] kconfig: limit IS_ENABLED & similar to CPP usage Date: Thu, 12 Apr 2012 13:46:29 -0400 [thread overview] Message-ID: <4F8714F5.1050605@windriver.com> (raw) In-Reply-To: <CA+55aFxmpotS+Yw0niuYRq4eqpYjx6=TAvoz8v=NxD3N_7u7qg@mail.gmail.com> On 12-04-11 08:04 PM, Linus Torvalds wrote: > On Wed, Apr 11, 2012 at 4:50 PM, Paul Gortmaker > <paul.gortmaker@windriver.com> wrote: >> Using IS_ENABLED() within C (vs. within CPP #if statements) requires >> us to actually define every possible bool/tristate Kconfig option >> twice (__enabled_* and __enabled_*_MODULE variants). > > Why do you keep the __enabled_*[_MODULE] things alive at all? Good point. Clearly I wasn't aggressive enough in my shitectomy. Testing with no __enabled_* stuff now. That reduces the line count even more, which is nice. I've not auto-prefixed the CONFIG_ though, since that seems to break the grep use case. P. > > Why can't you just check the CONFIG_xyz[_MODULE] #defines directly? > > IOW, why isn't IS_ENABLED() just > > #define IS_ENABLED(option) \ > (defined(CONFIG_##option) || defined(CONFIG_##option##_MODULE)) > > #define IS_BUILTIN(option) \ > (defined(CONFIG_##option)) > > and we're done with it all? What's the advantage of the __enabled_ > thing again, when you depend on the preprocessor anyway? > > Linus
next prev parent reply other threads:[~2012-04-12 17:47 UTC|newest] Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-04-11 23:50 [PATCH 0/5] RFC: strip 15,000 lines from a typical autoconf.h Paul Gortmaker 2012-04-11 23:50 ` [PATCH 1/5] Revert "mm: replace PAGE_MIGRATION with IS_ENABLED(CONFIG_MIGRATION)" Paul Gortmaker 2012-04-12 0:05 ` Andrew Morton 2012-04-11 23:50 ` [PATCH 2/5] ARM: remove C users of IS_ENABLED on THUMB2_KERNEL Paul Gortmaker 2012-04-11 23:50 ` [PATCH 3/5] drivers/net: remove IS_ENABLED usage from wiznet drivers Paul Gortmaker 2012-04-11 23:54 ` David Miller 2012-04-12 0:06 ` Stephen Rothwell 2012-04-12 0:22 ` Stephen Rothwell 2012-04-12 17:15 ` Paul Gortmaker 2012-04-12 17:15 ` Paul Gortmaker 2012-04-11 23:50 ` [PATCH 4/5] Revert "kconfig: fix __enabled_ macros definition for invisible and un-selected symbols" Paul Gortmaker 2012-04-11 23:50 ` [PATCH 5/5] kconfig: limit IS_ENABLED & similar to CPP usage Paul Gortmaker 2012-04-12 0:04 ` Linus Torvalds 2012-04-12 17:46 ` Paul Gortmaker [this message] 2012-04-12 17:46 ` Paul Gortmaker 2012-04-11 23:58 ` [PATCH 0/5] RFC: strip 15,000 lines from a typical autoconf.h Linus Torvalds 2012-04-12 1:19 ` Linus Torvalds 2012-04-12 1:45 ` Andrew Morton 2012-04-12 1:55 ` Linus Torvalds 2012-04-12 3:10 ` Stephen Rothwell 2012-04-12 19:29 ` Linus Torvalds 2012-04-12 23:46 ` [PATCH 0/3] RFC v2: " Paul Gortmaker 2012-04-12 23:46 ` [PATCH 1/3] kconfig: fix IS_ENABLED to not require all options to be defined Paul Gortmaker 2012-04-13 10:31 ` Dick Streefland 2012-04-12 23:46 ` [PATCH 2/3] Revert "kconfig: fix __enabled_ macros definition for invisible and un-selected symbols" Paul Gortmaker 2012-04-12 23:46 ` [PATCH 3/3] kconfig: delete last traces of __enabled_ from autoconf.h Paul Gortmaker 2012-04-12 9:27 ` [PATCH 0/5] RFC: strip 15,000 lines from a typical autoconf.h Michal Marek
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4F8714F5.1050605@windriver.com \ --to=paul.gortmaker@windriver.com \ --cc=akpm@linux-foundation.org \ --cc=davem@davemloft.net \ --cc=lacombar@gmail.com \ --cc=linux-kbuild@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mmarek@suse.cz \ --cc=tony@bakeyournoodle.com \ --cc=torvalds@linux-foundation.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.