162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# Copyright (c) 2000-2005 Silicon Graphics, Inc. 462306a36Sopenharmony_ci# All Rights Reserved. 562306a36Sopenharmony_ci# 662306a36Sopenharmony_ci 762306a36Sopenharmony_ciccflags-y += -I $(srctree)/$(src) # needed for trace events 862306a36Sopenharmony_ciccflags-y += -I $(srctree)/$(src)/libxfs 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ciobj-$(CONFIG_XFS_FS) += xfs.o 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci# this one should be compiled first, as the tracing macros can easily blow up 1362306a36Sopenharmony_cixfs-y += xfs_trace.o 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci# build the libxfs code first 1662306a36Sopenharmony_cixfs-y += $(addprefix libxfs/, \ 1762306a36Sopenharmony_ci xfs_ag.o \ 1862306a36Sopenharmony_ci xfs_alloc.o \ 1962306a36Sopenharmony_ci xfs_alloc_btree.o \ 2062306a36Sopenharmony_ci xfs_attr.o \ 2162306a36Sopenharmony_ci xfs_attr_leaf.o \ 2262306a36Sopenharmony_ci xfs_attr_remote.o \ 2362306a36Sopenharmony_ci xfs_bit.o \ 2462306a36Sopenharmony_ci xfs_bmap.o \ 2562306a36Sopenharmony_ci xfs_bmap_btree.o \ 2662306a36Sopenharmony_ci xfs_btree.o \ 2762306a36Sopenharmony_ci xfs_btree_staging.o \ 2862306a36Sopenharmony_ci xfs_da_btree.o \ 2962306a36Sopenharmony_ci xfs_defer.o \ 3062306a36Sopenharmony_ci xfs_dir2.o \ 3162306a36Sopenharmony_ci xfs_dir2_block.o \ 3262306a36Sopenharmony_ci xfs_dir2_data.o \ 3362306a36Sopenharmony_ci xfs_dir2_leaf.o \ 3462306a36Sopenharmony_ci xfs_dir2_node.o \ 3562306a36Sopenharmony_ci xfs_dir2_sf.o \ 3662306a36Sopenharmony_ci xfs_dquot_buf.o \ 3762306a36Sopenharmony_ci xfs_ialloc.o \ 3862306a36Sopenharmony_ci xfs_ialloc_btree.o \ 3962306a36Sopenharmony_ci xfs_iext_tree.o \ 4062306a36Sopenharmony_ci xfs_inode_fork.o \ 4162306a36Sopenharmony_ci xfs_inode_buf.o \ 4262306a36Sopenharmony_ci xfs_log_rlimit.o \ 4362306a36Sopenharmony_ci xfs_ag_resv.o \ 4462306a36Sopenharmony_ci xfs_rmap.o \ 4562306a36Sopenharmony_ci xfs_rmap_btree.o \ 4662306a36Sopenharmony_ci xfs_refcount.o \ 4762306a36Sopenharmony_ci xfs_refcount_btree.o \ 4862306a36Sopenharmony_ci xfs_sb.o \ 4962306a36Sopenharmony_ci xfs_symlink_remote.o \ 5062306a36Sopenharmony_ci xfs_trans_inode.o \ 5162306a36Sopenharmony_ci xfs_trans_resv.o \ 5262306a36Sopenharmony_ci xfs_types.o \ 5362306a36Sopenharmony_ci ) 5462306a36Sopenharmony_ci# xfs_rtbitmap is shared with libxfs 5562306a36Sopenharmony_cixfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \ 5662306a36Sopenharmony_ci xfs_rtbitmap.o \ 5762306a36Sopenharmony_ci ) 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci# highlevel code 6062306a36Sopenharmony_cixfs-y += xfs_aops.o \ 6162306a36Sopenharmony_ci xfs_attr_inactive.o \ 6262306a36Sopenharmony_ci xfs_attr_list.o \ 6362306a36Sopenharmony_ci xfs_bmap_util.o \ 6462306a36Sopenharmony_ci xfs_bio_io.o \ 6562306a36Sopenharmony_ci xfs_buf.o \ 6662306a36Sopenharmony_ci xfs_dahash_test.o \ 6762306a36Sopenharmony_ci xfs_dir2_readdir.o \ 6862306a36Sopenharmony_ci xfs_discard.o \ 6962306a36Sopenharmony_ci xfs_error.o \ 7062306a36Sopenharmony_ci xfs_export.o \ 7162306a36Sopenharmony_ci xfs_extent_busy.o \ 7262306a36Sopenharmony_ci xfs_file.o \ 7362306a36Sopenharmony_ci xfs_filestream.o \ 7462306a36Sopenharmony_ci xfs_fsmap.o \ 7562306a36Sopenharmony_ci xfs_fsops.o \ 7662306a36Sopenharmony_ci xfs_globals.o \ 7762306a36Sopenharmony_ci xfs_health.o \ 7862306a36Sopenharmony_ci xfs_icache.o \ 7962306a36Sopenharmony_ci xfs_ioctl.o \ 8062306a36Sopenharmony_ci xfs_iomap.o \ 8162306a36Sopenharmony_ci xfs_iops.o \ 8262306a36Sopenharmony_ci xfs_inode.o \ 8362306a36Sopenharmony_ci xfs_itable.o \ 8462306a36Sopenharmony_ci xfs_iwalk.o \ 8562306a36Sopenharmony_ci xfs_message.o \ 8662306a36Sopenharmony_ci xfs_mount.o \ 8762306a36Sopenharmony_ci xfs_mru_cache.o \ 8862306a36Sopenharmony_ci xfs_pwork.o \ 8962306a36Sopenharmony_ci xfs_reflink.o \ 9062306a36Sopenharmony_ci xfs_stats.o \ 9162306a36Sopenharmony_ci xfs_super.o \ 9262306a36Sopenharmony_ci xfs_symlink.o \ 9362306a36Sopenharmony_ci xfs_sysfs.o \ 9462306a36Sopenharmony_ci xfs_trans.o \ 9562306a36Sopenharmony_ci xfs_xattr.o \ 9662306a36Sopenharmony_ci kmem.o 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_ci# low-level transaction/log code 9962306a36Sopenharmony_cixfs-y += xfs_log.o \ 10062306a36Sopenharmony_ci xfs_log_cil.o \ 10162306a36Sopenharmony_ci xfs_bmap_item.o \ 10262306a36Sopenharmony_ci xfs_buf_item.o \ 10362306a36Sopenharmony_ci xfs_buf_item_recover.o \ 10462306a36Sopenharmony_ci xfs_dquot_item_recover.o \ 10562306a36Sopenharmony_ci xfs_extfree_item.o \ 10662306a36Sopenharmony_ci xfs_attr_item.o \ 10762306a36Sopenharmony_ci xfs_icreate_item.o \ 10862306a36Sopenharmony_ci xfs_inode_item.o \ 10962306a36Sopenharmony_ci xfs_inode_item_recover.o \ 11062306a36Sopenharmony_ci xfs_iunlink_item.o \ 11162306a36Sopenharmony_ci xfs_refcount_item.o \ 11262306a36Sopenharmony_ci xfs_rmap_item.o \ 11362306a36Sopenharmony_ci xfs_log_recover.o \ 11462306a36Sopenharmony_ci xfs_trans_ail.o \ 11562306a36Sopenharmony_ci xfs_trans_buf.o 11662306a36Sopenharmony_ci 11762306a36Sopenharmony_ci# optional features 11862306a36Sopenharmony_cixfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \ 11962306a36Sopenharmony_ci xfs_dquot_item.o \ 12062306a36Sopenharmony_ci xfs_trans_dquot.o \ 12162306a36Sopenharmony_ci xfs_qm_syscalls.o \ 12262306a36Sopenharmony_ci xfs_qm_bhv.o \ 12362306a36Sopenharmony_ci xfs_qm.o \ 12462306a36Sopenharmony_ci xfs_quotaops.o 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci# xfs_rtbitmap is shared with libxfs 12762306a36Sopenharmony_cixfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_cixfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o 13062306a36Sopenharmony_cixfs-$(CONFIG_SYSCTL) += xfs_sysctl.o 13162306a36Sopenharmony_cixfs-$(CONFIG_COMPAT) += xfs_ioctl32.o 13262306a36Sopenharmony_cixfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ci# notify failure 13562306a36Sopenharmony_ciifeq ($(CONFIG_MEMORY_FAILURE),y) 13662306a36Sopenharmony_cixfs-$(CONFIG_FS_DAX) += xfs_notify_failure.o 13762306a36Sopenharmony_ciendif 13862306a36Sopenharmony_ci 13962306a36Sopenharmony_cixfs-$(CONFIG_XFS_DRAIN_INTENTS) += xfs_drain.o 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ci# online scrub/repair 14262306a36Sopenharmony_ciifeq ($(CONFIG_XFS_ONLINE_SCRUB),y) 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_ci# Tracepoints like to blow up, so build that before everything else 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_cixfs-y += $(addprefix scrub/, \ 14762306a36Sopenharmony_ci trace.o \ 14862306a36Sopenharmony_ci agheader.o \ 14962306a36Sopenharmony_ci alloc.o \ 15062306a36Sopenharmony_ci attr.o \ 15162306a36Sopenharmony_ci bitmap.o \ 15262306a36Sopenharmony_ci bmap.o \ 15362306a36Sopenharmony_ci btree.o \ 15462306a36Sopenharmony_ci common.o \ 15562306a36Sopenharmony_ci dabtree.o \ 15662306a36Sopenharmony_ci dir.o \ 15762306a36Sopenharmony_ci fscounters.o \ 15862306a36Sopenharmony_ci health.o \ 15962306a36Sopenharmony_ci ialloc.o \ 16062306a36Sopenharmony_ci inode.o \ 16162306a36Sopenharmony_ci parent.o \ 16262306a36Sopenharmony_ci readdir.o \ 16362306a36Sopenharmony_ci refcount.o \ 16462306a36Sopenharmony_ci rmap.o \ 16562306a36Sopenharmony_ci scrub.o \ 16662306a36Sopenharmony_ci symlink.o \ 16762306a36Sopenharmony_ci xfarray.o \ 16862306a36Sopenharmony_ci xfile.o \ 16962306a36Sopenharmony_ci ) 17062306a36Sopenharmony_ci 17162306a36Sopenharmony_cixfs-$(CONFIG_XFS_ONLINE_SCRUB_STATS) += scrub/stats.o 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_cixfs-$(CONFIG_XFS_RT) += $(addprefix scrub/, \ 17462306a36Sopenharmony_ci rtbitmap.o \ 17562306a36Sopenharmony_ci rtsummary.o \ 17662306a36Sopenharmony_ci ) 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_cixfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o 17962306a36Sopenharmony_ci 18062306a36Sopenharmony_ci# online repair 18162306a36Sopenharmony_ciifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) 18262306a36Sopenharmony_cixfs-y += $(addprefix scrub/, \ 18362306a36Sopenharmony_ci agheader_repair.o \ 18462306a36Sopenharmony_ci reap.o \ 18562306a36Sopenharmony_ci repair.o \ 18662306a36Sopenharmony_ci ) 18762306a36Sopenharmony_ciendif 18862306a36Sopenharmony_ciendif 189