Re: $CHECK can't be overridden

2007-03-22 Thread Al Viro
On Thu, Mar 22, 2007 at 01:15:25AM -0400, Dave Jones wrote:
> make help implies that supplying $CHECK on the command line
> should override sparse as the checker used when building with C=1
> Yet, this doesn't seem to be the case.
> 
> This would be useful for cases where for eg, sparse isn't in
> the $PATH, allowing an explicit path to the executable to be
> passed in automated build environments.

Eh?  Works fine here...

[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ cat >/tmp/foo <<'EOF'
#!/bin/sh
echo "$@"
EOF
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ chmod +x /tmp/foo
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ make clean
  CLEAN   /usr/src/cross-kernel/audit
  CLEAN   .tmp_versions
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ make CHECK=/tmp/foo C=1
  CHK include/linux/version.h
  CHK include/linux/utsrelease.h
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  CC  arch/x86_64/kernel/asm-offsets.s
  GEN include/asm-x86_64/asm-offsets.h
  HOSTCC  scripts/genksyms/genksyms.o
  HOSTCC  scripts/genksyms/lex.o
  HOSTCC  scripts/genksyms/parse.o
  HOSTLD  scripts/genksyms/genksyms
  CHECK   scripts/mod/empty.c
-D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise -D__x86_64__ -m64 
-nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.0.2/include 
-Wp,-MD,scripts/mod/.empty.o.d -nostdinc -isystem 
/usr/lib/gcc/x86_64-redhat-linux/4.0.2/include -D__KERNEL__ -Iinclude -include 
include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs 
-fno-strict-aliasing -fno-common -Os -m64 -mno-red-zone -mcmodel=kernel -pipe 
-fno-reorder-blocks -Wno-sign-compare -fno-asynchronous-unwind-tables 
-funit-at-a-time -mno-sse -mno-mmx -mno-sse2 -mno-3dnow 
-maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 
-fno-omit-frame-pointer -fno-optimize-sibling-calls -g 
-Wdeclaration-after-statement -Wno-pointer-sign -ffunction-sections 
-DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(empty) 
-DKBUILD_MODNAME=KBUILD_STR(empty) scripts/mod/empty.c
  CC  scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/file2alias.o
^C
make[2]: *** [scripts/mod/file2alias.o] Interrupt
make[1]: *** [scripts/mod] Interrupt
make: *** [scripts] Interrupt

Gets executed just fine...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-22 Thread Al Viro
On Thu, Mar 22, 2007 at 01:15:25AM -0400, Dave Jones wrote:
 make help implies that supplying $CHECK on the command line
 should override sparse as the checker used when building with C=1
 Yet, this doesn't seem to be the case.
 
 This would be useful for cases where for eg, sparse isn't in
 the $PATH, allowing an explicit path to the executable to be
 passed in automated build environments.

Eh?  Works fine here...

[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ cat /tmp/foo 'EOF'
#!/bin/sh
echo $@
EOF
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ chmod +x /tmp/foo
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ make clean
  CLEAN   /usr/src/cross-kernel/audit
  CLEAN   .tmp_versions
[EMAIL PROTECTED]:/usr/src/cross-kernel/audit$ make CHECK=/tmp/foo C=1
  CHK include/linux/version.h
  CHK include/linux/utsrelease.h
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  CC  arch/x86_64/kernel/asm-offsets.s
  GEN include/asm-x86_64/asm-offsets.h
  HOSTCC  scripts/genksyms/genksyms.o
  HOSTCC  scripts/genksyms/lex.o
  HOSTCC  scripts/genksyms/parse.o
  HOSTLD  scripts/genksyms/genksyms
  CHECK   scripts/mod/empty.c
-D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise -D__x86_64__ -m64 
-nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.0.2/include 
-Wp,-MD,scripts/mod/.empty.o.d -nostdinc -isystem 
/usr/lib/gcc/x86_64-redhat-linux/4.0.2/include -D__KERNEL__ -Iinclude -include 
include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs 
-fno-strict-aliasing -fno-common -Os -m64 -mno-red-zone -mcmodel=kernel -pipe 
-fno-reorder-blocks -Wno-sign-compare -fno-asynchronous-unwind-tables 
-funit-at-a-time -mno-sse -mno-mmx -mno-sse2 -mno-3dnow 
-maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 
-fno-omit-frame-pointer -fno-optimize-sibling-calls -g 
-Wdeclaration-after-statement -Wno-pointer-sign -ffunction-sections 
-DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(empty) 
-DKBUILD_MODNAME=KBUILD_STR(empty) scripts/mod/empty.c
  CC  scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/file2alias.o
^C
make[2]: *** [scripts/mod/file2alias.o] Interrupt
make[1]: *** [scripts/mod] Interrupt
make: *** [scripts] Interrupt

Gets executed just fine...
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Keith Owens
Dave Jones (on Thu, 22 Mar 2007 01:37:14 -0400) wrote:
>On Thu, Mar 22, 2007 at 04:26:39PM +1100, Keith Owens wrote:
> > Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
> > >make help implies that supplying $CHECK on the command line
> > >should override sparse as the checker used when building with C=1
> > >Yet, this doesn't seem to be the case.
> > >
> > >This would be useful for cases where for eg, sparse isn't in
> > >the $PATH, allowing an explicit path to the executable to be
> > >passed in automated build environments.
> > 
> > Works for me.
> > 
> > # make C=1 CHECK=foo
>
>Ah, my bad. I was thinking it was an environment var rather
>than a makefile var.  I was using 'CHECK=foo make bzImage C=1'

The default for 'make' is that environment variables do _not_ override
variables defined in the Makefiles.  You can change that behaviour with
the -e flag, 'CHECK=foo make -e bzImage C=1' should work.  'info make'
recommends against using -e, changing environments can lead to
unexpected side effects.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Dave Jones
On Thu, Mar 22, 2007 at 04:26:39PM +1100, Keith Owens wrote:
 > Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
 > >make help implies that supplying $CHECK on the command line
 > >should override sparse as the checker used when building with C=1
 > >Yet, this doesn't seem to be the case.
 > >
 > >This would be useful for cases where for eg, sparse isn't in
 > >the $PATH, allowing an explicit path to the executable to be
 > >passed in automated build environments.
 > 
 > Works for me.
 > 
 > # make C=1 CHECK=foo

Ah, my bad. I was thinking it was an environment var rather
than a makefile var.  I was using 'CHECK=foo make bzImage C=1'

Thanks,

Dave

-- 
http://www.codemonkey.org.uk
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Keith Owens
Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
>make help implies that supplying $CHECK on the command line
>should override sparse as the checker used when building with C=1
>Yet, this doesn't seem to be the case.
>
>This would be useful for cases where for eg, sparse isn't in
>the $PATH, allowing an explicit path to the executable to be
>passed in automated build environments.

Works for me.

# make C=1 CHECK=foo
Using somedir/linux as source for kernel
GEN someobj/Makefile
CHK include/linux/version.h
CHK include/linux/utsrelease.h
CHK include/linux/compile.h
CHECK   somedir/linux/kdb/modules/kdb_bt2.c
/bin/sh: foo: command not found


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Keith Owens
Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
make help implies that supplying $CHECK on the command line
should override sparse as the checker used when building with C=1
Yet, this doesn't seem to be the case.

This would be useful for cases where for eg, sparse isn't in
the $PATH, allowing an explicit path to the executable to be
passed in automated build environments.

Works for me.

# make C=1 CHECK=foo
Using somedir/linux as source for kernel
GEN someobj/Makefile
CHK include/linux/version.h
CHK include/linux/utsrelease.h
CHK include/linux/compile.h
CHECK   somedir/linux/kdb/modules/kdb_bt2.c
/bin/sh: foo: command not found


-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Dave Jones
On Thu, Mar 22, 2007 at 04:26:39PM +1100, Keith Owens wrote:
  Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
  make help implies that supplying $CHECK on the command line
  should override sparse as the checker used when building with C=1
  Yet, this doesn't seem to be the case.
  
  This would be useful for cases where for eg, sparse isn't in
  the $PATH, allowing an explicit path to the executable to be
  passed in automated build environments.
  
  Works for me.
  
  # make C=1 CHECK=foo

Ah, my bad. I was thinking it was an environment var rather
than a makefile var.  I was using 'CHECK=foo make bzImage C=1'

Thanks,

Dave

-- 
http://www.codemonkey.org.uk
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: $CHECK can't be overridden

2007-03-21 Thread Keith Owens
Dave Jones (on Thu, 22 Mar 2007 01:37:14 -0400) wrote:
On Thu, Mar 22, 2007 at 04:26:39PM +1100, Keith Owens wrote:
  Dave Jones (on Thu, 22 Mar 2007 01:15:25 -0400) wrote:
  make help implies that supplying $CHECK on the command line
  should override sparse as the checker used when building with C=1
  Yet, this doesn't seem to be the case.
  
  This would be useful for cases where for eg, sparse isn't in
  the $PATH, allowing an explicit path to the executable to be
  passed in automated build environments.
  
  Works for me.
  
  # make C=1 CHECK=foo

Ah, my bad. I was thinking it was an environment var rather
than a makefile var.  I was using 'CHECK=foo make bzImage C=1'

The default for 'make' is that environment variables do _not_ override
variables defined in the Makefiles.  You can change that behaviour with
the -e flag, 'CHECK=foo make -e bzImage C=1' should work.  'info make'
recommends against using -e, changing environments can lead to
unexpected side effects.

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/