Message ID | 87imgykunh.fsf@m5Zedd9JOGzJrf0 (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | kbuild: compile_h: fix compiler version detection with clang | expand |
On Thu, May 14, 2020 at 3:43 PM Yuxuan Shui <yshuiv7@gmail.com> wrote: > > > In some setup clang will print a line about CUDA version it detects, > like this: > > Found CUDA installation: /opt/cuda, version 10.1 > > So grepping ' version ' matches 2 lines, and results in a broken string in > compiler.h, which doesn't compile. > > This commit adds a "head -n1" to fix this problem. > > Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com> Hi Yuxuan, thanks for the patch! Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Might be worthwhile for Masahiro to add Cc: stable@vger.kernel.org if/when picked up? > --- > scripts/mkcompile_h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/mkcompile_h b/scripts/mkcompile_h > index 5b80a4699740..8e6b4fc6fdd9 100755 > --- a/scripts/mkcompile_h > +++ b/scripts/mkcompile_h > @@ -62,7 +62,7 @@ UTS_VERSION="$(echo $UTS_VERSION $CONFIG_FLAGS $TIMESTAMP | cut -b -$UTS_LEN)" > printf '#define LINUX_COMPILE_BY "%s"\n' "$LINUX_COMPILE_BY" > echo \#define LINUX_COMPILE_HOST \"$LINUX_COMPILE_HOST\" > > - CC_VERSION=$($CC -v 2>&1 | grep ' version ' | sed 's/[[:space:]]*$//') > + CC_VERSION=$($CC -v 2>&1 | grep ' version ' | head -n1 | sed 's/[[:space:]]*$//') > LD_VERSION=$($LD -v | head -n1 | sed 's/(compatible with [^)]*)//' \ > | sed 's/[[:space:]]*$//') > printf '#define LINUX_COMPILER "%s"\n' "$CC_VERSION, $LD_VERSION" > -- > 2.26.2
On Fri, May 15, 2020 at 7:43 AM Yuxuan Shui <yshuiv7@gmail.com> wrote: > > > In some setup clang will print a line about CUDA version it detects, > like this: > > Found CUDA installation: /opt/cuda, version 10.1 > > So grepping ' version ' matches 2 lines, and results in a broken string in > compiler.h, which doesn't compile. > > This commit adds a "head -n1" to fix this problem. > > Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com> I do not know what to do about this. This problem had already been fixed by a different patch, which is queued up in linux-next. 9a950154668729a472d17b8e307d92e7c60f45f7 This patch https://patchwork.kernel.org/patch/11505803/ So, the future releases will be OK. For back-porting to the stable kernel, your one-liner fixup is simpler. > --- > scripts/mkcompile_h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/mkcompile_h b/scripts/mkcompile_h > index 5b80a4699740..8e6b4fc6fdd9 100755 > --- a/scripts/mkcompile_h > +++ b/scripts/mkcompile_h > @@ -62,7 +62,7 @@ UTS_VERSION="$(echo $UTS_VERSION $CONFIG_FLAGS $TIMESTAMP | cut -b -$UTS_LEN)" > printf '#define LINUX_COMPILE_BY "%s"\n' "$LINUX_COMPILE_BY" > echo \#define LINUX_COMPILE_HOST \"$LINUX_COMPILE_HOST\" > > - CC_VERSION=$($CC -v 2>&1 | grep ' version ' | sed 's/[[:space:]]*$//') > + CC_VERSION=$($CC -v 2>&1 | grep ' version ' | head -n1 | sed 's/[[:space:]]*$//') > LD_VERSION=$($LD -v | head -n1 | sed 's/(compatible with [^)]*)//' \ > | sed 's/[[:space:]]*$//') > printf '#define LINUX_COMPILER "%s"\n' "$CC_VERSION, $LD_VERSION" > -- > 2.26.2 -- Best Regards Masahiro Yamada
diff --git a/scripts/mkcompile_h b/scripts/mkcompile_h index 5b80a4699740..8e6b4fc6fdd9 100755 --- a/scripts/mkcompile_h +++ b/scripts/mkcompile_h @@ -62,7 +62,7 @@ UTS_VERSION="$(echo $UTS_VERSION $CONFIG_FLAGS $TIMESTAMP | cut -b -$UTS_LEN)" printf '#define LINUX_COMPILE_BY "%s"\n' "$LINUX_COMPILE_BY" echo \#define LINUX_COMPILE_HOST \"$LINUX_COMPILE_HOST\" - CC_VERSION=$($CC -v 2>&1 | grep ' version ' | sed 's/[[:space:]]*$//') + CC_VERSION=$($CC -v 2>&1 | grep ' version ' | head -n1 | sed 's/[[:space:]]*$//') LD_VERSION=$($LD -v | head -n1 | sed 's/(compatible with [^)]*)//' \ | sed 's/[[:space:]]*$//') printf '#define LINUX_COMPILER "%s"\n' "$CC_VERSION, $LD_VERSION"
In some setup clang will print a line about CUDA version it detects, like this: Found CUDA installation: /opt/cuda, version 10.1 So grepping ' version ' matches 2 lines, and results in a broken string in compiler.h, which doesn't compile. This commit adds a "head -n1" to fix this problem. Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com> --- scripts/mkcompile_h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.26.2