blob: 04611a1068b4934b733e0e3d87800b0c9a0b29ab [file] [log] [blame]
Dave Chinner0b61f8a2018-06-05 19:42:14 -07001# SPDX-License-Identifier: GPL-2.0
Andi Kleen58b79832007-11-27 16:53:47 +11002#
3# Copyright (c) 2000-2005 Silicon Graphics, Inc.
4# All Rights Reserved.
5#
Andi Kleen58b79832007-11-27 16:53:47 +11006
Masahiro Yamada9cc342f2019-05-13 15:22:16 +09007ccflags-y += -I $(srctree)/$(src) # needed for trace events
8ccflags-y += -I $(srctree)/$(src)/libxfs
Christoph Hellwigb6bede32011-08-14 17:13:00 +00009
Andi Kleen58b79832007-11-27 16:53:47 +110010obj-$(CONFIG_XFS_FS) += xfs.o
Lachlan McIlroy269cdfa2007-11-28 18:28:09 +110011
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050012# this one should be compiled first, as the tracing macros can easily blow up
13xfs-y += xfs_trace.o
Christoph Hellwig0b1b2132009-12-14 23:14:59 +000014
Dave Chinner69116a12014-06-25 14:57:22 +100015# build the libxfs code first
16xfs-y += $(addprefix libxfs/, \
Dave Chinnerb16817b2018-05-13 23:10:08 -070017 xfs_ag.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100018 xfs_alloc.o \
19 xfs_alloc_btree.o \
20 xfs_attr.o \
21 xfs_attr_leaf.o \
22 xfs_attr_remote.o \
Dave Chinner1cfc4a92015-07-29 11:52:08 +100023 xfs_bit.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100024 xfs_bmap.o \
25 xfs_bmap_btree.o \
26 xfs_btree.o \
Darrick J. Wonge06536a2020-03-11 10:40:26 -070027 xfs_btree_staging.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100028 xfs_da_btree.o \
Darrick J. Wong4e0cc292016-08-03 11:12:25 +100029 xfs_defer.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100030 xfs_dir2.o \
31 xfs_dir2_block.o \
32 xfs_dir2_data.o \
33 xfs_dir2_leaf.o \
34 xfs_dir2_node.o \
35 xfs_dir2_sf.o \
36 xfs_dquot_buf.o \
37 xfs_ialloc.o \
38 xfs_ialloc_btree.o \
Christoph Hellwig6bdcf262017-11-03 10:34:46 -070039 xfs_iext_tree.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100040 xfs_inode_fork.o \
41 xfs_inode_buf.o \
42 xfs_log_rlimit.o \
Darrick J. Wong3fd129b2016-09-19 10:30:52 +100043 xfs_ag_resv.o \
Darrick J. Wong673930c2016-08-03 11:33:43 +100044 xfs_rmap.o \
Darrick J. Wong035e00a2016-08-03 11:36:07 +100045 xfs_rmap_btree.o \
Darrick J. Wongbdf28632016-10-03 09:11:19 -070046 xfs_refcount.o \
Darrick J. Wong1946b912016-10-03 09:11:18 -070047 xfs_refcount_btree.o \
Dave Chinner69116a12014-06-25 14:57:22 +100048 xfs_sb.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100049 xfs_symlink_remote.o \
Eric Sandeen3f6d70e2019-07-12 15:07:05 -070050 xfs_trans_inode.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100051 xfs_trans_resv.o \
Dave Chinner86210fb2018-06-07 07:53:33 -070052 xfs_types.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100053 )
54# xfs_rtbitmap is shared with libxfs
55xfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \
56 xfs_rtbitmap.o \
Dave Chinner69116a12014-06-25 14:57:22 +100057 )
58
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050059# highlevel code
60xfs-y += xfs_aops.o \
Dave Chinnerfde22272013-08-12 20:49:39 +100061 xfs_attr_inactive.o \
Dave Chinnerabec5f22013-08-12 20:49:38 +100062 xfs_attr_list.o \
Dave Chinner68988112013-08-12 20:49:42 +100063 xfs_bmap_util.o \
Christoph Hellwig6ad5b322019-06-28 19:27:26 -070064 xfs_bio_io.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050065 xfs_buf.o \
Dave Chinner4a8af272013-08-12 20:49:36 +100066 xfs_dir2_readdir.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050067 xfs_discard.o \
68 xfs_error.o \
69 xfs_export.o \
Dave Chinnerefc27b52012-04-29 10:39:43 +000070 xfs_extent_busy.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050071 xfs_file.o \
72 xfs_filestream.o \
Darrick J. Wonge89c0412017-03-28 14:56:37 -070073 xfs_fsmap.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050074 xfs_fsops.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050075 xfs_globals.o \
Darrick J. Wong6772c1f2019-04-12 07:40:25 -070076 xfs_health.o \
Dave Chinner6d8b79c2012-10-08 21:56:09 +110077 xfs_icache.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050078 xfs_ioctl.o \
79 xfs_iomap.o \
80 xfs_iops.o \
Dave Chinner30f712c2014-06-25 14:57:53 +100081 xfs_inode.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050082 xfs_itable.o \
Darrick J. Wonga2114322019-07-02 09:39:38 -070083 xfs_iwalk.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050084 xfs_message.o \
Dave Chinnerff550682013-08-12 20:49:41 +100085 xfs_mount.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050086 xfs_mru_cache.o \
Darrick J. Wong40786712019-07-03 07:33:26 -070087 xfs_pwork.o \
Darrick J. Wong3993bae2016-10-03 09:11:32 -070088 xfs_reflink.o \
Dave Chinner985ef4d2015-10-19 08:42:46 +110089 xfs_stats.o \
Dave Chinner19de7352013-04-03 16:11:18 +110090 xfs_super.o \
Dave Chinner1fb7e48d2013-08-12 20:49:40 +100091 xfs_symlink.o \
Brian Fostera31b1d32014-07-15 08:07:01 +100092 xfs_sysfs.o \
Dave Chinner7fd36c42013-08-12 20:49:32 +100093 xfs_trans.o \
Dave Chinner19de7352013-04-03 16:11:18 +110094 xfs_xattr.o \
Amir Goldsteind905fda2017-05-04 16:26:23 +030095 kmem.o
Lachlan McIlroy269cdfa2007-11-28 18:28:09 +110096
Christoph Hellwigc59d87c2011-08-12 16:21:35 -050097# low-level transaction/log code
98xfs-y += xfs_log.o \
99 xfs_log_cil.o \
Darrick J. Wong6413a012016-10-03 09:11:25 -0700100 xfs_bmap_item.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500101 xfs_buf_item.o \
Darrick J. Wong86ffa472020-05-01 16:00:45 -0700102 xfs_buf_item_recover.o \
103 xfs_dquot_item_recover.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500104 xfs_extfree_item.o \
Dave Chinner30f712c2014-06-25 14:57:53 +1000105 xfs_icreate_item.o \
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500106 xfs_inode_item.o \
Darrick J. Wong86ffa472020-05-01 16:00:45 -0700107 xfs_inode_item_recover.o \
Darrick J. Wongbaf4bcac2016-10-03 09:11:20 -0700108 xfs_refcount_item.o \
Darrick J. Wong5880f2d72016-08-03 12:04:45 +1000109 xfs_rmap_item.o \
Dave Chinner30f712c2014-06-25 14:57:53 +1000110 xfs_log_recover.o \
Andi Kleen58b79832007-11-27 16:53:47 +1100111 xfs_trans_ail.o \
Eric Sandeen3f6d70e2019-07-12 15:07:05 -0700112 xfs_trans_buf.o
Andi Kleen58b79832007-11-27 16:53:47 +1100113
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500114# optional features
115xfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \
116 xfs_dquot_item.o \
117 xfs_trans_dquot.o \
118 xfs_qm_syscalls.o \
119 xfs_qm_bhv.o \
120 xfs_qm.o \
121 xfs_quotaops.o
Dave Chinnerc963c612013-10-15 09:17:56 +1100122
123# xfs_rtbitmap is shared with libxfs
Dave Chinner30f712c2014-06-25 14:57:53 +1000124xfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o
Dave Chinnerc963c612013-10-15 09:17:56 +1100125
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500126xfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o
Christoph Hellwigc59d87c2011-08-12 16:21:35 -0500127xfs-$(CONFIG_SYSCTL) += xfs_sysctl.o
128xfs-$(CONFIG_COMPAT) += xfs_ioctl32.o
Benjamin Coddington15d66ac2016-07-08 09:53:20 -0400129xfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o
Darrick J. Wong36fd6e82017-10-17 21:37:34 -0700130
131# online scrub/repair
132ifeq ($(CONFIG_XFS_ONLINE_SCRUB),y)
133
134# Tracepoints like to blow up, so build that before everything else
135
136xfs-y += $(addprefix scrub/, \
137 trace.o \
Darrick J. Wong21fb4cb2017-10-17 21:37:38 -0700138 agheader.o \
Darrick J. Wongefa7a992017-10-17 21:37:40 -0700139 alloc.o \
Darrick J. Wongeec04822017-10-17 21:37:45 -0700140 attr.o \
Darrick J. Wong99d9d8d2017-10-17 21:37:43 -0700141 bmap.o \
Darrick J. Wong537964bc2017-10-17 21:37:37 -0700142 btree.o \
Darrick J. Wongdcb660f2017-10-17 21:37:36 -0700143 common.o \
Darrick J. Wong7c4a07a2017-10-17 21:37:43 -0700144 dabtree.o \
Darrick J. Wonga5c46e52017-10-17 21:37:44 -0700145 dir.o \
Darrick J. Wong75efa572019-04-25 18:26:24 -0700146 fscounters.o \
Darrick J. Wong4860a052019-04-16 08:22:00 -0700147 health.o \
Darrick J. Wong3daa6642017-10-17 21:37:40 -0700148 ialloc.o \
Darrick J. Wong80e4e122017-10-17 21:37:42 -0700149 inode.o \
Darrick J. Wong0f28b252017-10-17 21:37:46 -0700150 parent.o \
Darrick J. Wongedc09b52017-10-17 21:37:41 -0700151 refcount.o \
Darrick J. Wongc7e693d2017-10-17 21:37:41 -0700152 rmap.o \
Darrick J. Wong36fd6e82017-10-17 21:37:34 -0700153 scrub.o \
Darrick J. Wong2a721db2017-10-17 21:37:45 -0700154 symlink.o \
Darrick J. Wong36fd6e82017-10-17 21:37:34 -0700155 )
Darrick J. Wong29b07672017-10-17 21:37:46 -0700156
157xfs-$(CONFIG_XFS_RT) += scrub/rtbitmap.o
Darrick J. Wongc2fc3382017-10-17 21:37:47 -0700158xfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o
Darrick J. Wong84d42ea2018-05-14 06:34:36 -0700159
160# online repair
161ifeq ($(CONFIG_XFS_ONLINE_REPAIR),y)
162xfs-y += $(addprefix scrub/, \
Darrick J. Wongd25522f2018-05-29 22:18:12 -0700163 agheader_repair.o \
Darrick J. Wongbc270b52018-07-29 22:37:09 -0700164 bitmap.o \
Darrick J. Wong84d42ea2018-05-14 06:34:36 -0700165 repair.o \
166 )
167endif
Darrick J. Wong36fd6e82017-10-17 21:37:34 -0700168endif