11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Makefile for some libs needed in the kernel. 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 5*2464a609SIngo Molnarifdef CONFIG_FTRACE 6*2464a609SIngo MolnarORIG_CFLAGS := $(KBUILD_CFLAGS) 7*2464a609SIngo MolnarKBUILD_CFLAGS = $(subst -pg,,$(ORIG_CFLAGS)) 8*2464a609SIngo Molnarendif 9*2464a609SIngo Molnar 107a5c5d57SAlexey Dobriyanlib-y := ctype.o string.o vsprintf.o cmdline.o \ 11cefc8be8SKirill Korotaev rbtree.o radix-tree.o dump_stack.o \ 125a6dca7cSPaul Mundt idr.o int_sqrt.o extable.o prio_tree.o \ 13145ca25eSPeter Zijlstra sha1.o irq_regs.o reciprocal_div.o argv_split.o \ 145f97a5a8SDave Young proportions.o prio_heap.o ratelimit.o 159a19fea4Smochel@digitalimplant.org 1674588d8bSHaavard Skinnemoenlib-$(CONFIG_MMU) += ioremap.o 17ccb46000SAndrew Mortonlib-$(CONFIG_SMP) += cpumask.o 18ccb46000SAndrew Morton 195c5daf65SKay Sieverslib-y += kobject.o kref.o klist.o 201da177e4SLinus Torvalds 213927f2e8SStephen Hemmingerobj-y += div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \ 224600ecfcSGuennadi Liakhovetski bust_spinlocks.o hexdump.o kasprintf.o bitmap.o scatterlist.o 231da177e4SLinus Torvalds 241da177e4SLinus Torvaldsifeq ($(CONFIG_DEBUG_KOBJECT),y) 251da177e4SLinus TorvaldsCFLAGS_kobject.o += -DDEBUG 261da177e4SLinus TorvaldsCFLAGS_kobject_uevent.o += -DDEBUG 271da177e4SLinus Torvaldsendif 281da177e4SLinus Torvalds 295c5daf65SKay Sieverslib-$(CONFIG_HOTPLUG) += kobject_uevent.o 305ea81769SAl Viroobj-$(CONFIG_GENERIC_IOMAP) += iomap.o 31928923c7SGeert Uytterhoevenobj-$(CONFIG_HAS_IOMEM) += iomap_copy.o devres.o 32928923c7SGeert Uytterhoevenobj-$(CONFIG_CHECK_SIGNATURE) += check_signature.o 33cae2ed9aSIngo Molnarobj-$(CONFIG_DEBUG_LOCKING_API_SELFTESTS) += locking-selftest.o 34fb1c8f93SIngo Molnarobj-$(CONFIG_DEBUG_SPINLOCK) += spinlock_debug.o 351da177e4SLinus Torvaldslib-$(CONFIG_RWSEM_GENERIC_SPINLOCK) += rwsem-spinlock.o 361da177e4SLinus Torvaldslib-$(CONFIG_RWSEM_XCHGADD_ALGORITHM) += rwsem.o 3777b9bd9cSAlexander van Heukelumlib-$(CONFIG_GENERIC_FIND_FIRST_BIT) += find_next_bit.o 381da177e4SLinus Torvaldslib-$(CONFIG_GENERIC_FIND_NEXT_BIT) += find_next_bit.o 39702a28b1SRandy Dunlapobj-$(CONFIG_GENERIC_HWEIGHT) += hweight.o 401da177e4SLinus Torvaldsobj-$(CONFIG_LOCK_KERNEL) += kernel_lock.o 4177ba89c5SIngo Molnarobj-$(CONFIG_PLIST) += plist.o 4239c715b7SIngo Molnarobj-$(CONFIG_DEBUG_PREEMPT) += smp_processor_id.o 43199a9afcSDave Jonesobj-$(CONFIG_DEBUG_LIST) += list_debug.o 443ac7fe5aSThomas Gleixnerobj-$(CONFIG_DEBUG_OBJECTS) += debugobjects.o 451da177e4SLinus Torvalds 461da177e4SLinus Torvaldsifneq ($(CONFIG_HAVE_DEC_LOCK),y) 471da177e4SLinus Torvalds lib-y += dec_and_lock.o 481da177e4SLinus Torvaldsendif 491da177e4SLinus Torvalds 50a5cfc1ecSAkinobu Mitaobj-$(CONFIG_BITREVERSE) += bitrev.o 511da177e4SLinus Torvaldsobj-$(CONFIG_CRC_CCITT) += crc-ccitt.o 527657ec1fSEvgeniy Polyakovobj-$(CONFIG_CRC16) += crc16.o 53f11f594eSMartin K. Petersenobj-$(CONFIG_CRC_T10DIF)+= crc-t10dif.o 543e7cbae7SIvo van Doornobj-$(CONFIG_CRC_ITU_T) += crc-itu-t.o 551da177e4SLinus Torvaldsobj-$(CONFIG_CRC32) += crc32.o 56ad241528SJan Nikitenkoobj-$(CONFIG_CRC7) += crc7.o 571da177e4SLinus Torvaldsobj-$(CONFIG_LIBCRC32C) += libcrc32c.o 58f14f75b8SJes Sorensenobj-$(CONFIG_GENERIC_ALLOCATOR) += genalloc.o 591da177e4SLinus Torvalds 601da177e4SLinus Torvaldsobj-$(CONFIG_ZLIB_INFLATE) += zlib_inflate/ 611da177e4SLinus Torvaldsobj-$(CONFIG_ZLIB_DEFLATE) += zlib_deflate/ 621da177e4SLinus Torvaldsobj-$(CONFIG_REED_SOLOMON) += reed_solomon/ 6364c70b1cSRichard Purdieobj-$(CONFIG_LZO_COMPRESS) += lzo/ 6464c70b1cSRichard Purdieobj-$(CONFIG_LZO_DECOMPRESS) += lzo/ 651da177e4SLinus Torvalds 6665df877aSDavid S. Millerobj-$(CONFIG_TEXTSEARCH) += textsearch.o 67df3fb93aSThomas Grafobj-$(CONFIG_TEXTSEARCH_KMP) += ts_kmp.o 688082e4edSPablo Neira Ayusoobj-$(CONFIG_TEXTSEARCH_BM) += ts_bm.o 696408f79cSThomas Grafobj-$(CONFIG_TEXTSEARCH_FSM) += ts_fsm.o 703cbc5640SRavikiran G Thirumalaiobj-$(CONFIG_SMP) += percpu_counter.o 71e65e1fc2SAl Viroobj-$(CONFIG_AUDIT_GENERIC) += audit.o 722de4ff7bSThomas Graf 736c654b5fSJohn W. Linvilleobj-$(CONFIG_SWIOTLB) += swiotlb.o 740291df8cSFUJITA Tomonoriobj-$(CONFIG_IOMMU_HELPER) += iommu-helper.o 756ff1cb35SAkinobu Mitaobj-$(CONFIG_FAULT_INJECTION) += fault-inject.o 766c654b5fSJohn W. Linville 777664c5a1SJeremy Fitzhardingelib-$(CONFIG_GENERIC_BUG) += bug.o 787664c5a1SJeremy Fitzhardinge 79d9b2b2a2SDavid S. Millerobj-$(CONFIG_HAVE_LMB) += lmb.o 80d9b2b2a2SDavid S. Miller 811da177e4SLinus Torvaldshostprogs-y := gen_crc32table 821da177e4SLinus Torvaldsclean-files := crc32table.h 831da177e4SLinus Torvalds 841da177e4SLinus Torvalds$(obj)/crc32.o: $(obj)/crc32table.h 851da177e4SLinus Torvalds 861da177e4SLinus Torvaldsquiet_cmd_crc32 = GEN $@ 871da177e4SLinus Torvalds cmd_crc32 = $< > $@ 881da177e4SLinus Torvalds 891da177e4SLinus Torvalds$(obj)/crc32table.h: $(obj)/gen_crc32table 901da177e4SLinus Torvalds $(call cmd,crc32) 91