diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-03-31 00:53:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-03-31 00:53:57 -0400 |
commit | b5dbc28762fd3fd40ba76303be0c7f707826f982 (patch) | |
tree | 8f6280bdce7dd17193eb122aa624dbd69266a13c | |
parent | a44406ec3d31de773ce50e794900546f22c1cc7b (diff) | |
parent | 28913ee8191adf4bbc01cbfb9ee18cca782ab141 (diff) |
Merge tag 'kbuild-fixes-v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull Kbuild fixes from Masahiro Yamada:
- fix missed rebuild of TRIM_UNUSED_KSYMS
- fix rpm-pkg for GNU tar >= 1.29
- include scripts/dtc/include-prefixes/* to kernel header deb-pkg
- add -no-integrated-as option ealier to fix building with Clang
- fix netfilter Makefile for parallel building
* tag 'kbuild-fixes-v4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
netfilter: nf_nat_snmp_basic: add correct dependency to Makefile
kbuild: rpm-pkg: Support GNU tar >= 1.29
builddeb: Fix header package regarding dtc source links
kbuild: set no-integrated-as before incl. arch Makefile
kbuild: make scripts/adjust_autoksyms.sh robust against timestamp races
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | net/ipv4/netfilter/Makefile | 2 | ||||
-rwxr-xr-x | scripts/adjust_autoksyms.sh | 7 | ||||
-rwxr-xr-x | scripts/package/builddeb | 2 | ||||
-rwxr-xr-x | scripts/package/mkspec | 2 |
5 files changed, 12 insertions, 5 deletions
@@ -487,6 +487,8 @@ CLANG_GCC_TC := --gcc-toolchain=$(GCC_TOOLCHAIN) | |||
487 | endif | 487 | endif |
488 | KBUILD_CFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) | 488 | KBUILD_CFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) |
489 | KBUILD_AFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) | 489 | KBUILD_AFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC) |
490 | KBUILD_CFLAGS += $(call cc-option, -no-integrated-as) | ||
491 | KBUILD_AFLAGS += $(call cc-option, -no-integrated-as) | ||
490 | endif | 492 | endif |
491 | 493 | ||
492 | RETPOLINE_CFLAGS_GCC := -mindirect-branch=thunk-extern -mindirect-branch-register | 494 | RETPOLINE_CFLAGS_GCC := -mindirect-branch=thunk-extern -mindirect-branch-register |
@@ -743,8 +745,6 @@ KBUILD_CFLAGS += $(call cc-disable-warning, tautological-compare) | |||
743 | # See modpost pattern 2 | 745 | # See modpost pattern 2 |
744 | KBUILD_CFLAGS += $(call cc-option, -mno-global-merge,) | 746 | KBUILD_CFLAGS += $(call cc-option, -mno-global-merge,) |
745 | KBUILD_CFLAGS += $(call cc-option, -fcatch-undefined-behavior) | 747 | KBUILD_CFLAGS += $(call cc-option, -fcatch-undefined-behavior) |
746 | KBUILD_CFLAGS += $(call cc-option, -no-integrated-as) | ||
747 | KBUILD_AFLAGS += $(call cc-option, -no-integrated-as) | ||
748 | else | 748 | else |
749 | 749 | ||
750 | # These warnings generated too much noise in a regular build. | 750 | # These warnings generated too much noise in a regular build. |
diff --git a/net/ipv4/netfilter/Makefile b/net/ipv4/netfilter/Makefile index 2dad20eefd26..9bd19cd18849 100644 --- a/net/ipv4/netfilter/Makefile +++ b/net/ipv4/netfilter/Makefile | |||
@@ -29,7 +29,7 @@ obj-$(CONFIG_NF_NAT_H323) += nf_nat_h323.o | |||
29 | obj-$(CONFIG_NF_NAT_PPTP) += nf_nat_pptp.o | 29 | obj-$(CONFIG_NF_NAT_PPTP) += nf_nat_pptp.o |
30 | 30 | ||
31 | nf_nat_snmp_basic-y := nf_nat_snmp_basic-asn1.o nf_nat_snmp_basic_main.o | 31 | nf_nat_snmp_basic-y := nf_nat_snmp_basic-asn1.o nf_nat_snmp_basic_main.o |
32 | nf_nat_snmp_basic-y : nf_nat_snmp_basic-asn1.h nf_nat_snmp_basic-asn1.c | 32 | $(obj)/nf_nat_snmp_basic_main.o: $(obj)/nf_nat_snmp_basic-asn1.h |
33 | obj-$(CONFIG_NF_NAT_SNMP_BASIC) += nf_nat_snmp_basic.o | 33 | obj-$(CONFIG_NF_NAT_SNMP_BASIC) += nf_nat_snmp_basic.o |
34 | clean-files := nf_nat_snmp_basic-asn1.c nf_nat_snmp_basic-asn1.h | 34 | clean-files := nf_nat_snmp_basic-asn1.c nf_nat_snmp_basic-asn1.h |
35 | 35 | ||
diff --git a/scripts/adjust_autoksyms.sh b/scripts/adjust_autoksyms.sh index 513da1a4a2da..d67830e6e360 100755 --- a/scripts/adjust_autoksyms.sh +++ b/scripts/adjust_autoksyms.sh | |||
@@ -84,6 +84,13 @@ while read sympath; do | |||
84 | depfile="include/config/ksym/${sympath}.h" | 84 | depfile="include/config/ksym/${sympath}.h" |
85 | mkdir -p "$(dirname "$depfile")" | 85 | mkdir -p "$(dirname "$depfile")" |
86 | touch "$depfile" | 86 | touch "$depfile" |
87 | # Filesystems with coarse time precision may create timestamps | ||
88 | # equal to the one from a file that was very recently built and that | ||
89 | # needs to be rebuild. Let's guard against that by making sure our | ||
90 | # dep files are always newer than the first file we created here. | ||
91 | while [ ! "$depfile" -nt "$new_ksyms_file" ]; do | ||
92 | touch "$depfile" | ||
93 | done | ||
87 | echo $((count += 1)) | 94 | echo $((count += 1)) |
88 | done | tail -1 ) | 95 | done | tail -1 ) |
89 | changed=${changed:-0} | 96 | changed=${changed:-0} |
diff --git a/scripts/package/builddeb b/scripts/package/builddeb index b4f0f2b3f8d2..13fabb1f81db 100755 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb | |||
@@ -313,7 +313,7 @@ fi | |||
313 | 313 | ||
314 | # Build kernel header package | 314 | # Build kernel header package |
315 | (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" | 315 | (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" |
316 | (cd $srctree; find arch/*/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles" | 316 | (cd $srctree; find arch/*/include include scripts -type f -o -type l) >> "$objtree/debian/hdrsrcfiles" |
317 | (cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles" | 317 | (cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles" |
318 | (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" | 318 | (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" |
319 | if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then | 319 | if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then |
diff --git a/scripts/package/mkspec b/scripts/package/mkspec index 280027fad991..61427c6f2209 100755 --- a/scripts/package/mkspec +++ b/scripts/package/mkspec | |||
@@ -98,7 +98,7 @@ $M make %{?_smp_mflags} INSTALL_MOD_PATH=%{buildroot} KBUILD_SRC= modules_instal | |||
98 | $S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/build | 98 | $S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/build |
99 | $S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/source | 99 | $S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/source |
100 | $S$M mkdir -p %{buildroot}/usr/src/kernels/$KERNELRELEASE | 100 | $S$M mkdir -p %{buildroot}/usr/src/kernels/$KERNELRELEASE |
101 | $S$M tar cf - . $EXCLUDES | tar xf - -C %{buildroot}/usr/src/kernels/$KERNELRELEASE | 101 | $S$M tar cf - $EXCLUDES . | tar xf - -C %{buildroot}/usr/src/kernels/$KERNELRELEASE |
102 | $S$M cd %{buildroot}/lib/modules/$KERNELRELEASE | 102 | $S$M cd %{buildroot}/lib/modules/$KERNELRELEASE |
103 | $S$M ln -sf /usr/src/kernels/$KERNELRELEASE build | 103 | $S$M ln -sf /usr/src/kernels/$KERNELRELEASE build |
104 | $S$M ln -sf /usr/src/kernels/$KERNELRELEASE source | 104 | $S$M ln -sf /usr/src/kernels/$KERNELRELEASE source |