drbd/suse-coccinelle.patch

85 lines
3.9 KiB
Diff
Raw Normal View History

diff -Naur drbd-9.0.25~0+git.bd41626d.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh drbd-9.0.25~0+git.bd41626d/drbd/drbd-kernel-compat/gen_compat_patch.sh
--- drbd-9.0.25~0+git.bd41626d.orig/drbd/drbd-kernel-compat/gen_compat_patch.sh 2020-09-19 08:34:40.643919136 +0800
+++ drbd-9.0.25~0+git.bd41626d/drbd/drbd-kernel-compat/gen_compat_patch.sh 2020-09-19 08:50:59.095231966 +0800
@@ -44,9 +44,15 @@
if hash spatch && spatch_is_recent; then
K=$(cat $incdir/kernelrelease.txt)
+ echo " compat.h content ";
+ cat $incdir/compat.h;
+ echo " ------------------- ";
echo " GENPATCHNAMES "$K
gcc -I $incdir -o $incdir/gen_patch_names -std=c99 drbd-kernel-compat/gen_patch_names.c
$incdir/gen_patch_names > $incdir/applied_cocci_files.txt
+ echo " APPLIED_COCCI_FILES ";
+ cat $incdir/applied_cocci_files.txt;
+ echo " ------------------- ";
rm $incdir/gen_patch_names
rm -f $incdir/.compat.cocci
rm -f $incdir/.compat.patch
@@ -61,29 +67,46 @@
< drbd-kernel-compat/cocci/debugfs_compat_template.cocci.in \
>> $incdir/.compat.cocci
done
+
+ coccilibpath=$(rpm -ql coccinelle|grep standard.h|xargs dirname);
+ echo " SPATCH_SOURCES: "$*;
+ echo " COCCI_LIBPATH: "$coccilibpath;
+
if [ -e $incdir/.compat.cocci ]; then
- echo " SPATCH $chksum "$K
- # Note: $* (or $@) is NOT make magic variable now, this is a shell script
- # make $@, the target file, was passed as $1, and is now $compat_patch
- # make $^, the source (and header) files spatch should operate on,
- # are "the rest of the shell argument array", so after shifting the first
- # argument away this is shell $@ respectively $* now.
- # we know we don't have white-space in the argument list
+ echo " GENCOCCIRULES .compat.cocci";
+ cat $incdir/.compat.cocci;
- command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;"
+ echo " SPATCH $chksum "$K
+ # Note: $* (or $@) is NOT make magic variable now, this is a shell script
+ # make $@, the target file, was passed as $1, and is now $compat_patch
+ # make $^, the source (and header) files spatch should operate on,
+ # are "the rest of the shell argument array", so after shifting the first
+ # argument away this is shell $@ respectively $* now.
+ # we know we don't have white-space in the argument list
- if test -t 0; then
- $SHELL -c "$command"
- else
- # spatch is broken in a way: it "requires" a tty.
- # provide a tty using "script", so I can have several spatch in parallel.
- # They may ignore INT and TERM; if you have to, use HUP.
- </dev/null &> /dev/null script --append $incdir/.spatch.tty.out --return --quiet --command "$command"
- fi
+ command="spatch --sp-file $incdir/.compat.cocci $* --macro-file drbd-kernel-compat/cocci_macros.h --macro-file-builtins $coccilibpath/standard.h --iso-file $coccilibpath/standard.iso --very-quiet > $compat_patch.tmp 2> $incdir/.spatch.stderr;"
+ echo " SPATCH COMMAND $command ";
+
+ if test -t 0; then
+ $SHELL -c "$command"
+ else
+ # spatch is broken in a way: it "requires" a tty.
+ # provide a tty using "script", so I can have several spatch in parallel.
+ # They may ignore INT and TERM; if you have to, use HUP.
+ </dev/null &> /dev/null script --append $incdir/.spatch.tty.out --return --quiet --command "$command"
+ fi
else
- echo " SPATCH $chksum "$K" - nothing to do"
- touch $compat_patch.tmp
+ echo " SPATCH $chksum "$K" - nothing to do"
+ touch $compat_patch.tmp
+ fi
+
+ echo " GENSPATCHFILE $compat_patch.tmp ";
+ cat $compat_patch.tmp;
+ if [ -e $incdir/.spatch.stderr ]; then
+ echo " GENSPATCHERR .spatch.stderr";
+ cat $incdir/.spatch.stderr;
fi
+
if [ -e $incdir/.compat.patch ]; then
cat $incdir/.compat.patch >> $compat_patch.tmp
fi