$(src)/build_info.cid:
	@echo `git rev-parse HEAD` > $(src)/build_info.cid.tmp
	@if [ ! -f $(src)/build_info.cid ] || \
		[ `cmp -s $(src)/build_info.cid $(src)/build_info.cid.tmp` -ne 0 ]; then \
			cp $(src)/build_info.cid.tmp $(src)/build_info.cid; fi;
	@rm -f $(src)/build_info.cid.tmp

$(src)/build_info.c: $(src)/build_info.cid
	@echo "/* Automatically generated. DO NOT EDIT! */" > $(@)
	@echo "" >> $(@)
	@echo "const char build_info_date[] = { \"`date`\" };"\
		>> $(@)
	@echo "const char build_info_commitid[] = { \"`cat $(src)/build_info.cid`\" };"\
		>> $(@)
	@echo "const char build_info_version[] = { \"$(KERNELVERSION)\" };"\
		>> $(@)
	@echo "const char build_info_version_name[] = { \"$(VERNAME)\" };"\
		>> $(@)

$(src)/kconfig_info.c: .config
	@scripts/make_kconfig_info.sh $< $@

clean-files += build_info.c build_info.cid kconfig_info.c

obj-y						+= alarm.o
obj-y						+= apipe.o
obj-y						+= arena.o
obj-y						+= arsc.o
obj-y						+= atomic.o
obj-y						+= bitmap.o
obj-y						+= build_info.o
obj-y						+= ceq.o
obj-y						+= completion.o
obj-y						+= coreprov.o
obj-y						+= ctype.o
obj-y						+= dmapool.o
obj-y						+= elf.o
obj-y						+= env.o
obj-y						+= err.o
obj-$(CONFIG_ETH_AUDIO)		+= eth_audio.o
obj-y						+= event.o
obj-y						+= ex_table.o
obj-y						+= fdtap.o
obj-$(CONFIG_COREALLOC_FCFS) += corealloc_fcfs.o
obj-y						+= find_next_bit.o
obj-y						+= find_last_bit.o
obj-y						+= hashtable.o
obj-y						+= hexdump.o
obj-y						+= init.o
obj-y						+= kconfig_info.o
obj-y						+= kdebug.o
obj-y						+= kmalloc.o
obj-y						+= kreallocarray.o
obj-y						+= ktest/
obj-y						+= kthread.o
obj-y						+= manager.o
obj-y						+= mm.o
obj-y						+= monitor.o
obj-y						+= multiboot.o
obj-y						+= net/
obj-y						+= ns/
obj-y						+= profiler.o
obj-$(CONFIG_COREALLOC_PACKED) += corealloc_packed.o
obj-y						+= page_alloc.o
obj-y						+= pagemap.o
obj-y						+= percpu.o
obj-y						+= pmap.o
obj-y						+= printf.o
obj-y						+= printfmt.o
obj-y						+= process.o
obj-y						+= radix.o
obj-y						+= readline.o
obj-y						+= rendez.o
obj-y						+= rcu.o
obj-y						+= rcu_tree_helper.o
obj-y						+= rwlock.o
obj-y						+= scatterlist.o
obj-y						+= schedule.o
obj-y						+= slab.o
obj-y						+= smallidpool.o
obj-y						+= smp.o
obj-y						+= string.o
obj-y						+= strstr.o
obj-y						+= syscall.o
obj-y						+= taskqueue.o
obj-y						+= time.o
obj-y						+= trace.o
obj-y						+= trap.o
obj-y						+= ucq.o
obj-y						+= umem.o
obj-y						+= vfs.o
obj-y						+= vsprintf.o
