From: Linus Torvalds Date: Sun, 26 Feb 2023 19:53:25 +0000 (-0800) Subject: Merge tag 'kbuild-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy... X-Git-Tag: v6.3-rc1~71 X-Git-Url: http://git.samba.org/samba.git/?a=commitdiff_plain;h=498a1cf902c31c3af398082d65cf150b33b367e6;p=sfrench%2Fcifs-2.6.git Merge tag 'kbuild-v6.3' of git://git./linux/kernel/git/masahiroy/linux-kbuild Pull Kbuild updates from Masahiro Yamada: - Change V=1 option to print both short log and full command log - Allow V=1 and V=2 to be combined as V=12 - Make W=1 detect wrong .gitignore files - Tree-wide cleanups for unused command line arguments passed to Clang - Stop using -Qunused-arguments with Clang - Make scripts/setlocalversion handle only correct release tags instead of any arbitrary annotated tag - Create Debian and RPM source packages without cleaning the source tree - Various cleanups for packaging * tag 'kbuild-v6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (74 commits) kbuild: rpm-pkg: remove unneeded KERNELRELEASE from modules/headers_install docs: kbuild: remove description of KBUILD_LDS_MODULE .gitattributes: use 'dts' diff driver for *.dtso files kbuild: deb-pkg: improve the usability of source package kbuild: deb-pkg: fix binary-arch and clean in debian/rules kbuild: tar-pkg: use tar rules in scripts/Makefile.package kbuild: make perf-tar*-src-pkg work without relying on git kbuild: deb-pkg: switch over to source format 3.0 (quilt) kbuild: deb-pkg: make .orig tarball a hard link if possible kbuild: deb-pkg: hide KDEB_SOURCENAME from Makefile kbuild: srcrpm-pkg: create source package without cleaning kbuild: rpm-pkg: build binary packages from source rpm kbuild: deb-pkg: create source package without cleaning kbuild: add a tool to list files ignored by git Documentation/llvm: add Chimera Linux, Google and Meta datacenters setlocalversion: use only the correct release tag for git-describe setlocalversion: clean up the construction of version output .gitignore: ignore *.cover and *.mbx kbuild: remove --include-dir MAKEFLAG from top Makefile kbuild: fix trivial typo in comment ... --- 498a1cf902c31c3af398082d65cf150b33b367e6 diff --cc arch/arm/mach-s3c/Makefile index 988c49672715,deb44326b828..713827bef831 --- a/arch/arm/mach-s3c/Makefile +++ b/arch/arm/mach-s3c/Makefile @@@ -2,7 -2,13 +2,7 @@@ # # Copyright 2009 Simtec Electronics - include $(src)/Makefile.s3c64xx -ifdef CONFIG_ARCH_S3C24XX -include $(srctree)/$(src)/Makefile.s3c24xx -endif - -ifdef CONFIG_ARCH_S3C64XX + include $(srctree)/$(src)/Makefile.s3c64xx -endif # Objects we always build independent of SoC choice diff --cc arch/powerpc/kernel/vdso/Makefile index 3a2f32929fcf,d2a1dc0956d5..66f723f53be2 --- a/arch/powerpc/kernel/vdso/Makefile +++ b/arch/powerpc/kernel/vdso/Makefile @@@ -46,16 -51,19 +51,20 @@@ GCOV_PROFILE := KCOV_INSTRUMENT := n UBSAN_SANITIZE := n KASAN_SANITIZE := n +KCSAN_SANITIZE := n - ccflags-y := -shared -fno-common -fno-builtin -nostdlib -Wl,--hash-style=both - ccflags-$(CONFIG_LD_IS_LLD) += $(call cc-option,--ld-path=$(LD),-fuse-ld=lld) + ccflags-y := -fno-common -fno-builtin + ldflags-y := -Wl,--hash-style=both -nostdlib -shared -z noexecstack + ldflags-$(CONFIG_LD_IS_LLD) += $(call cc-option,--ld-path=$(LD),-fuse-ld=lld) + # Filter flags that clang will warn are unused for linking + ldflags-y += $(filter-out $(CC_AUTO_VAR_INIT_ZERO_ENABLER) $(CC_FLAGS_FTRACE) -Wa$(comma)%, $(KBUILD_CFLAGS)) - CC32FLAGS := -Wl,-soname=linux-vdso32.so.1 -m32 - AS32FLAGS := -D__VDSO32__ -s + CC32FLAGS := -m32 + LD32FLAGS := -Wl,-soname=linux-vdso32.so.1 + AS32FLAGS := -D__VDSO32__ - CC64FLAGS := -Wl,-soname=linux-vdso64.so.1 - AS64FLAGS := -D__VDSO64__ -s + LD64FLAGS := -Wl,-soname=linux-vdso64.so.1 + AS64FLAGS := -D__VDSO64__ targets += vdso32.lds CPPFLAGS_vdso32.lds += -P -C -Upowerpc diff --cc rust/Makefile index 8a521f2b6422,829f4adfd85c..f88d108fbef0 --- a/rust/Makefile +++ b/rust/Makefile @@@ -360,24 -348,10 +349,24 @@@ rust-analyzer $(Q)$(srctree)/scripts/generate_rust_analyzer.py $(srctree) $(objtree) \ $(RUST_LIB_SRC) > $(objtree)/rust-project.json +redirect-intrinsics = \ + __eqsf2 __gesf2 __lesf2 __nesf2 __unordsf2 \ + __unorddf2 \ + __muloti4 __multi3 \ + __udivmodti4 __udivti3 __umodti3 + +ifneq ($(or $(CONFIG_ARM64),$(and $(CONFIG_RISCV),$(CONFIG_64BIT))),) + # These intrinsics are defined for ARM64 and RISCV64 + redirect-intrinsics += \ + __ashrti3 \ + __ashlti3 __lshrti3 +endif + $(obj)/core.o: private skip_clippy = 1 $(obj)/core.o: private skip_flags = -Dunreachable_pub +$(obj)/core.o: private rustc_objcopy = $(foreach sym,$(redirect-intrinsics),--redefine-sym $(sym)=__rust$(sym)) $(obj)/core.o: private rustc_target_flags = $(core-cfgs) - $(obj)/core.o: $(RUST_LIB_SRC)/core/src/lib.rs $(obj)/target.json FORCE + $(obj)/core.o: $(RUST_LIB_SRC)/core/src/lib.rs scripts/target.json FORCE $(call if_changed_dep,rustc_library) $(obj)/compiler_builtins.o: private rustc_objcopy = -w -W '__*'