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

TOMOYO Linux Cross Reference
Linux/kernel/Makefile

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ 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.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /kernel/Makefile (Version linux-6.12-rc7) and /kernel/Makefile (Version linux-2.6.0)


  1 # SPDX-License-Identifier: GPL-2.0             << 
  2 #                                                   1 #
  3 # Makefile for the linux kernel.                    2 # Makefile for the linux kernel.
  4 #                                                   3 #
  5                                                     4 
  6 obj-y     = fork.o exec_domain.o panic.o \     !!   5 obj-y     = sched.o fork.o exec_domain.o panic.o printk.o profile.o \
  7             cpu.o exit.o softirq.o resource.o  !!   6             exit.o itimer.o time.o softirq.o resource.o \
  8             sysctl.o capability.o ptrace.o use !!   7             sysctl.o capability.o ptrace.o timer.o user.o \
  9             signal.o sys.o umh.o workqueue.o p !!   8             signal.o sys.o kmod.o workqueue.o pid.o \
 10             extable.o params.o \               !!   9             rcupdate.o intermodule.o extable.o params.o posix-timers.o
 11             kthread.o sys_ni.o nsproxy.o \     << 
 12             notifier.o ksysfs.o cred.o reboot. << 
 13             async.o range.o smpboot.o ucount.o << 
 14                                                << 
 15 obj-$(CONFIG_USERMODE_DRIVER) += usermode_driv << 
 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                                                    10 
 24 # Prevents flicker of uninteresting __do_softi !!  11 obj-$(CONFIG_FUTEX) += futex.o
 25 # in coverage traces.                          << 
 26 KCOV_INSTRUMENT_softirq.o := n                 << 
 27 # Avoid KCSAN instrumentation in softirq ("No  << 
 28 # are CPU local" => assume no data races), to  << 
 29 KCSAN_SANITIZE_softirq.o = n                   << 
 30 # These are called from save_stack_trace() on  << 
 31 # and produce insane amounts of uninteresting  << 
 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  << 
 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-conser << 
 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             12 obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
 62 obj-$(CONFIG_SMP) += smp.o                     !!  13 obj-$(CONFIG_SMP) += cpu.o
 63 ifneq ($(CONFIG_SMP),y)                        << 
 64 obj-y += up.o                                  << 
 65 endif                                          << 
 66 obj-$(CONFIG_UID16) += uid16.o                     14 obj-$(CONFIG_UID16) += uid16.o
 67 obj-$(CONFIG_MODULE_SIG_FORMAT) += module_sign !!  15 obj-$(CONFIG_MODULES) += module.o
 68 obj-$(CONFIG_KALLSYMS) += kallsyms.o               16 obj-$(CONFIG_KALLSYMS) += kallsyms.o
 69 obj-$(CONFIG_KALLSYMS_SELFTEST) += kallsyms_se !!  17 obj-$(CONFIG_PM) += power/
 70 obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o           18 obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o
 71 obj-$(CONFIG_VMCORE_INFO) += vmcore_info.o elf << 
 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) += backtrace << 
 79 obj-$(CONFIG_COMPAT) += compat.o                   19 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                20 obj-$(CONFIG_IKCONFIG) += configs.o
 85 obj-$(CONFIG_IKHEADERS) += kheaders.o          !!  21 obj-$(CONFIG_IKCONFIG_PROC) += configs.o
 86 obj-$(CONFIG_SMP) += stop_machine.o            << 
 87 obj-$(CONFIG_AUDIT) += audit.o auditfilter.o   << 
 88 obj-$(CONFIG_AUDITSYSCALL) += auditsc.o audit_ << 
 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) += wat << 
 97 obj-$(CONFIG_HARDLOCKUP_DETECTOR_PERF) += watc << 
 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. << 
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. << 
117 obj-$(CONFIG_HAVE_STATIC_CALL_INLINE) += stati << 
118 obj-$(CONFIG_CFI_CLANG) += cfi.o               << 
119                                                << 
120 obj-$(CONFIG_PERF_EVENTS) += events/           << 
121                                                << 
122 obj-$(CONFIG_USER_RETURN_NOTIFIER) += user-ret << 
123 obj-$(CONFIG_PADATA) += padata.o               << 
124 obj-$(CONFIG_JUMP_LABEL) += jump_label.o       << 
125 obj-$(CONFIG_CONTEXT_TRACKING) += context_trac << 
126 obj-$(CONFIG_TORTURE_TEST) += torture.o        << 
127                                                << 
128 obj-$(CONFIG_HAS_IOMEM) += iomem.o             << 
129 obj-$(CONFIG_RSEQ) += rseq.o                   << 
130 obj-$(CONFIG_WATCH_QUEUE) += watch_queue.o     << 
131                                                << 
132 obj-$(CONFIG_RESOURCE_KUNIT_TEST) += resource_ << 
133 obj-$(CONFIG_SYSCTL_KUNIT_TEST) += sysctl-test << 
134                                                << 
135 CFLAGS_stackleak.o += $(DISABLE_STACKLEAK_PLUG << 
136 obj-$(CONFIG_GCC_PLUGIN_STACKLEAK) += stacklea << 
137 KASAN_SANITIZE_stackleak.o := n                << 
138 KCSAN_SANITIZE_stackleak.o := n                << 
139 KCOV_INSTRUMENT_stackleak.o := n               << 
140                                                << 
141 obj-$(CONFIG_SCF_TORTURE_TEST) += scftorture.o << 
142                                                    22 
143 $(obj)/configs.o: $(obj)/config_data.gz        !!  23 ifneq ($(CONFIG_IA64),y)
144                                                !!  24 # According to Alan Modra <alan@linuxcare.com.au>, the -fno-omit-frame-pointer is
145 targets += config_data config_data.gz          !!  25 # needed for x86 only.  Why this used to be enabled for all architectures is beyond
146 $(obj)/config_data.gz: $(obj)/config_data FORC !!  26 # me.  I suspect most platforms don't need this, but until we know that for sure
147         $(call if_changed,gzip)                !!  27 # I turn this off for IA-64 only.  Andreas Schwab says it's also needed on m68k
148                                                !!  28 # to get a correct value for the wait-channel (WCHAN in ps). --davidm
149 filechk_cat = cat $<                           !!  29 CFLAGS_sched.o := $(PROFILING) -fno-omit-frame-pointer
                                                   >>  30 endif
150                                                    31 
151 $(obj)/config_data: $(KCONFIG_CONFIG) FORCE    !!  32 # configs.o uses generated files - dependecies must be listed explicitly
152         $(call filechk,cat)                    !!  33 $(obj)/configs.o: $(obj)/ikconfig.h
153                                                    34 
154 $(obj)/kheaders.o: $(obj)/kheaders_data.tar.xz !!  35 ifdef CONFIG_IKCONFIG_PROC
                                                   >>  36 $(obj)/configs.o: $(obj)/config_data.h
                                                   >>  37 endif
155                                                    38 
156 quiet_cmd_genikh = CHK     $(obj)/kheaders_dat !!  39 # ikconfig.h contains all the selected config entries - generated
157       cmd_genikh = $(CONFIG_SHELL) $(srctree)/ !!  40 # from top-level Makefile and .config. Info from ikconfig.h can
158 $(obj)/kheaders_data.tar.xz: FORCE             !!  41 # be extracted from the kernel binary.
159         $(call cmd,genikh)                     !!  42 
                                                   >>  43 quiet_cmd_ikconfig = IKCFG   $@
                                                   >>  44       cmd_ikconfig = $(CONFIG_SHELL) $< .config $(srctree)/Makefile > $@
                                                   >>  45 
                                                   >>  46 targets += ikconfig.h
                                                   >>  47 $(obj)/ikconfig.h: scripts/mkconfigs .config Makefile FORCE
                                                   >>  48         $(call if_changed,ikconfig)
                                                   >>  49 
                                                   >>  50 # config_data.h contains the same information as ikconfig.h but gzipped.
                                                   >>  51 # Info from config_data can be extracted from /proc/config*
                                                   >>  52 targets += config_data.gz
                                                   >>  53 $(obj)/config_data.gz: .config FORCE
                                                   >>  54         $(call if_changed,gzip)
160                                                    55 
161 clean-files := kheaders_data.tar.xz kheaders.m !!  56 quiet_cmd_ikconfiggz = IKCFG   $@
                                                   >>  57       cmd_ikconfiggz = cat $< | scripts/bin2c kernel_config_data > $@
                                                   >>  58 targets += config_data.h
                                                   >>  59 $(obj)/config_data.h: $(obj)/config_data.gz FORCE
                                                   >>  60         $(call if_changed,ikconfiggz)
                                                      

~ [ 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