~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/kernel/Makefile

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: GPL-2.0
  2 #
  3 # Makefile for the linux kernel.
  4 #
  5 
  6 obj-y     = fork.o exec_domain.o panic.o \
  7             cpu.o exit.o softirq.o resource.o \
  8             sysctl.o capability.o ptrace.o user.o \
  9             signal.o sys.o umh.o workqueue.o pid.o task_work.o \
 10             extable.o params.o \
 11             kthread.o sys_ni.o nsproxy.o \
 12             notifier.o ksysfs.o cred.o reboot.o \
 13             async.o range.o smpboot.o ucount.o regset.o ksyms_common.o
 14 
 15 obj-$(CONFIG_USERMODE_DRIVER) += usermode_driver.o
 16 obj-$(CONFIG_MULTIUSER) += groups.o
 17 obj-$(CONFIG_VHOST_TASK) += vhost_task.o
 18 
 19 ifdef CONFIG_FUNCTION_TRACER
 20 # Do not trace internal ftrace files
 21 CFLAGS_REMOVE_irq_work.o = $(CC_FLAGS_FTRACE)
 22 endif
 23 
 24 # Prevents flicker of uninteresting __do_softirq()/__local_bh_disable_ip()
 25 # in coverage traces.
 26 KCOV_INSTRUMENT_softirq.o := n
 27 # Avoid KCSAN instrumentation in softirq ("No shared variables, all the data
 28 # are CPU local" => assume no data races), to reduce overhead in interrupts.
 29 KCSAN_SANITIZE_softirq.o = n
 30 # These are called from save_stack_trace() on slub debug path,
 31 # and produce insane amounts of uninteresting coverage.
 32 KCOV_INSTRUMENT_extable.o := n
 33 KCOV_INSTRUMENT_stacktrace.o := n
 34 # Don't self-instrument.
 35 KCOV_INSTRUMENT_kcov.o := n
 36 # If sanitizers detect any issues in kcov, it may lead to recursion
 37 # via printk, etc.
 38 KASAN_SANITIZE_kcov.o := n
 39 KCSAN_SANITIZE_kcov.o := n
 40 UBSAN_SANITIZE_kcov.o := n
 41 KMSAN_SANITIZE_kcov.o := n
 42 CFLAGS_kcov.o := $(call cc-option, -fno-conserve-stack) -fno-stack-protector
 43 
 44 obj-y += sched/
 45 obj-y += locking/
 46 obj-y += power/
 47 obj-y += printk/
 48 obj-y += irq/
 49 obj-y += rcu/
 50 obj-y += livepatch/
 51 obj-y += dma/
 52 obj-y += entry/
 53 obj-$(CONFIG_MODULES) += module/
 54 
 55 obj-$(CONFIG_KCMP) += kcmp.o
 56 obj-$(CONFIG_FREEZER) += freezer.o
 57 obj-$(CONFIG_PROFILING) += profile.o
 58 obj-$(CONFIG_STACKTRACE) += stacktrace.o
 59 obj-y += time/
 60 obj-$(CONFIG_FUTEX) += futex/
 61 obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
 62 obj-$(CONFIG_SMP) += smp.o
 63 ifneq ($(CONFIG_SMP),y)
 64 obj-y += up.o
 65 endif
 66 obj-$(CONFIG_UID16) += uid16.o
 67 obj-$(CONFIG_MODULE_SIG_FORMAT) += module_signature.o
 68 obj-$(CONFIG_KALLSYMS) += kallsyms.o
 69 obj-$(CONFIG_KALLSYMS_SELFTEST) += kallsyms_selftest.o
 70 obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o
 71 obj-$(CONFIG_VMCORE_INFO) += vmcore_info.o elfcorehdr.o
 72 obj-$(CONFIG_CRASH_RESERVE) += crash_reserve.o
 73 obj-$(CONFIG_KEXEC_CORE) += kexec_core.o
 74 obj-$(CONFIG_CRASH_DUMP) += crash_core.o
 75 obj-$(CONFIG_KEXEC) += kexec.o
 76 obj-$(CONFIG_KEXEC_FILE) += kexec_file.o
 77 obj-$(CONFIG_KEXEC_ELF) += kexec_elf.o
 78 obj-$(CONFIG_BACKTRACE_SELF_TEST) += backtracetest.o
 79 obj-$(CONFIG_COMPAT) += compat.o
 80 obj-$(CONFIG_CGROUPS) += cgroup/
 81 obj-$(CONFIG_UTS_NS) += utsname.o
 82 obj-$(CONFIG_USER_NS) += user_namespace.o
 83 obj-$(CONFIG_PID_NS) += pid_namespace.o
 84 obj-$(CONFIG_IKCONFIG) += configs.o
 85 obj-$(CONFIG_IKHEADERS) += kheaders.o
 86 obj-$(CONFIG_SMP) += stop_machine.o
 87 obj-$(CONFIG_AUDIT) += audit.o auditfilter.o
 88 obj-$(CONFIG_AUDITSYSCALL) += auditsc.o audit_watch.o audit_fsnotify.o audit_tree.o
 89 obj-$(CONFIG_GCOV_KERNEL) += gcov/
 90 obj-$(CONFIG_KCOV) += kcov.o
 91 obj-$(CONFIG_KPROBES) += kprobes.o
 92 obj-$(CONFIG_FAIL_FUNCTION) += fail_function.o
 93 obj-$(CONFIG_KGDB) += debug/
 94 obj-$(CONFIG_DETECT_HUNG_TASK) += hung_task.o
 95 obj-$(CONFIG_LOCKUP_DETECTOR) += watchdog.o
 96 obj-$(CONFIG_HARDLOCKUP_DETECTOR_BUDDY) += watchdog_buddy.o
 97 obj-$(CONFIG_HARDLOCKUP_DETECTOR_PERF) += watchdog_perf.o
 98 obj-$(CONFIG_SECCOMP) += seccomp.o
 99 obj-$(CONFIG_RELAY) += relay.o
