11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Copyright (C) 2002 Jeff Dike (jdike@karaya.com) 31da177e4SLinus Torvalds# Licensed under the GPL 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds 61da177e4SLinus Torvaldsextra-y := vmlinux.lds 71da177e4SLinus Torvaldsclean-files := vmlinux.lds.S config.tmp 81da177e4SLinus Torvalds 91da177e4SLinus Torvaldsobj-y = checksum.o config.o exec_kern.o exitcode.o \ 101da177e4SLinus Torvalds helper.o init_task.o irq.o irq_user.o ksyms.o main.o mem.o mem_user.o \ 111da177e4SLinus Torvalds physmem.o process.o process_kern.o ptrace.o reboot.o resource.o \ 121da177e4SLinus Torvalds sigio_user.o sigio_kern.o signal_kern.o signal_user.o smp.o \ 131da177e4SLinus Torvalds syscall_kern.o sysrq.o sys_call_table.o tempfile.o time.o time_kern.o \ 141da177e4SLinus Torvalds tlb.o trap_kern.o trap_user.o uaccess_user.o um_arch.o umid.o \ 151da177e4SLinus Torvalds user_util.o 161da177e4SLinus Torvalds 171da177e4SLinus Torvaldsobj-$(CONFIG_BLK_DEV_INITRD) += initrd_kern.o initrd_user.o 181da177e4SLinus Torvaldsobj-$(CONFIG_GPROF) += gprof_syms.o 191da177e4SLinus Torvaldsobj-$(CONFIG_GCOV) += gmon_syms.o 201da177e4SLinus Torvaldsobj-$(CONFIG_TTY_LOG) += tty_log.o 211da177e4SLinus Torvaldsobj-$(CONFIG_SYSCALL_DEBUG) += syscall_user.o 221da177e4SLinus Torvalds 231da177e4SLinus Torvaldsobj-$(CONFIG_MODE_TT) += tt/ 241da177e4SLinus Torvaldsobj-$(CONFIG_MODE_SKAS) += skas/ 251da177e4SLinus Torvalds 261da177e4SLinus Torvalds# This needs be compiled with frame pointers regardless of how the rest of the 271da177e4SLinus Torvalds# kernel is built. 281da177e4SLinus TorvaldsCFLAGS_frame.o := -fno-omit-frame-pointer 291da177e4SLinus Torvalds 301da177e4SLinus Torvaldsuser-objs-$(CONFIG_TTY_LOG) += tty_log.o 311da177e4SLinus Torvalds 321da177e4SLinus TorvaldsUSER_OBJS := $(user-objs-y) config.o helper.o main.o process.o tempfile.o \ 331da177e4SLinus Torvalds time.o tty_log.o umid.o user_util.o frame.o 341da177e4SLinus Torvalds 351da177e4SLinus Torvaldsinclude arch/um/scripts/Makefile.rules 361da177e4SLinus Torvalds 371da177e4SLinus Torvaldstargets += config.c 381da177e4SLinus Torvalds 391da177e4SLinus Torvalds# Be careful with the below Sed code - sed is pitfall-rich! 401da177e4SLinus Torvalds# We use sed to lower build requirements, for "embedded" builders for instance. 411da177e4SLinus Torvalds 421da177e4SLinus Torvalds$(obj)/config.tmp: $(objtree)/.config FORCE 431da177e4SLinus Torvalds $(call if_changed,quote1) 441da177e4SLinus Torvalds 451da177e4SLinus Torvaldsquiet_cmd_quote1 = QUOTE $@ 461da177e4SLinus Torvalds cmd_quote1 = sed -e 's/"/\\"/g' -e 's/^/"/' -e 's/$$/\\n"/' \ 471da177e4SLinus Torvalds $< > $@ 481da177e4SLinus Torvalds 491da177e4SLinus Torvalds$(obj)/config.c: $(src)/config.c.in $(obj)/config.tmp FORCE 501da177e4SLinus Torvalds $(call if_changed,quote2) 511da177e4SLinus Torvalds 521da177e4SLinus Torvaldsquiet_cmd_quote2 = QUOTE $@ 531da177e4SLinus Torvalds cmd_quote2 = sed -e '/CONFIG/{' \ 541da177e4SLinus Torvalds -e 's/"CONFIG"\;/""/' \ 551da177e4SLinus Torvalds -e 'r $(obj)/config.tmp' \ 56*b05d85a8SRob Landley -e 'a \' \ 57*b05d85a8SRob Landley -e '""\;' \ 581da177e4SLinus Torvalds -e '}' \ 591da177e4SLinus Torvalds $< > $@ 60