Loading...
1#
2# Copyright (c) 2000-2005 Silicon Graphics, Inc.
3# All Rights Reserved.
4#
5# This program is free software; you can redistribute it and/or
6# modify it under the terms of the GNU General Public License as
7# published by the Free Software Foundation.
8#
9# This program is distributed in the hope that it would be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write the Free Software Foundation,
16# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17#
18
19ccflags-y += -I$(src) # needed for trace events
20
21ccflags-$(CONFIG_XFS_DEBUG) += -g
22
23obj-$(CONFIG_XFS_FS) += xfs.o
24
25# this one should be compiled first, as the tracing macros can easily blow up
26xfs-y += xfs_trace.o
27
28# highlevel code
29xfs-y += xfs_aops.o \
30 xfs_bit.o \
31 xfs_buf.o \
32 xfs_dfrag.o \
33 xfs_discard.o \
34 xfs_error.o \
35 xfs_export.o \
36 xfs_extent_busy.o \
37 xfs_file.o \
38 xfs_filestream.o \
39 xfs_fsops.o \
40 xfs_fs_subr.o \
41 xfs_globals.o \
42 xfs_iget.o \
43 xfs_ioctl.o \
44 xfs_iomap.o \
45 xfs_iops.o \
46 xfs_itable.o \
47 xfs_message.o \
48 xfs_mru_cache.o \
49 xfs_super.o \
50 xfs_sync.o \
51 xfs_xattr.o \
52 xfs_rename.o \
53 xfs_utils.o \
54 xfs_vnodeops.o \
55 kmem.o \
56 uuid.o
57
58# code shared with libxfs
59xfs-y += xfs_alloc.o \
60 xfs_alloc_btree.o \
61 xfs_attr.o \
62 xfs_attr_leaf.o \
63 xfs_bmap.o \
64 xfs_bmap_btree.o \
65 xfs_btree.o \
66 xfs_da_btree.o \
67 xfs_dir2.o \
68 xfs_dir2_block.o \
69 xfs_dir2_data.o \
70 xfs_dir2_leaf.o \
71 xfs_dir2_node.o \
72 xfs_dir2_sf.o \
73 xfs_ialloc.o \
74 xfs_ialloc_btree.o \
75 xfs_inode.o \
76 xfs_log_recover.o \
77 xfs_mount.o \
78 xfs_trans.o
79
80# low-level transaction/log code
81xfs-y += xfs_log.o \
82 xfs_log_cil.o \
83 xfs_buf_item.o \
84 xfs_extfree_item.o \
85 xfs_inode_item.o \
86 xfs_trans_ail.o \
87 xfs_trans_buf.o \
88 xfs_trans_extfree.o \
89 xfs_trans_inode.o \
90
91# optional features
92xfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \
93 xfs_dquot_item.o \
94 xfs_trans_dquot.o \
95 xfs_qm_syscalls.o \
96 xfs_qm_bhv.o \
97 xfs_qm.o \
98 xfs_quotaops.o
99xfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o
100xfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o
101xfs-$(CONFIG_PROC_FS) += xfs_stats.o
102xfs-$(CONFIG_SYSCTL) += xfs_sysctl.o
103xfs-$(CONFIG_COMPAT) += xfs_ioctl32.o
1# SPDX-License-Identifier: GPL-2.0
2#
3# Copyright (c) 2000-2005 Silicon Graphics, Inc.
4# All Rights Reserved.
5#
6
7ccflags-y += -I $(src) # needed for trace events
8ccflags-y += -I $(src)/libxfs
9
10obj-$(CONFIG_XFS_FS) += xfs.o
11
12# this one should be compiled first, as the tracing macros can easily blow up
13xfs-y += xfs_trace.o
14
15# build the libxfs code first
16xfs-y += $(addprefix libxfs/, \
17 xfs_group.o \
18 xfs_ag.o \
19 xfs_ag_resv.o \
20 xfs_alloc.o \
21 xfs_alloc_btree.o \
22 xfs_attr.o \
23 xfs_attr_leaf.o \
24 xfs_attr_remote.o \
25 xfs_bit.o \
26 xfs_bmap.o \
27 xfs_bmap_btree.o \
28 xfs_btree.o \
29 xfs_btree_staging.o \
30 xfs_da_btree.o \
31 xfs_defer.o \
32 xfs_dir2.o \
33 xfs_dir2_block.o \
34 xfs_dir2_data.o \
35 xfs_dir2_leaf.o \
36 xfs_dir2_node.o \
37 xfs_dir2_sf.o \
38 xfs_dquot_buf.o \
39 xfs_exchmaps.o \
40 xfs_ialloc.o \
41 xfs_ialloc_btree.o \
42 xfs_iext_tree.o \
43 xfs_inode_fork.o \
44 xfs_inode_buf.o \
45 xfs_inode_util.o \
46 xfs_log_rlimit.o \
47 xfs_metadir.o \
48 xfs_metafile.o \
49 xfs_parent.o \
50 xfs_rmap.o \
51 xfs_rmap_btree.o \
52 xfs_refcount.o \
53 xfs_refcount_btree.o \
54 xfs_sb.o \
55 xfs_symlink_remote.o \
56 xfs_trans_inode.o \
57 xfs_trans_resv.o \
58 xfs_trans_space.o \
59 xfs_types.o \
60 )
61# xfs_rtbitmap is shared with libxfs
62xfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \
63 xfs_rtbitmap.o \
64 xfs_rtgroup.o \
65 )
66
67# highlevel code
68xfs-y += xfs_aops.o \
69 xfs_attr_inactive.o \
70 xfs_attr_list.o \
71 xfs_bmap_util.o \
72 xfs_bio_io.o \
73 xfs_buf.o \
74 xfs_dahash_test.o \
75 xfs_dir2_readdir.o \
76 xfs_discard.o \
77 xfs_error.o \
78 xfs_exchrange.o \
79 xfs_export.o \
80 xfs_extent_busy.o \
81 xfs_file.o \
82 xfs_filestream.o \
83 xfs_fsmap.o \
84 xfs_fsops.o \
85 xfs_globals.o \
86 xfs_handle.o \
87 xfs_health.o \
88 xfs_icache.o \
89 xfs_ioctl.o \
90 xfs_iomap.o \
91 xfs_iops.o \
92 xfs_inode.o \
93 xfs_itable.o \
94 xfs_iwalk.o \
95 xfs_message.o \
96 xfs_mount.o \
97 xfs_mru_cache.o \
98 xfs_pwork.o \
99 xfs_reflink.o \
100 xfs_stats.o \
101 xfs_super.o \
102 xfs_symlink.o \
103 xfs_sysfs.o \
104 xfs_trans.o \
105 xfs_xattr.o
106
107# low-level transaction/log code
108xfs-y += xfs_log.o \
109 xfs_log_cil.o \
110 xfs_bmap_item.o \
111 xfs_buf_item.o \
112 xfs_buf_item_recover.o \
113 xfs_dquot_item_recover.o \
114 xfs_exchmaps_item.o \
115 xfs_extfree_item.o \
116 xfs_attr_item.o \
117 xfs_icreate_item.o \
118 xfs_inode_item.o \
119 xfs_inode_item_recover.o \
120 xfs_iunlink_item.o \
121 xfs_refcount_item.o \
122 xfs_rmap_item.o \
123 xfs_log_recover.o \
124 xfs_trans_ail.o \
125 xfs_trans_buf.o
126
127# optional features
128xfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \
129 xfs_dquot_item.o \
130 xfs_trans_dquot.o \
131 xfs_qm_syscalls.o \
132 xfs_qm_bhv.o \
133 xfs_qm.o \
134 xfs_quotaops.o
135
136# xfs_rtbitmap is shared with libxfs
137xfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o
138
139xfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o
140xfs-$(CONFIG_SYSCTL) += xfs_sysctl.o
141xfs-$(CONFIG_COMPAT) += xfs_ioctl32.o
142xfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o
143
144# notify failure
145ifeq ($(CONFIG_MEMORY_FAILURE),y)
146xfs-$(CONFIG_FS_DAX) += xfs_notify_failure.o
147endif
148
149xfs-$(CONFIG_XFS_DRAIN_INTENTS) += xfs_drain.o
150xfs-$(CONFIG_XFS_LIVE_HOOKS) += xfs_hooks.o
151xfs-$(CONFIG_XFS_MEMORY_BUFS) += xfs_buf_mem.o
152xfs-$(CONFIG_XFS_BTREE_IN_MEM) += libxfs/xfs_btree_mem.o
153
154# online scrub/repair
155ifeq ($(CONFIG_XFS_ONLINE_SCRUB),y)
156
157# Tracepoints like to blow up, so build that before everything else
158
159xfs-y += $(addprefix scrub/, \
160 trace.o \
161 agb_bitmap.o \
162 agheader.o \
163 alloc.o \
164 attr.o \
165 bitmap.o \
166 bmap.o \
167 btree.o \
168 common.o \
169 dabtree.o \
170 dir.o \
171 dirtree.o \
172 fscounters.o \
173 health.o \
174 ialloc.o \
175 inode.o \
176 iscan.o \
177 listxattr.o \
178 metapath.o \
179 nlinks.o \
180 parent.o \
181 readdir.o \
182 refcount.o \
183 rmap.o \
184 scrub.o \
185 symlink.o \
186 xfarray.o \
187 xfblob.o \
188 xfile.o \
189 )
190
191xfs-$(CONFIG_XFS_ONLINE_SCRUB_STATS) += scrub/stats.o
192
193xfs-$(CONFIG_XFS_RT) += $(addprefix scrub/, \
194 rgsuper.o \
195 rtbitmap.o \
196 rtsummary.o \
197 )
198
199xfs-$(CONFIG_XFS_QUOTA) += $(addprefix scrub/, \
200 dqiterate.o \
201 quota.o \
202 quotacheck.o \
203 )
204
205# online repair
206ifeq ($(CONFIG_XFS_ONLINE_REPAIR),y)
207xfs-y += $(addprefix scrub/, \
208 agheader_repair.o \
209 alloc_repair.o \
210 attr_repair.o \
211 bmap_repair.o \
212 cow_repair.o \
213 dir_repair.o \
214 dirtree_repair.o \
215 findparent.o \
216 fscounters_repair.o \
217 ialloc_repair.o \
218 inode_repair.o \
219 newbt.o \
220 nlinks_repair.o \
221 orphanage.o \
222 parent_repair.o \
223 rcbag_btree.o \
224 rcbag.o \
225 reap.o \
226 refcount_repair.o \
227 repair.o \
228 rmap_repair.o \
229 symlink_repair.o \
230 tempfile.o \
231 )
232
233xfs-$(CONFIG_XFS_RT) += $(addprefix scrub/, \
234 rtbitmap_repair.o \
235 rtsummary_repair.o \
236 )
237
238xfs-$(CONFIG_XFS_QUOTA) += $(addprefix scrub/, \
239 quota_repair.o \
240 quotacheck_repair.o \
241 )
242endif
243endif