mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

- Add support for the EXPORT_SYMBOL_GPL_FOR_MODULES() macro, which exports a symbol only to specified modules - Improve ABI handling in gendwarfksyms - Forcibly link lib-y objects to vmlinux even if CONFIG_MODULES=n - Add checkers for redundant or missing <linux/export.h> inclusion - Deprecate the extra-y syntax - Fix a genksyms bug when including enum constants from *.symref files -----BEGIN PGP SIGNATURE----- iQJJBAABCgAzFiEEbmPs18K1szRHjPqEPYsBB53g2wYFAmhEZc4VHG1hc2FoaXJv eUBrZXJuZWwub3JnAAoJED2LAQed4NsGVAgQAKLRdBGga1kBJJFIkUOHWC5+g/je U/dO5rGnuOLviWDexC6QT8AQV2N+dQXhB11x+KacSu1bwowsEvwuegtA6VqwbETs tyWmB0PftEzVyPfc+Rjfy0LDfKkiKkm4RhXiMwcem/rlw45gvJXrVU7jJin9fI3A So8glpOAX+mEizUHkjZkS51nkYCZFDsn7hVo0X43vqjeFrrFGLEQ5xas4Ci+dkY3 9g8Q5bFL8CC5PHjSO8wFftCcAWwTukAht6CSSb522MKGnCVZ9RxTmRwEPXrBmXtS 5eWa8yg6y0tFVmot8iwZGBYleAWDNsj0a2j2oVjUN+EF91sk3WQApJVNBok/nQFb 4MgO3N3UXZdy4tYkBX8tMgOcGkfjZAFoNxSUm5oVouh9NyT0dpqYHhJHBNVbVJoF igQWeVOYcioDjeU1iXnP2cw64q44ROfxmOpDxOSRz9PTM6CCya1R0m/zzBLV6Lwk rzlXk1LLf+jIfgmS5RLlkCgrXS1U0vNGXxQH9Ui9dZSEtzdU7qt5WQ/Rz44bEBhS OeIlJfMMx6QYJztJc/BaUjkKsutTkII52QctRbRCj/nKswHd8SnHV+xk1c2WPxrg yKq10rPpdg1BcvmODY6cmcndt7ogDRfkogm2gvGQIBZEglRimpmpg51sZQRD0ueE 0rt12TmktsLbglB4 =Dy49 -----END PGP SIGNATURE----- Merge tag 'kbuild-v6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild Pull Kbuild updates from Masahiro Yamada: - Add support for the EXPORT_SYMBOL_GPL_FOR_MODULES() macro, which exports a symbol only to specified modules - Improve ABI handling in gendwarfksyms - Forcibly link lib-y objects to vmlinux even if CONFIG_MODULES=n - Add checkers for redundant or missing <linux/export.h> inclusion - Deprecate the extra-y syntax - Fix a genksyms bug when including enum constants from *.symref files * tag 'kbuild-v6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (28 commits) genksyms: Fix enum consts from a reference affecting new values arch: use always-$(KBUILD_BUILTIN) for vmlinux.lds kbuild: set y instead of 1 to KBUILD_{BUILTIN,MODULES} efi/libstub: use 'targets' instead of extra-y in Makefile module: make __mod_device_table__* symbols static scripts/misc-check: check unnecessary #include <linux/export.h> when W=1 scripts/misc-check: check missing #include <linux/export.h> when W=1 scripts/misc-check: add double-quotes to satisfy shellcheck kbuild: move W=1 check for scripts/misc-check to top-level Makefile scripts/tags.sh: allow to use alternative ctags implementation kconfig: introduce menu type enum docs: symbol-namespaces: fix reST warning with literal block kbuild: link lib-y objects to vmlinux forcibly even when CONFIG_MODULES=n tinyconfig: enable CONFIG_LD_DEAD_CODE_DATA_ELIMINATION docs/core-api/symbol-namespaces: drop table of contents and section numbering modpost: check forbidden MODULE_IMPORT_NS("module:") at compile time kbuild: move kbuild syntax processing to scripts/Makefile.build Makefile: remove dependency on archscripts for header installation Documentation/kbuild: Add new gendwarfksyms kABI rules Documentation/kbuild: Drop section numbers ...
123 lines
3.9 KiB
Makefile
123 lines
3.9 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
#
|
|
# Makefile for the linux kernel.
|
|
#
|
|
|
|
asflags-y := -ansi
|
|
|
|
# Undefine sparc when processing vmlinux.lds - it is used
|
|
# And teach CPP we are doing $(BITS) builds (for this case)
|
|
CPPFLAGS_vmlinux.lds := -Usparc -m$(BITS)
|
|
always-$(KBUILD_BUILTIN) += vmlinux.lds
|
|
|
|
ifdef CONFIG_FUNCTION_TRACER
|
|
# Do not profile debug and lowlevel utilities
|
|
CFLAGS_REMOVE_ftrace.o := -pg
|
|
CFLAGS_REMOVE_time_$(BITS).o := -pg
|
|
CFLAGS_REMOVE_perf_event.o := -pg
|
|
CFLAGS_REMOVE_pcr.o := -pg
|
|
endif
|
|
|
|
obj-y := head_$(BITS).o
|
|
obj-$(CONFIG_SPARC64) += urtt_fill.o
|
|
obj-$(CONFIG_SPARC32) += entry.o wof.o wuf.o
|
|
obj-$(CONFIG_SPARC32) += etrap_32.o
|
|
obj-$(CONFIG_SPARC32) += rtrap_32.o
|
|
obj-y += traps_$(BITS).o
|
|
|
|
# IRQ
|
|
obj-y += irq_$(BITS).o
|
|
obj-$(CONFIG_SPARC32) += sun4m_irq.o sun4d_irq.o
|
|
|
|
obj-y += process_$(BITS).o
|
|
obj-y += process.o
|
|
obj-y += signal_$(BITS).o
|
|
obj-y += sigutil_$(BITS).o
|
|
obj-$(CONFIG_SPARC32) += ioport.o
|
|
obj-y += setup.o
|
|
obj-y += setup_$(BITS).o
|
|
obj-y += idprom.o
|
|
obj-y += sys_sparc_$(BITS).o
|
|
obj-$(CONFIG_SPARC32) += systbls_32.o
|
|
obj-y += time_$(BITS).o
|
|
obj-$(CONFIG_SPARC32) += windows.o
|
|
obj-y += cpu.o
|
|
obj-$(CONFIG_SPARC64) += vdso.o
|
|
obj-$(CONFIG_SPARC32) += devices.o
|
|
obj-y += ptrace_$(BITS).o
|
|
obj-y += unaligned_$(BITS).o
|
|
obj-y += una_asm_$(BITS).o
|
|
obj-y += prom_common.o
|
|
obj-y += prom_$(BITS).o
|
|
obj-y += of_device_common.o
|
|
obj-y += of_device_$(BITS).o
|
|
obj-$(CONFIG_SPARC64) += prom_irqtrans.o
|
|
|
|
obj-$(CONFIG_SPARC32) += leon_kernel.o
|
|
obj-$(CONFIG_SPARC32) += leon_pmc.o
|
|
|
|
obj-$(CONFIG_SPARC64) += reboot.o
|
|
obj-$(CONFIG_SPARC64) += sysfs.o
|
|
obj-$(CONFIG_SPARC64) += iommu.o iommu-common.o
|
|
obj-$(CONFIG_SPARC64) += central.o
|
|
obj-$(CONFIG_SPARC64) += starfire.o
|
|
obj-$(CONFIG_SPARC64) += power.o
|
|
obj-$(CONFIG_SPARC64) += sbus.o
|
|
obj-$(CONFIG_SPARC64) += ebus.o
|
|
obj-$(CONFIG_SPARC64) += visemul.o
|
|
obj-$(CONFIG_SPARC64) += hvapi.o
|
|
obj-$(CONFIG_SPARC64) += sstate.o
|
|
obj-$(CONFIG_SPARC64) += mdesc.o
|
|
obj-$(CONFIG_SPARC64) += adi_64.o
|
|
obj-$(CONFIG_SPARC64) += pcr.o
|
|
obj-$(CONFIG_SPARC64) += nmi.o
|
|
obj-$(CONFIG_SPARC64_SMP) += cpumap.o
|
|
|
|
obj-$(CONFIG_PCIC_PCI) += pcic.o
|
|
obj-$(CONFIG_LEON_PCI) += leon_pci.o
|
|
obj-$(CONFIG_SPARC_GRPCI2)+= leon_pci_grpci2.o
|
|
obj-$(CONFIG_SPARC_GRPCI1)+= leon_pci_grpci1.o
|
|
|
|
obj-$(CONFIG_SMP) += trampoline_$(BITS).o smp_$(BITS).o
|
|
obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o leon_smp.o
|
|
obj-$(CONFIG_SPARC64_SMP) += hvtramp.o
|
|
|
|
obj-y += auxio_$(BITS).o
|
|
obj-$(CONFIG_SUN_PM) += apc.o pmc.o
|
|
|
|
obj-y += termios.o
|
|
|
|
obj-$(CONFIG_MODULES) += module.o
|
|
obj-$(CONFIG_MODULES) += sparc_ksyms.o
|
|
obj-$(CONFIG_SPARC_LED) += led.o
|
|
obj-$(CONFIG_KGDB) += kgdb_$(BITS).o
|
|
|
|
obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o
|
|
obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace.o
|
|
|
|
obj-$(CONFIG_EARLYFB) += btext.o
|
|
obj-$(CONFIG_STACKTRACE) += stacktrace.o
|
|
# sparc64 PCI
|
|
obj-$(CONFIG_SPARC64_PCI) += pci.o pci_common.o psycho_common.o
|
|
obj-$(CONFIG_SPARC64_PCI) += pci_psycho.o pci_sabre.o pci_schizo.o
|
|
obj-$(CONFIG_SPARC64_PCI) += pci_sun4v.o pci_sun4v_asm.o pci_fire.o
|
|
obj-$(CONFIG_SPARC64_PCI_MSI) += pci_msi.o
|
|
|
|
|
|
obj-$(CONFIG_COMPAT) += sys32.o sys_sparc32.o signal32.o
|
|
|
|
obj-$(CONFIG_US3_MC) += chmc.o
|
|
|
|
obj-$(CONFIG_KPROBES) += kprobes.o
|
|
obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o
|
|
|
|
obj-$(CONFIG_AUDIT) += audit.o
|
|
audit--$(CONFIG_AUDIT) := compat_audit.o
|
|
obj-$(CONFIG_COMPAT) += $(audit--y)
|
|
|
|
pc--$(CONFIG_PERF_EVENTS) := perf_event.o
|
|
obj-$(CONFIG_SPARC64) += $(pc--y)
|
|
|
|
obj-$(CONFIG_UPROBES) += uprobes.o
|
|
obj-$(CONFIG_JUMP_LABEL) += jump_label.o
|