* [PATCH] don't call sparse when called to generate dependencies
@ 2008-08-25 21:33 Alexander Shishkin
2008-08-26 7:44 ` Bernd Petrovitsch
2008-08-27 0:43 ` Josh Triplett
0 siblings, 2 replies; 5+ messages in thread
From: Alexander Shishkin @ 2008-08-25 21:33 UTC (permalink / raw)
To: sparse development list; +Cc: Alexander Shishkin
I have a situation here when $(CC) is called with -M options with
slighly different set of -I/-D/etc arguments, which causes all sorts of
funny reports from sparse. Also, this increases the overall build time
because every compilation unit if sparsed twice.
Signed-off-by: Alexander Shishkin <alexander.shishckin@gmail.com>
---
cgcc | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/cgcc b/cgcc
index 4fab530..89adbed 100755
--- a/cgcc
+++ b/cgcc
@@ -7,6 +7,7 @@ my $check = $ENV{'CHECK'} || 'sparse';
my $m32 = 0;
my $m64 = 0;
my $has_specs = 0;
+my $gendeps = 0;
my $do_check = 0;
my $do_compile = 1;
my $verbose = 0;
@@ -22,6 +23,7 @@ foreach (@ARGV) {
$m32 = 1 if /^-m32$/;
$m64 = 1 if /^-m64$/;
+ $gendeps = 1 if /^-M$/;
if (/^-specs=(.*)$/) {
$check .= &add_specs ($1);
@@ -44,6 +46,11 @@ foreach (@ARGV) {
$check .= $this_arg unless &cc_only_option ($_);
}
+if ($gendeps) {
+ $do_compile = 1;
+ $do_check = 0;
+}
+
if ($do_check) {
if (!$has_specs) {
$check .= &add_specs ('host_arch_specs');
--
1.5.6.3
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [PATCH] don't call sparse when called to generate dependencies
2008-08-25 21:33 [PATCH] don't call sparse when called to generate dependencies Alexander Shishkin
@ 2008-08-26 7:44 ` Bernd Petrovitsch
2008-08-26 9:19 ` Alexander Shishkin
2008-08-27 0:43 ` Josh Triplett
1 sibling, 1 reply; 5+ messages in thread
From: Bernd Petrovitsch @ 2008-08-26 7:44 UTC (permalink / raw)
To: sparse development list
On Tue, 2008-08-26 at 00:33 +0300, Alexander Shishkin wrote:
> I have a situation here when $(CC) is called with -M options with
> slighly different set of -I/-D/etc arguments, which causes all sorts of
I (obviously) don't know any details about your situation but do you
have any specific reason that you have different sets of -I/-D
parameters on dependency generation and the real compile run?
Personally I see only subtle problems on the horizon with such a
situation.
Let alone that it is somewhat simpler to have *one* CFLAGS/CPPFLAGS/...
variable and use that everywhere.
Bernd
--
Firmix Software GmbH http://www.firmix.at/
mobil: +43 664 4416156 fax: +43 1 7890849-55
Embedded Linux Development and Services
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] don't call sparse when called to generate dependencies
2008-08-26 7:44 ` Bernd Petrovitsch
@ 2008-08-26 9:19 ` Alexander Shishkin
2008-08-26 10:00 ` Bernd Petrovitsch
0 siblings, 1 reply; 5+ messages in thread
From: Alexander Shishkin @ 2008-08-26 9:19 UTC (permalink / raw)
To: Bernd Petrovitsch; +Cc: sparse development list
On Tue, Aug 26, 2008 at 10:44 AM, Bernd Petrovitsch <bernd@firmix.at> wrote:
> I (obviously) don't know any details about your situation but do you
> have any specific reason that you have different sets of -I/-D
> parameters on dependency generation and the real compile run?
To put a long story short: I run sparse against netbsd tree. To be
slightly more elaborate, I should mention that I wasn't able so far to
fully appreciate the beauty and elegance of certain design decisions
of the project in question. Nevertheless, I'm seeing different reports
from gendep and compilation runs.
> Personally I see only subtle problems on the horizon with such a
> situation.
> Let alone that it is somewhat simpler to have *one* CFLAGS/CPPFLAGS/...
> variable and use that everywhere.
Well, that aside, the overall build time significantly increases with
having to run sparse twice. Same warnings/errors are reported twice.
I still think that sparse has no business validating any code when
cgcc is called in -M mode; all those files are going to be compiled
later on anyway. And it's the compilation stage where warnings are
desirable.
Regards,
--
Alex
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] don't call sparse when called to generate dependencies
2008-08-26 9:19 ` Alexander Shishkin
@ 2008-08-26 10:00 ` Bernd Petrovitsch
0 siblings, 0 replies; 5+ messages in thread
From: Bernd Petrovitsch @ 2008-08-26 10:00 UTC (permalink / raw)
To: Alexander Shishkin; +Cc: sparse development list
On Tue, 2008-08-26 at 12:19 +0300, Alexander Shishkin wrote:
> On Tue, Aug 26, 2008 at 10:44 AM, Bernd Petrovitsch <bernd@firmix.at> wrote:
[....]
> > Let alone that it is somewhat simpler to have *one* CFLAGS/CPPFLAGS/...
> > variable and use that everywhere.
> Well, that aside, the overall build time significantly increases with
> having to run sparse twice. Same warnings/errors are reported twice.
Of course (and especially on a large source tree).
> I still think that sparse has no business validating any code when
> cgcc is called in -M mode; all those files are going to be compiled
Yes, that also seems superflous to me in general.
> later on anyway. And it's the compilation stage where warnings are
> desirable.
ACK.
Bernd
--
Firmix Software GmbH http://www.firmix.at/
mobil: +43 664 4416156 fax: +43 1 7890849-55
Embedded Linux Development and Services
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] don't call sparse when called to generate dependencies
2008-08-25 21:33 [PATCH] don't call sparse when called to generate dependencies Alexander Shishkin
2008-08-26 7:44 ` Bernd Petrovitsch
@ 2008-08-27 0:43 ` Josh Triplett
1 sibling, 0 replies; 5+ messages in thread
From: Josh Triplett @ 2008-08-27 0:43 UTC (permalink / raw)
To: Alexander Shishkin; +Cc: sparse development list
On Tue, 2008-08-26 at 00:33 +0300, Alexander Shishkin wrote:
> I have a situation here when $(CC) is called with -M options with
> slighly different set of -I/-D/etc arguments, which causes all sorts of
> funny reports from sparse. Also, this increases the overall build time
> because every compilation unit if sparsed twice.
Makes sense, given that -M implies -E. Applied, thanks.
- Josh Triplett
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2008-08-27 0:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-25 21:33 [PATCH] don't call sparse when called to generate dependencies Alexander Shishkin
2008-08-26 7:44 ` Bernd Petrovitsch
2008-08-26 9:19 ` Alexander Shishkin
2008-08-26 10:00 ` Bernd Petrovitsch
2008-08-27 0:43 ` Josh Triplett
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).