10b61f8a4SDave Chinner# SPDX-License-Identifier: GPL-2.0 258b7983dSAndi Kleen# 358b7983dSAndi Kleen# Copyright (c) 2000-2005 Silicon Graphics, Inc. 458b7983dSAndi Kleen# All Rights Reserved. 558b7983dSAndi Kleen# 658b7983dSAndi Kleen 79cc342f6SMasahiro Yamadaccflags-y += -I $(srctree)/$(src) # needed for trace events 89cc342f6SMasahiro Yamadaccflags-y += -I $(srctree)/$(src)/libxfs 9b6bede3bSChristoph Hellwig 1058b7983dSAndi Kleenobj-$(CONFIG_XFS_FS) += xfs.o 11269cdfafSLachlan McIlroy 12c59d87c4SChristoph Hellwig# this one should be compiled first, as the tracing macros can easily blow up 13c59d87c4SChristoph Hellwigxfs-y += xfs_trace.o 140b1b213fSChristoph Hellwig 1569116a13SDave Chinner# build the libxfs code first 1669116a13SDave Chinnerxfs-y += $(addprefix libxfs/, \ 17b16817b6SDave Chinner xfs_ag.o \ 1830f712c9SDave Chinner xfs_alloc.o \ 1930f712c9SDave Chinner xfs_alloc_btree.o \ 2030f712c9SDave Chinner xfs_attr.o \ 2130f712c9SDave Chinner xfs_attr_leaf.o \ 2230f712c9SDave Chinner xfs_attr_remote.o \ 231cfc4a9cSDave Chinner xfs_bit.o \ 2430f712c9SDave Chinner xfs_bmap.o \ 2530f712c9SDave Chinner xfs_bmap_btree.o \ 2630f712c9SDave Chinner xfs_btree.o \ 27e06536a6SDarrick J. Wong xfs_btree_staging.o \ 2830f712c9SDave Chinner xfs_da_btree.o \ 294e0cc29bSDarrick J. Wong xfs_defer.o \ 3030f712c9SDave Chinner xfs_dir2.o \ 3130f712c9SDave Chinner xfs_dir2_block.o \ 3230f712c9SDave Chinner xfs_dir2_data.o \ 3330f712c9SDave Chinner xfs_dir2_leaf.o \ 3430f712c9SDave Chinner xfs_dir2_node.o \ 3530f712c9SDave Chinner xfs_dir2_sf.o \ 3630f712c9SDave Chinner xfs_dquot_buf.o \ 3730f712c9SDave Chinner xfs_ialloc.o \ 3830f712c9SDave Chinner xfs_ialloc_btree.o \ 396bdcf26aSChristoph Hellwig xfs_iext_tree.o \ 4030f712c9SDave Chinner xfs_inode_fork.o \ 4130f712c9SDave Chinner xfs_inode_buf.o \ 4230f712c9SDave Chinner xfs_log_rlimit.o \ 433fd129b6SDarrick J. Wong xfs_ag_resv.o \ 44673930c3SDarrick J. Wong xfs_rmap.o \ 45035e00acSDarrick J. Wong xfs_rmap_btree.o \ 46bdf28630SDarrick J. Wong xfs_refcount.o \ 471946b91cSDarrick J. Wong xfs_refcount_btree.o \ 4869116a13SDave Chinner xfs_sb.o \ 4930f712c9SDave Chinner xfs_symlink_remote.o \ 503f6d70e8SEric Sandeen xfs_trans_inode.o \ 5130f712c9SDave Chinner xfs_trans_resv.o \ 5286210fbeSDave Chinner xfs_types.o \ 5330f712c9SDave Chinner ) 5430f712c9SDave Chinner# xfs_rtbitmap is shared with libxfs 5530f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \ 5630f712c9SDave Chinner xfs_rtbitmap.o \ 5769116a13SDave Chinner ) 5869116a13SDave Chinner 59c59d87c4SChristoph Hellwig# highlevel code 60c59d87c4SChristoph Hellwigxfs-y += xfs_aops.o \ 61fde2227cSDave Chinner xfs_attr_inactive.o \ 62abec5f2bSDave Chinner xfs_attr_list.o \ 6368988114SDave Chinner xfs_bmap_util.o \ 646ad5b325SChristoph Hellwig xfs_bio_io.o \ 65c59d87c4SChristoph Hellwig xfs_buf.o \ 663cfb9290SDarrick J. Wong xfs_dahash_test.o \ 674a8af273SDave Chinner xfs_dir2_readdir.o \ 68c59d87c4SChristoph Hellwig xfs_discard.o \ 69c59d87c4SChristoph Hellwig xfs_error.o \ 70c59d87c4SChristoph Hellwig xfs_export.o \ 71efc27b52SDave Chinner xfs_extent_busy.o \ 72c59d87c4SChristoph Hellwig xfs_file.o \ 73c59d87c4SChristoph Hellwig xfs_filestream.o \ 74e89c0413SDarrick J. Wong xfs_fsmap.o \ 75c59d87c4SChristoph Hellwig xfs_fsops.o \ 76c59d87c4SChristoph Hellwig xfs_globals.o \ 776772c1f1SDarrick J. Wong xfs_health.o \ 786d8b79cfSDave Chinner xfs_icache.o \ 79c59d87c4SChristoph Hellwig xfs_ioctl.o \ 80c59d87c4SChristoph Hellwig xfs_iomap.o \ 81c59d87c4SChristoph Hellwig xfs_iops.o \ 8230f712c9SDave Chinner xfs_inode.o \ 83c59d87c4SChristoph Hellwig xfs_itable.o \ 84a211432cSDarrick J. Wong xfs_iwalk.o \ 85c59d87c4SChristoph Hellwig xfs_message.o \ 86ff55068cSDave Chinner xfs_mount.o \ 87c59d87c4SChristoph Hellwig xfs_mru_cache.o \ 8840786717SDarrick J. Wong xfs_pwork.o \ 893993baebSDarrick J. Wong xfs_reflink.o \ 90985ef4dcSDave Chinner xfs_stats.o \ 9119de7351SDave Chinner xfs_super.o \ 921fb7e48dSDave Chinner xfs_symlink.o \ 93a31b1d3dSBrian Foster xfs_sysfs.o \ 947fd36c44SDave Chinner xfs_trans.o \ 9519de7351SDave Chinner xfs_xattr.o \ 96d905fdaaSAmir Goldstein kmem.o 97269cdfafSLachlan McIlroy 98c59d87c4SChristoph Hellwig# low-level transaction/log code 99c59d87c4SChristoph Hellwigxfs-y += xfs_log.o \ 100c59d87c4SChristoph Hellwig xfs_log_cil.o \ 1016413a014SDarrick J. Wong xfs_bmap_item.o \ 102c59d87c4SChristoph Hellwig xfs_buf_item.o \ 10386ffa471SDarrick J. Wong xfs_buf_item_recover.o \ 10486ffa471SDarrick J. Wong xfs_dquot_item_recover.o \ 105c59d87c4SChristoph Hellwig xfs_extfree_item.o \ 106fd920008SAllison Henderson xfs_attr_item.o \ 10730f712c9SDave Chinner xfs_icreate_item.o \ 108c59d87c4SChristoph Hellwig xfs_inode_item.o \ 10986ffa471SDarrick J. Wong xfs_inode_item_recover.o \ 110784eb7d8SDave Chinner xfs_iunlink_item.o \ 111baf4bcacSDarrick J. Wong xfs_refcount_item.o \ 1125880f2d7SDarrick J. Wong xfs_rmap_item.o \ 11330f712c9SDave Chinner xfs_log_recover.o \ 11458b7983dSAndi Kleen xfs_trans_ail.o \ 1153f6d70e8SEric Sandeen xfs_trans_buf.o 11658b7983dSAndi Kleen 117c59d87c4SChristoph Hellwig# optional features 118c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \ 119c59d87c4SChristoph Hellwig xfs_dquot_item.o \ 120c59d87c4SChristoph Hellwig xfs_trans_dquot.o \ 121c59d87c4SChristoph Hellwig xfs_qm_syscalls.o \ 122c59d87c4SChristoph Hellwig xfs_qm_bhv.o \ 123c59d87c4SChristoph Hellwig xfs_qm.o \ 124c59d87c4SChristoph Hellwig xfs_quotaops.o 125c963c619SDave Chinner 126c963c619SDave Chinner# xfs_rtbitmap is shared with libxfs 12730f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o 128c963c619SDave Chinner 129c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o 130c59d87c4SChristoph Hellwigxfs-$(CONFIG_SYSCTL) += xfs_sysctl.o 131c59d87c4SChristoph Hellwigxfs-$(CONFIG_COMPAT) += xfs_ioctl32.o 13215d66ac2SBenjamin Coddingtonxfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o 13336fd6e86SDarrick J. Wong 1346f643c57SShiyang Ruan# notify failure 1356f643c57SShiyang Ruanifeq ($(CONFIG_MEMORY_FAILURE),y) 1366f643c57SShiyang Ruanxfs-$(CONFIG_FS_DAX) += xfs_notify_failure.o 1376f643c57SShiyang Ruanendif 1386f643c57SShiyang Ruan 139d5c88131SDarrick J. Wongxfs-$(CONFIG_XFS_DRAIN_INTENTS) += xfs_drain.o 140d5c88131SDarrick J. Wong 14136fd6e86SDarrick J. Wong# online scrub/repair 14236fd6e86SDarrick J. Wongifeq ($(CONFIG_XFS_ONLINE_SCRUB),y) 14336fd6e86SDarrick J. Wong 14436fd6e86SDarrick J. Wong# Tracepoints like to blow up, so build that before everything else 14536fd6e86SDarrick J. Wong 14636fd6e86SDarrick J. Wongxfs-y += $(addprefix scrub/, \ 14736fd6e86SDarrick J. Wong trace.o \ 14821fb4cb1SDarrick J. Wong agheader.o \ 149efa7a99cSDarrick J. Wong alloc.o \ 150eec0482eSDarrick J. Wong attr.o \ 151fed050f3SDarrick J. Wong bitmap.o \ 15299d9d8d0SDarrick J. Wong bmap.o \ 153537964bcSDarrick J. Wong btree.o \ 154dcb660f9SDarrick J. Wong common.o \ 1557c4a07a4SDarrick J. Wong dabtree.o \ 156a5c46e5eSDarrick J. Wong dir.o \ 15775efa57dSDarrick J. Wong fscounters.o \ 1584860a05dSDarrick J. Wong health.o \ 1593daa6641SDarrick J. Wong ialloc.o \ 16080e4e126SDarrick J. Wong inode.o \ 1610f28b257SDarrick J. Wong parent.o \ 1624c233b5cSDarrick J. Wong readdir.o \ 163edc09b52SDarrick J. Wong refcount.o \ 164c7e693d9SDarrick J. Wong rmap.o \ 16536fd6e86SDarrick J. Wong scrub.o \ 1662a721dbbSDarrick J. Wong symlink.o \ 1673934e8ebSDarrick J. Wong xfarray.o \ 1683934e8ebSDarrick J. Wong xfile.o \ 16936fd6e86SDarrick J. Wong ) 17029b0767bSDarrick J. Wong 171d7a74cadSDarrick J. Wongxfs-$(CONFIG_XFS_ONLINE_SCRUB_STATS) += scrub/stats.o 172*b7d47a77SDarrick J. Wong 173*b7d47a77SDarrick J. Wongxfs-$(CONFIG_XFS_RT) += $(addprefix scrub/, \ 174*b7d47a77SDarrick J. Wong rtbitmap.o \ 175*b7d47a77SDarrick J. Wong rtsummary.o \ 176*b7d47a77SDarrick J. Wong ) 177*b7d47a77SDarrick J. Wong 178c2fc338cSDarrick J. Wongxfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o 17984d42ea6SDarrick J. Wong 18084d42ea6SDarrick J. Wong# online repair 18184d42ea6SDarrick J. Wongifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) 18284d42ea6SDarrick J. Wongxfs-y += $(addprefix scrub/, \ 183d25522f1SDarrick J. Wong agheader_repair.o \ 184e06ef14bSDarrick J. Wong reap.o \ 18584d42ea6SDarrick J. Wong repair.o \ 18684d42ea6SDarrick J. Wong ) 18784d42ea6SDarrick J. Wongendif 18836fd6e86SDarrick J. Wongendif 189