提交 dc03c0f9 编写于 作者: L Linus Torvalds

Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild

Pull misc kbuild updates from Michal Marek:
 "This is the non-critical part of kbuild:

   - Coccinelle fixes, one semantic patch less in this round [Vaishali
     Thakkar, Wolfram Sang, Kees Cook]

   - rpm-pkg support for (open)SUSE's update-bootloader [Jiří Kosian]

   - rpm-pkg restored support for $RPMOPTS [Srinivas Pandruvada]

   - deb-pkg fixes for the linux-headers package [Bjørn Mork, Azriel
     Samson]"

* 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
  coccicheck: Fix missing 0 index in kill loop
  scripts/package/Makefile: rpmbuild add support of RPMOPTS
  builddeb: fix missing headers in linux-headers package
  builddeb: include objtool binary in headers package
  kbuild/mkspec: support 'update-bootloader'-based systems
  scripts: coccinelle: remove check to move constants to right
  Coccinelle: setup_timer: Add space in front of parentheses
...@@ -98,7 +98,7 @@ run_cmd() { ...@@ -98,7 +98,7 @@ run_cmd() {
} }
kill_running() { kill_running() {
for i in $(seq $(( NPROC - 1 )) ); do for i in $(seq 0 $(( NPROC - 1 )) ); do
if [ $VERBOSE -eq 2 ] ; then if [ $VERBOSE -eq 2 ] ; then
echo "Killing ${SPATCH_PID[$i]}" echo "Killing ${SPATCH_PID[$i]}"
fi fi
......
...@@ -106,7 +106,7 @@ position j0, j1, j2; ...@@ -106,7 +106,7 @@ position j0, j1, j2;
@match_function_and_data_after_init_timer_context @match_function_and_data_after_init_timer_context
depends on !patch && depends on !patch &&
!match_immediate_function_data_after_init_timer_context && !match_immediate_function_data_after_init_timer_context &&
(context || org || report)@ (context || org || report)@
expression a, b, e1, e2, e3, e4, e5; expression a, b, e1, e2, e3, e4, e5;
position j0, j1, j2; position j0, j1, j2;
@@ @@
...@@ -127,7 +127,7 @@ position j0, j1, j2; ...@@ -127,7 +127,7 @@ position j0, j1, j2;
@r3_context depends on !patch && @r3_context depends on !patch &&
!match_immediate_function_data_after_init_timer_context && !match_immediate_function_data_after_init_timer_context &&
!match_function_and_data_after_init_timer_context && !match_function_and_data_after_init_timer_context &&
(context || org || report)@ (context || org || report)@
expression c, e6, e7; expression c, e6, e7;
position r1.p; position r1.p;
position j0, j1; position j0, j1;
......
/// Move constants to the right of binary operators.
//# Depends on personal taste in some cases.
///
// Confidence: Moderate
// Copyright: (C) 2015 Copyright: (C) 2015 Julia Lawall, Inria. GPLv2.
// URL: http://coccinelle.lip6.fr/
// Options: --no-includes --include-headers
virtual patch
virtual context
virtual org
virtual report
@r1 depends on patch && !context && !org && !report
disable bitor_comm, neg_if_exp@
constant c,c1;
local idexpression i;
expression e,e1,e2;
binary operator b = {==,!=,&,|};
type t;
@@
(
c b (c1)
|
sizeof(t) b e1
|
sizeof e b e1
|
i b e1
|
c | e1 | e2 | ...
|
c | (e ? e1 : e2)
|
- c
+ e
b
- e
+ c
)
@r2 depends on patch && !context && !org && !report
disable gtr_lss, gtr_lss_eq, not_int2@
constant c,c1;
expression e,e1,e2;
binary operator b;
binary operator b1 = {<,<=},b2 = {<,<=};
binary operator b3 = {>,>=},b4 = {>,>=};
local idexpression i;
type t;
@@
(
c b c1
|
sizeof(t) b e1
|
sizeof e b e1
|
(e1 b1 e) && (e b2 e2)
|
(e1 b3 e) && (e b4 e2)
|
i b e
|
- c < e
+ e > c
|
- c <= e
+ e >= c
|
- c > e
+ e < c
|
- c >= e
+ e <= c
)
// ----------------------------------------------------------------------------
@r1_context depends on !patch && (context || org || report)
disable bitor_comm, neg_if_exp exists@
type t;
binary operator b = {==,!=,&,|};
constant c, c1;
expression e, e1, e2;
local idexpression i;
position j0;
@@
(
c b (c1)
|
sizeof(t) b e1
|
sizeof e b e1
|
i b e1
|
c | e1 | e2 | ...
|
c | (e ? e1 : e2)
|
* c@j0 b e
)
@r2_context depends on !patch && (context || org || report)
disable gtr_lss, gtr_lss_eq, not_int2 exists@
type t;
binary operator b, b1 = {<,<=}, b2 = {<,<=}, b3 = {>,>=}, b4 = {>,>=};
constant c, c1;
expression e, e1, e2;
local idexpression i;
position j0;
@@
(
c b c1
|
sizeof(t) b e1
|
sizeof e b e1
|
(e1 b1 e) && (e b2 e2)
|
(e1 b3 e) && (e b4 e2)
|
i b e
|
* c@j0 < e
|
* c@j0 <= e
|
* c@j0 > e
|
* c@j0 >= e
)
// ----------------------------------------------------------------------------
@script:python r1_org depends on org@
j0 << r1_context.j0;
@@
msg = "Move constant to right."
coccilib.org.print_todo(j0[0], msg)
@script:python r2_org depends on org@
j0 << r2_context.j0;
@@
msg = "Move constant to right."
coccilib.org.print_todo(j0[0], msg)
// ----------------------------------------------------------------------------
@script:python r1_report depends on report@
j0 << r1_context.j0;
@@
msg = "Move constant to right."
coccilib.report.print_report(j0[0], msg)
@script:python r2_report depends on report@
j0 << r2_context.j0;
@@
msg = "Move constant to right."
coccilib.report.print_report(j0[0], msg)
...@@ -52,7 +52,7 @@ rpm-pkg rpm: FORCE ...@@ -52,7 +52,7 @@ rpm-pkg rpm: FORCE
$(call cmd,src_tar,$(KERNELPATH),kernel.spec) $(call cmd,src_tar,$(KERNELPATH),kernel.spec)
$(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version
mv -f $(objtree)/.tmp_version $(objtree)/.version mv -f $(objtree)/.tmp_version $(objtree)/.version
rpmbuild --target $(UTS_MACHINE) -ta $(KERNELPATH).tar.gz rpmbuild $(RPMOPTS) --target $(UTS_MACHINE) -ta $(KERNELPATH).tar.gz
rm $(KERNELPATH).tar.gz kernel.spec rm $(KERNELPATH).tar.gz kernel.spec
# binrpm-pkg # binrpm-pkg
...@@ -63,7 +63,7 @@ binrpm-pkg: FORCE ...@@ -63,7 +63,7 @@ binrpm-pkg: FORCE
$(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version $(CONFIG_SHELL) $(srctree)/scripts/mkversion > $(objtree)/.tmp_version
mv -f $(objtree)/.tmp_version $(objtree)/.version mv -f $(objtree)/.tmp_version $(objtree)/.version
rpmbuild --define "_builddir $(objtree)" --target \ rpmbuild $(RPMOPTS) --define "_builddir $(objtree)" --target \
$(UTS_MACHINE) -bb $(objtree)/binkernel.spec $(UTS_MACHINE) -bb $(objtree)/binkernel.spec
rm binkernel.spec rm binkernel.spec
......
...@@ -322,7 +322,10 @@ fi ...@@ -322,7 +322,10 @@ fi
# Build kernel header package # Build kernel header package
(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles"
(cd $srctree; find arch/$SRCARCH/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles" if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then
(cd $srctree; find tools/objtool -type f -executable) >> "$objtree/debian/hdrsrcfiles"
fi
(cd $srctree; find arch/*/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles"
(cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles" (cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles"
(cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles"
(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f) >> "$objtree/debian/hdrobjfiles" (cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f) >> "$objtree/debian/hdrobjfiles"
......
...@@ -143,6 +143,11 @@ echo "if [ -x /sbin/new-kernel-pkg ]; then" ...@@ -143,6 +143,11 @@ echo "if [ -x /sbin/new-kernel-pkg ]; then"
echo "new-kernel-pkg --remove $KERNELRELEASE --rminitrd --initrdfile=/boot/initramfs-$KERNELRELEASE.img" echo "new-kernel-pkg --remove $KERNELRELEASE --rminitrd --initrdfile=/boot/initramfs-$KERNELRELEASE.img"
echo "fi" echo "fi"
echo "" echo ""
echo "%postun"
echo "if [ -x /sbin/update-bootloader ]; then"
echo "/sbin/update-bootloader --remove $KERNELRELEASE"
echo "fi"
echo ""
echo "%files" echo "%files"
echo '%defattr (-, root, root)' echo '%defattr (-, root, root)'
echo "/lib/modules/$KERNELRELEASE" echo "/lib/modules/$KERNELRELEASE"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册