Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 #
0003 # Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux,intel}.com)
0004 #
0005 
0006 # Don't instrument UML-specific code; without this, we may crash when
0007 # accessing the instrumentation buffer for the first time from the
0008 # kernel.
0009 KCOV_INSTRUMENT                := n
0010 
0011 CPPFLAGS_vmlinux.lds := -DSTART=$(LDS_START)            \
0012                         -DELF_ARCH=$(LDS_ELF_ARCH)      \
0013                         -DELF_FORMAT=$(LDS_ELF_FORMAT)  \
0014                         $(LDS_EXTRA)
0015 extra-y := vmlinux.lds
0016 
0017 obj-y = config.o exec.o exitcode.o irq.o ksyms.o mem.o \
0018         physmem.o process.o ptrace.o reboot.o sigio.o \
0019         signal.o sysrq.o time.o tlb.o trap.o \
0020         um_arch.o umid.o maccess.o kmsg_dump.o capflags.o skas/
0021 obj-y += load_file.o
0022 
0023 obj-$(CONFIG_BLK_DEV_INITRD) += initrd.o
0024 obj-$(CONFIG_GPROF)     += gprof_syms.o
0025 obj-$(CONFIG_OF) += dtb.o
0026 obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
0027 obj-$(CONFIG_STACKTRACE) += stacktrace.o
0028 obj-$(CONFIG_GENERIC_PCI_IOMAP) += ioport.o
0029 
0030 USER_OBJS := config.o
0031 
0032 include arch/um/scripts/Makefile.rules
0033 
0034 targets := config.c config.tmp capflags.c
0035 
0036 # Be careful with the below Sed code - sed is pitfall-rich!
0037 # We use sed to lower build requirements, for "embedded" builders for instance.
0038 
0039 $(obj)/config.tmp: $(objtree)/.config FORCE
0040         $(call if_changed,quote1)
0041 
0042 quiet_cmd_quote1 = QUOTE   $@
0043       cmd_quote1 = sed -e 's/"/\\"/g' -e 's/^/"/' -e 's/$$/\\n",/' \
0044                    $< > $@
0045 
0046 $(obj)/config.c: $(src)/config.c.in $(obj)/config.tmp FORCE
0047         $(call if_changed,quote2)
0048 
0049 quiet_cmd_mkcapflags = MKCAP   $@
0050       cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/../../x86/kernel/cpu/mkcapflags.sh $@ $^
0051 
0052 cpufeature = $(src)/../../x86/include/asm/cpufeatures.h
0053 vmxfeature = $(src)/../../x86/include/asm/vmxfeatures.h
0054 
0055 $(obj)/capflags.c: $(cpufeature) $(vmxfeature) $(src)/../../x86/kernel/cpu/mkcapflags.sh FORCE
0056         $(call if_changed,mkcapflags)
0057 
0058 quiet_cmd_quote2 = QUOTE   $@
0059       cmd_quote2 = sed -e '/CONFIG/{'          \
0060                   -e 's/"CONFIG"//'            \
0061                   -e 'r $(obj)/config.tmp'     \
0062                   -e 'a \'                     \
0063                   -e '""'                      \
0064                   -e '}'                       \
0065                   $< > $@