mirror of
https://github.com/torvalds/linux.git
synced 2025-11-02 17:49:03 +02:00
- Add new environment variables, USERCFLAGS and USERLDFLAGS to allow
additional flags to be passed to user-space programs.
- Fix missing fflush() bugs in Kconfig and fixdep
- Fix a minor bug in the comment format of the .config file
- Make kallsyms ignore llvm's local labels, .L*
- Fix UAPI compile-test for cross-compiling with Clang
- Extend the LLVM= syntax to support LLVM=<suffix> form for using a
particular version of LLVm, and LLVM=<prefix> form for using custom
LLVM in a particular directory path.
- Clean up Makefiles
-----BEGIN PGP SIGNATURE-----
iQJJBAABCgAzFiEEbmPs18K1szRHjPqEPYsBB53g2wYFAmJFGloVHG1hc2FoaXJv
eUBrZXJuZWwub3JnAAoJED2LAQed4NsGH0kP/j6Vx5BqEv3tP2Q+UANxLqITleJs
IFpbSesz/BhlG7I/IapWmCDSqFbYd5uJTO4ko8CsPmZHcxr6Gw3y+DN5yQACKaG/
p9xiF6GjPyKR8+VdcT2tV50+dVY8ANe/DxCyzKrJd/uyYxgARPKJh0KRMNz+d9lj
ixUpCXDhx/XlKzPIlcxrvhhjevKz+NnHmN0fe6rzcOw9KzBGBTsf20Q3PqUuBOKa
rWHsRGcBPA8eKLfWT1Us1jjic6cT2g4aMpWjF20YgUWKHgWVKcNHpxYKGXASVo/z
ewdDnNfmwo7f7fKMCDDro9iwFWV/BumGtn43U00tnqdBcTpFojPlEOga37UPbZDF
nmTblGVUhR0vn4PmfBy8WkAkbW+IpVatKwJGV4J3KjSvdWvZOmVj9VUGLVAR0TXW
/YcgRs6EtG8Hn0IlCj0fvZ5wRWoDLbP2DSZ67R/44EP0GaNQPwUe4FI1izEE4EYX
oVUAIxcKixWGj4RmdtmtMMdUcZzTpbgS9uloMUmS3u9LK0Ir/8tcWaf2zfMO6Jl2
p4Q31s1dUUKCnFnj0xDKRyKGUkxYebrHLfuBqi0RIc0xRpSlxoXe3Dynm9aHEQoD
ZSV0eouQJxnaxM1ck5Bu4AHLgEebHfEGjWVyUHno7jFU5EI9Wpbqpe4pCYEEDTm1
+LJMEpdZO0dFvpF+
=84rW
-----END PGP SIGNATURE-----
Merge tag 'kbuild-v5.18-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull Kbuild updates from Masahiro Yamada:
- Add new environment variables, USERCFLAGS and USERLDFLAGS to allow
additional flags to be passed to user-space programs.
- Fix missing fflush() bugs in Kconfig and fixdep
- Fix a minor bug in the comment format of the .config file
- Make kallsyms ignore llvm's local labels, .L*
- Fix UAPI compile-test for cross-compiling with Clang
- Extend the LLVM= syntax to support LLVM=<suffix> form for using a
particular version of LLVm, and LLVM=<prefix> form for using custom
LLVM in a particular directory path.
- Clean up Makefiles
* tag 'kbuild-v5.18-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
kbuild: Make $(LLVM) more flexible
kbuild: add --target to correctly cross-compile UAPI headers with Clang
fixdep: use fflush() and ferror() to ensure successful write to files
arch: syscalls: simplify uapi/kapi directory creation
usr/include: replace extra-y with always-y
certs: simplify empty certs creation in certs/Makefile
certs: include certs/signing_key.x509 unconditionally
kallsyms: ignore all local labels prefixed by '.L'
kconfig: fix missing '# end of' for empty menu
kconfig: add fflush() before ferror() check
kbuild: replace $(if A,A,B) with $(or A,B)
kbuild: Add environment variables for userprogs flags
kbuild: unify cmd_copy and cmd_shipped
78 lines
2.5 KiB
Makefile
78 lines
2.5 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
out := arch/$(SRCARCH)/include/generated/asm
|
|
uapi := arch/$(SRCARCH)/include/generated/uapi/asm
|
|
|
|
# Create output directory if not already present
|
|
$(shell mkdir -p $(out) $(uapi))
|
|
|
|
syscall32 := $(src)/syscall_32.tbl
|
|
syscall64 := $(src)/syscall_64.tbl
|
|
|
|
syshdr := $(srctree)/scripts/syscallhdr.sh
|
|
systbl := $(srctree)/scripts/syscalltbl.sh
|
|
offset :=
|
|
prefix :=
|
|
|
|
quiet_cmd_syshdr = SYSHDR $@
|
|
cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --abis $(abis) --emit-nr \
|
|
$(if $(offset),--offset $(offset)) \
|
|
$(if $(prefix),--prefix $(prefix)) \
|
|
$< $@
|
|
quiet_cmd_systbl = SYSTBL $@
|
|
cmd_systbl = $(CONFIG_SHELL) $(systbl) --abis $(abis) $< $@
|
|
|
|
quiet_cmd_hypercalls = HYPERCALLS $@
|
|
cmd_hypercalls = $(CONFIG_SHELL) '$<' $@ $(filter-out $<, $(real-prereqs))
|
|
|
|
$(uapi)/unistd_32.h: abis := i386
|
|
$(uapi)/unistd_32.h: $(syscall32) $(syshdr) FORCE
|
|
$(call if_changed,syshdr)
|
|
|
|
$(out)/unistd_32_ia32.h: abis := i386
|
|
$(out)/unistd_32_ia32.h: prefix := ia32_
|
|
$(out)/unistd_32_ia32.h: $(syscall32) $(syshdr) FORCE
|
|
$(call if_changed,syshdr)
|
|
|
|
$(uapi)/unistd_x32.h: abis := common,x32
|
|
$(uapi)/unistd_x32.h: offset := __X32_SYSCALL_BIT
|
|
$(uapi)/unistd_x32.h: $(syscall64) $(syshdr) FORCE
|
|
$(call if_changed,syshdr)
|
|
|
|
$(uapi)/unistd_64.h: abis := common,64
|
|
$(uapi)/unistd_64.h: $(syscall64) $(syshdr) FORCE
|
|
$(call if_changed,syshdr)
|
|
|
|
$(out)/unistd_64_x32.h: abis := x32
|
|
$(out)/unistd_64_x32.h: prefix := x32_
|
|
$(out)/unistd_64_x32.h: $(syscall64) $(syshdr) FORCE
|
|
$(call if_changed,syshdr)
|
|
|
|
$(out)/syscalls_32.h: abis := i386
|
|
$(out)/syscalls_32.h: $(syscall32) $(systbl) FORCE
|
|
$(call if_changed,systbl)
|
|
$(out)/syscalls_64.h: abis := common,64
|
|
$(out)/syscalls_64.h: $(syscall64) $(systbl) FORCE
|
|
$(call if_changed,systbl)
|
|
$(out)/syscalls_x32.h: abis := common,x32
|
|
$(out)/syscalls_x32.h: $(syscall64) $(systbl) FORCE
|
|
$(call if_changed,systbl)
|
|
|
|
$(out)/xen-hypercalls.h: $(srctree)/scripts/xen-hypercalls.sh FORCE
|
|
$(call if_changed,hypercalls)
|
|
|
|
$(out)/xen-hypercalls.h: $(srctree)/include/xen/interface/xen*.h
|
|
|
|
uapisyshdr-y += unistd_32.h unistd_64.h unistd_x32.h
|
|
syshdr-y += syscalls_32.h
|
|
syshdr-$(CONFIG_X86_64) += unistd_32_ia32.h unistd_64_x32.h
|
|
syshdr-$(CONFIG_X86_64) += syscalls_64.h
|
|
syshdr-$(CONFIG_X86_X32_ABI) += syscalls_x32.h
|
|
syshdr-$(CONFIG_XEN) += xen-hypercalls.h
|
|
|
|
uapisyshdr-y := $(addprefix $(uapi)/, $(uapisyshdr-y))
|
|
syshdr-y := $(addprefix $(out)/, $(syshdr-y))
|
|
targets += $(addprefix ../../../../, $(uapisyshdr-y) $(syshdr-y))
|
|
|
|
PHONY += all
|
|
all: $(uapisyshdr-y) $(syshdr-y)
|
|
@:
|