1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 # 2 # 3 # Copyright (c) 2000-2005 Silicon Graphics, In 3 # Copyright (c) 2000-2005 Silicon Graphics, Inc. 4 # All Rights Reserved. 4 # All Rights Reserved. 5 # 5 # 6 6 7 ccflags-y += -I $(src) # needed for t !! 7 ccflags-y += -I $(srctree)/$(src) # needed for trace events 8 ccflags-y += -I $(src)/libxfs !! 8 ccflags-y += -I $(srctree)/$(src)/libxfs >> 9 >> 10 ccflags-$(CONFIG_XFS_DEBUG) += -g 9 11 10 obj-$(CONFIG_XFS_FS) += xfs.o 12 obj-$(CONFIG_XFS_FS) += xfs.o 11 13 12 # this one should be compiled first, as the tr 14 # this one should be compiled first, as the tracing macros can easily blow up 13 xfs-y += xfs_trace.o 15 xfs-y += xfs_trace.o 14 16 15 # build the libxfs code first 17 # build the libxfs code first 16 xfs-y += $(addprefix 18 xfs-y += $(addprefix libxfs/, \ 17 xfs_ag.o \ 19 xfs_ag.o \ 18 xfs_alloc.o 20 xfs_alloc.o \ 19 xfs_alloc_b 21 xfs_alloc_btree.o \ 20 xfs_attr.o 22 xfs_attr.o \ 21 xfs_attr_le 23 xfs_attr_leaf.o \ 22 xfs_attr_re 24 xfs_attr_remote.o \ 23 xfs_bit.o \ 25 xfs_bit.o \ 24 xfs_bmap.o 26 xfs_bmap.o \ 25 xfs_bmap_bt 27 xfs_bmap_btree.o \ 26 xfs_btree.o 28 xfs_btree.o \ 27 xfs_btree_s 29 xfs_btree_staging.o \ 28 xfs_da_btre 30 xfs_da_btree.o \ 29 xfs_defer.o 31 xfs_defer.o \ 30 xfs_dir2.o 32 xfs_dir2.o \ 31 xfs_dir2_bl 33 xfs_dir2_block.o \ 32 xfs_dir2_da 34 xfs_dir2_data.o \ 33 xfs_dir2_le 35 xfs_dir2_leaf.o \ 34 xfs_dir2_no 36 xfs_dir2_node.o \ 35 xfs_dir2_sf 37 xfs_dir2_sf.o \ 36 xfs_dquot_b 38 xfs_dquot_buf.o \ 37 xfs_exchmap << 38 xfs_ialloc. 39 xfs_ialloc.o \ 39 xfs_ialloc_ 40 xfs_ialloc_btree.o \ 40 xfs_iext_tr 41 xfs_iext_tree.o \ 41 xfs_inode_f 42 xfs_inode_fork.o \ 42 xfs_inode_b 43 xfs_inode_buf.o \ 43 xfs_inode_u << 44 xfs_log_rli 44 xfs_log_rlimit.o \ 45 xfs_ag_resv 45 xfs_ag_resv.o \ 46 xfs_parent. << 47 xfs_rmap.o 46 xfs_rmap.o \ 48 xfs_rmap_bt 47 xfs_rmap_btree.o \ 49 xfs_refcoun 48 xfs_refcount.o \ 50 xfs_refcoun 49 xfs_refcount_btree.o \ 51 xfs_sb.o \ 50 xfs_sb.o \ 52 xfs_symlink 51 xfs_symlink_remote.o \ 53 xfs_trans_i 52 xfs_trans_inode.o \ 54 xfs_trans_r 53 xfs_trans_resv.o \ 55 xfs_trans_s << 56 xfs_types.o 54 xfs_types.o \ 57 ) 55 ) 58 # xfs_rtbitmap is shared with libxfs 56 # xfs_rtbitmap is shared with libxfs 59 xfs-$(CONFIG_XFS_RT) += $(addprefix 57 xfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \ 60 xfs_rtbitma 58 xfs_rtbitmap.o \ 61 ) 59 ) 62 60 63 # highlevel code 61 # highlevel code 64 xfs-y += xfs_aops.o 62 xfs-y += xfs_aops.o \ 65 xfs_attr_in 63 xfs_attr_inactive.o \ 66 xfs_attr_li 64 xfs_attr_list.o \ 67 xfs_bmap_ut 65 xfs_bmap_util.o \ 68 xfs_bio_io. 66 xfs_bio_io.o \ 69 xfs_buf.o \ 67 xfs_buf.o \ 70 xfs_dahash_ << 71 xfs_dir2_re 68 xfs_dir2_readdir.o \ 72 xfs_discard 69 xfs_discard.o \ 73 xfs_error.o 70 xfs_error.o \ 74 xfs_exchran << 75 xfs_export. 71 xfs_export.o \ 76 xfs_extent_ 72 xfs_extent_busy.o \ 77 xfs_file.o 73 xfs_file.o \ 78 xfs_filestr 74 xfs_filestream.o \ 79 xfs_fsmap.o 75 xfs_fsmap.o \ 80 xfs_fsops.o 76 xfs_fsops.o \ 81 xfs_globals 77 xfs_globals.o \ 82 xfs_handle. << 83 xfs_health. 78 xfs_health.o \ 84 xfs_icache. 79 xfs_icache.o \ 85 xfs_ioctl.o 80 xfs_ioctl.o \ 86 xfs_iomap.o 81 xfs_iomap.o \ 87 xfs_iops.o 82 xfs_iops.o \ 88 xfs_inode.o 83 xfs_inode.o \ 89 xfs_itable. 84 xfs_itable.o \ 90 xfs_iwalk.o 85 xfs_iwalk.o \ 91 xfs_message 86 xfs_message.o \ 92 xfs_mount.o 87 xfs_mount.o \ 93 xfs_mru_cac 88 xfs_mru_cache.o \ 94 xfs_pwork.o 89 xfs_pwork.o \ 95 xfs_reflink 90 xfs_reflink.o \ 96 xfs_stats.o 91 xfs_stats.o \ 97 xfs_super.o 92 xfs_super.o \ 98 xfs_symlink 93 xfs_symlink.o \ 99 xfs_sysfs.o 94 xfs_sysfs.o \ 100 xfs_trans.o 95 xfs_trans.o \ 101 xfs_xattr.o !! 96 xfs_xattr.o \ >> 97 kmem.o 102 98 103 # low-level transaction/log code 99 # low-level transaction/log code 104 xfs-y += xfs_log.o \ 100 xfs-y += xfs_log.o \ 105 xfs_log_cil 101 xfs_log_cil.o \ 106 xfs_bmap_it 102 xfs_bmap_item.o \ 107 xfs_buf_ite 103 xfs_buf_item.o \ 108 xfs_buf_ite << 109 xfs_dquot_i << 110 xfs_exchmap << 111 xfs_extfree 104 xfs_extfree_item.o \ 112 xfs_attr_it << 113 xfs_icreate 105 xfs_icreate_item.o \ 114 xfs_inode_i 106 xfs_inode_item.o \ 115 xfs_inode_i << 116 xfs_iunlink << 117 xfs_refcoun 107 xfs_refcount_item.o \ 118 xfs_rmap_it 108 xfs_rmap_item.o \ 119 xfs_log_rec 109 xfs_log_recover.o \ 120 xfs_trans_a 110 xfs_trans_ail.o \ 121 xfs_trans_b 111 xfs_trans_buf.o 122 112 123 # optional features 113 # optional features 124 xfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o 114 xfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \ 125 xfs_dquot_i 115 xfs_dquot_item.o \ 126 xfs_trans_d 116 xfs_trans_dquot.o \ 127 xfs_qm_sysc 117 xfs_qm_syscalls.o \ 128 xfs_qm_bhv. 118 xfs_qm_bhv.o \ 129 xfs_qm.o \ 119 xfs_qm.o \ 130 xfs_quotaop 120 xfs_quotaops.o 131 121 132 # xfs_rtbitmap is shared with libxfs 122 # xfs_rtbitmap is shared with libxfs 133 xfs-$(CONFIG_XFS_RT) += xfs_rtalloc 123 xfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o 134 124 135 xfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o 125 xfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o 136 xfs-$(CONFIG_SYSCTL) += xfs_sysctl. 126 xfs-$(CONFIG_SYSCTL) += xfs_sysctl.o 137 xfs-$(CONFIG_COMPAT) += xfs_ioctl32 127 xfs-$(CONFIG_COMPAT) += xfs_ioctl32.o 138 xfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs 128 xfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o 139 129 140 # notify failure << 141 ifeq ($(CONFIG_MEMORY_FAILURE),y) << 142 xfs-$(CONFIG_FS_DAX) += xfs_notify_ << 143 endif << 144 << 145 xfs-$(CONFIG_XFS_DRAIN_INTENTS) += xfs_drain.o << 146 xfs-$(CONFIG_XFS_LIVE_HOOKS) += xfs_hooks.o << 147 xfs-$(CONFIG_XFS_MEMORY_BUFS) += xfs_buf_mem << 148 xfs-$(CONFIG_XFS_BTREE_IN_MEM) += libxfs/xfs_ << 149 << 150 # online scrub/repair 130 # online scrub/repair 151 ifeq ($(CONFIG_XFS_ONLINE_SCRUB),y) 131 ifeq ($(CONFIG_XFS_ONLINE_SCRUB),y) 152 132 153 # Tracepoints like to blow up, so build that b 133 # Tracepoints like to blow up, so build that before everything else 154 134 155 xfs-y += $(addprefix 135 xfs-y += $(addprefix scrub/, \ 156 trace.o \ 136 trace.o \ 157 agb_bitmap. << 158 agheader.o 137 agheader.o \ 159 alloc.o \ 138 alloc.o \ 160 attr.o \ 139 attr.o \ 161 bitmap.o \ << 162 bmap.o \ 140 bmap.o \ 163 btree.o \ 141 btree.o \ 164 common.o \ 142 common.o \ 165 dabtree.o \ 143 dabtree.o \ 166 dir.o \ 144 dir.o \ 167 dirtree.o \ << 168 fscounters. 145 fscounters.o \ 169 health.o \ 146 health.o \ 170 ialloc.o \ 147 ialloc.o \ 171 inode.o \ 148 inode.o \ 172 iscan.o \ << 173 listxattr.o << 174 nlinks.o \ << 175 parent.o \ 149 parent.o \ 176 readdir.o \ << 177 refcount.o 150 refcount.o \ 178 rmap.o \ 151 rmap.o \ 179 scrub.o \ 152 scrub.o \ 180 symlink.o \ 153 symlink.o \ 181 xfarray.o \ << 182 xfblob.o \ << 183 xfile.o \ << 184 ) << 185 << 186 xfs-$(CONFIG_XFS_ONLINE_SCRUB_STATS) += scrub/ << 187 << 188 xfs-$(CONFIG_XFS_RT) += $(addprefix << 189 rtbitmap.o << 190 rtsummary.o << 191 ) 154 ) 192 155 193 xfs-$(CONFIG_XFS_QUOTA) += $(addprefix !! 156 xfs-$(CONFIG_XFS_RT) += scrub/rtbitmap.o 194 dqiterate.o !! 157 xfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o 195 quota.o \ << 196 quotacheck. << 197 ) << 198 158 199 # online repair 159 # online repair 200 ifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) 160 ifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) 201 xfs-y += $(addprefix 161 xfs-y += $(addprefix scrub/, \ 202 agheader_re 162 agheader_repair.o \ 203 alloc_repai !! 163 bitmap.o \ 204 attr_repair << 205 bmap_repair << 206 cow_repair. << 207 dir_repair. << 208 dirtree_rep << 209 findparent. << 210 fscounters_ << 211 ialloc_repa << 212 inode_repai << 213 newbt.o \ << 214 nlinks_repa << 215 orphanage.o << 216 parent_repa << 217 rcbag_btree << 218 rcbag.o \ << 219 reap.o \ << 220 refcount_re << 221 repair.o \ 164 repair.o \ 222 rmap_repair << 223 symlink_rep << 224 tempfile.o << 225 ) << 226 << 227 xfs-$(CONFIG_XFS_RT) += $(addprefix << 228 rtbitmap_re << 229 rtsummary_r << 230 ) << 231 << 232 xfs-$(CONFIG_XFS_QUOTA) += $(addprefix << 233 quota_repai << 234 quotacheck_ << 235 ) 165 ) 236 endif 166 endif 237 endif 167 endif
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.