Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 
0003 # The compilers are complaining about unused variables inside an if(0) scope
0004 # block. This is daft, shut them up.
0005 ccflags-y += $(call cc-disable-warning, unused-but-set-variable)
0006 
0007 # These files are disabled because they produce non-interesting flaky coverage
0008 # that is not a function of syscall inputs. E.g. involuntary context switches.
0009 KCOV_INSTRUMENT := n
0010 
0011 # Disable KCSAN to avoid excessive noise and performance degradation. To avoid
0012 # false positives ensure barriers implied by sched functions are instrumented.
0013 KCSAN_SANITIZE := n
0014 KCSAN_INSTRUMENT_BARRIERS := y
0015 
0016 ifneq ($(CONFIG_SCHED_OMIT_FRAME_POINTER),y)
0017 # According to Alan Modra <alan@linuxcare.com.au>, the -fno-omit-frame-pointer is
0018 # needed for x86 only.  Why this used to be enabled for all architectures is beyond
0019 # me.  I suspect most platforms don't need this, but until we know that for sure
0020 # I turn this off for IA-64 only.  Andreas Schwab says it's also needed on m68k
0021 # to get a correct value for the wait-channel (WCHAN in ps). --davidm
0022 CFLAGS_core.o := $(PROFILING) -fno-omit-frame-pointer
0023 endif
0024 
0025 #
0026 # Build efficiency:
0027 #
0028 # These compilation units have roughly the same size and complexity - so their
0029 # build parallelizes well and finishes roughly at once:
0030 #
0031 obj-y += core.o
0032 obj-y += fair.o
0033 obj-y += build_policy.o
0034 obj-y += build_utility.o