^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # Makefile for the kernel software RAID and LVM drivers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) dm-mod-y += dm.o dm-table.o dm-target.o dm-linear.o dm-stripe.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) dm-ioctl.o dm-io.o dm-kcopyd.o dm-sysfs.o dm-stats.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) dm-rq.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) dm-multipath-y += dm-path-selector.o dm-mpath.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) dm-snapshot-y += dm-snap.o dm-exception-store.o dm-snap-transient.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) dm-snap-persistent.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) dm-mirror-y += dm-raid1.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) dm-log-userspace-y \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) += dm-log-userspace-base.o dm-log-userspace-transfer.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) dm-bio-prison-y += dm-bio-prison-v1.o dm-bio-prison-v2.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) dm-thin-pool-y += dm-thin.o dm-thin-metadata.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) dm-cache-y += dm-cache-target.o dm-cache-metadata.o dm-cache-policy.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) dm-cache-background-tracker.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) dm-cache-smq-y += dm-cache-policy-smq.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) dm-ebs-y += dm-ebs-target.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) dm-era-y += dm-era-target.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) dm-clone-y += dm-clone-target.o dm-clone-metadata.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) dm-verity-y += dm-verity-target.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) md-mod-y += md.o md-bitmap.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) raid456-y += raid5.o raid5-cache.o raid5-ppl.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) dm-zoned-y += dm-zoned-target.o dm-zoned-metadata.o dm-zoned-reclaim.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) linear-y += md-linear.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) multipath-y += md-multipath.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) faulty-y += md-faulty.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) # Note: link order is important. All raid personalities
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) # and must come before md.o, as they each initialise
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) # themselves, and md.o may use the personalities when it
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) # auto-initialised.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) obj-$(CONFIG_MD_LINEAR) += linear.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) obj-$(CONFIG_MD_RAID0) += raid0.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) obj-$(CONFIG_MD_RAID1) += raid1.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) obj-$(CONFIG_MD_RAID10) += raid10.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) obj-$(CONFIG_MD_RAID456) += raid456.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) obj-$(CONFIG_MD_MULTIPATH) += multipath.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) obj-$(CONFIG_MD_FAULTY) += faulty.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) obj-$(CONFIG_MD_CLUSTER) += md-cluster.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) obj-$(CONFIG_BCACHE) += bcache/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) obj-$(CONFIG_BLK_DEV_MD) += md-mod.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) ifeq ($(CONFIG_BLK_DEV_MD),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) obj-y += md-autodetect.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) obj-$(CONFIG_BLK_DEV_DM) += dm-mod.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) obj-$(CONFIG_BLK_DEV_DM_BUILTIN) += dm-builtin.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) obj-$(CONFIG_DM_UNSTRIPED) += dm-unstripe.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) obj-$(CONFIG_DM_BUFIO) += dm-bufio.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) obj-$(CONFIG_DM_BIO_PRISON) += dm-bio-prison.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) obj-$(CONFIG_DM_CRYPT) += dm-crypt.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) obj-$(CONFIG_DM_DEFAULT_KEY) += dm-default-key.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) obj-$(CONFIG_DM_DELAY) += dm-delay.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) obj-$(CONFIG_DM_DUST) += dm-dust.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) obj-$(CONFIG_DM_FLAKEY) += dm-flakey.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) obj-$(CONFIG_DM_MULTIPATH) += dm-multipath.o dm-round-robin.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) obj-$(CONFIG_DM_MULTIPATH_QL) += dm-queue-length.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) obj-$(CONFIG_DM_MULTIPATH_ST) += dm-service-time.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) obj-$(CONFIG_DM_MULTIPATH_HST) += dm-historical-service-time.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) obj-$(CONFIG_DM_SWITCH) += dm-switch.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) obj-$(CONFIG_DM_SNAPSHOT) += dm-snapshot.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) obj-$(CONFIG_DM_PERSISTENT_DATA) += persistent-data/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) obj-$(CONFIG_DM_MIRROR) += dm-mirror.o dm-log.o dm-region-hash.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) obj-$(CONFIG_DM_LOG_USERSPACE) += dm-log-userspace.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) obj-$(CONFIG_DM_ZERO) += dm-zero.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) obj-$(CONFIG_DM_RAID) += dm-raid.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) obj-$(CONFIG_DM_THIN_PROVISIONING) += dm-thin-pool.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) obj-$(CONFIG_DM_VERITY) += dm-verity.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) obj-$(CONFIG_DM_CACHE) += dm-cache.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) obj-$(CONFIG_DM_CACHE_SMQ) += dm-cache-smq.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) obj-$(CONFIG_DM_EBS) += dm-ebs.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) obj-$(CONFIG_DM_ERA) += dm-era.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) obj-$(CONFIG_DM_CLONE) += dm-clone.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) obj-$(CONFIG_DM_LOG_WRITES) += dm-log-writes.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) obj-$(CONFIG_DM_INTEGRITY) += dm-integrity.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) obj-$(CONFIG_DM_ZONED) += dm-zoned.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) obj-$(CONFIG_DM_WRITECACHE) += dm-writecache.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) obj-$(CONFIG_DM_BOW) += dm-bow.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) obj-$(CONFIG_DM_USER) += dm-user.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) ifeq ($(CONFIG_DM_INIT),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) dm-mod-objs += dm-init.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) ifeq ($(CONFIG_DM_UEVENT),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) dm-mod-objs += dm-uevent.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) ifeq ($(CONFIG_DM_VERITY_FEC),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) dm-verity-objs += dm-verity-fec.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) ifeq ($(CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) dm-verity-objs += dm-verity-verify-sig.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) endif