100 obj-$(CONFIG_SYSCTL) += utsname_sysctl.o
101 obj-$(CONFIG_TASK_DELAY_ACCT) += delayacct.o
102 obj-$(CONFIG_TASKSTATS) += taskstats.o tsacct.o
103 obj-$(CONFIG_TRACEPOINTS) += tracepoint.o
104 obj-$(CONFIG_LATENCYTOP) += latencytop.o
105 obj-$(CONFIG_FUNCTION_TRACER) += trace/
106 obj-$(CONFIG_TRACING) += trace/
107 obj-$(CONFIG_TRACE_CLOCK) += trace/
108 obj-$(CONFIG_RING_BUFFER) += trace/
109 obj-$(CONFIG_TRACEPOINTS) += trace/
110 obj-$(CONFIG_RETHOOK) += trace/
111 obj-$(CONFIG_IRQ_WORK) += irq_work.o
112 obj-$(CONFIG_CPU_PM) += cpu_pm.o
113 obj-$(CONFIG_BPF) += bpf/
114 obj-$(CONFIG_KCSAN) += kcsan/
115 obj-$(CONFIG_SHADOW_CALL_STACK) += scs.o
116 obj-$(CONFIG_HAVE_STATIC_CALL) += static_call.o
117 obj-$(CONFIG_HAVE_STATIC_CALL_INLINE) += static_call_inline.o
118 obj-$(CONFIG_CFI_CLANG) += cfi.o
119 obj-$(CONFIG_NUMA) += numa.o
120 
121 obj-$(CONFIG_PERF_EVENTS) += events/
122 
123 obj-$(CONFIG_USER_RETURN_NOTIFIER) += user-return-notifier.o
124 obj-$(CONFIG_PADATA) += padata.o
125 obj-$(CONFIG_JUMP_LABEL) += jump_label.o
126 obj-$(CONFIG_CONTEXT_TRACKING) += context_tracking.o
127 obj-$(CONFIG_TORTURE_TEST) += torture.o
128 
129 obj-$(CONFIG_HAS_IOMEM) += iomem.o
130 obj-$(CONFIG_RSEQ) += rseq.o
131 obj-$(CONFIG_WATCH_QUEUE) += watch_queue.o
132 
133 obj-$(CONFIG_RESOURCE_KUNIT_TEST) += resource_kunit.o
134 obj-$(CONFIG_SYSCTL_KUNIT_TEST) += sysctl-test.o
135 
136 CFLAGS_stackleak.o += $(DISABLE_STACKLEAK_PLUGIN)
137 obj-$(CONFIG_GCC_PLUGIN_STACKLEAK) += stackleak.o
138 KASAN_SANITIZE_stackleak.o := n
139 KCSAN_SANITIZE_stackleak.o := n
140 KCOV_INSTRUMENT_stackleak.o := n
141 
142 obj-$(CONFIG_SCF_TORTURE_TEST) += scftorture.o
143 
144 $(obj)/configs.o: $(obj)/config_data.gz
145 
146 targets += config_data config_data.gz
147 $(obj)/config_data.gz: $(obj)/config_data FORCE
148         $(call if_changed,gzip)
149 
150 filechk_cat = cat $<
151 
152 $(obj)/config_data: $(KCONFIG_CONFIG) FORCE
153         $(call filechk,cat)
154 
155 $(obj)/kheaders.o: $(obj)/kheaders_data.tar.xz
156 
157 quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
158       cmd_genikh = $(CONFIG_SHELL) $(srctree)/kernel/gen_kheaders.sh $@
159 $(obj)/kheaders_data.tar.xz: FORCE
160         $(call cmd,genikh)
161 
162 clean-files := kheaders_data.tar.xz kheaders.md5

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php