xref: /linux/fs/xfs/Makefile (revision 6bdcf26ade8825ffcdc692338e715cd7ed0820d8)
158b7983dSAndi Kleen#
258b7983dSAndi Kleen# Copyright (c) 2000-2005 Silicon Graphics, Inc.
358b7983dSAndi Kleen# All Rights Reserved.
458b7983dSAndi Kleen#
558b7983dSAndi Kleen# This program is free software; you can redistribute it and/or
658b7983dSAndi Kleen# modify it under the terms of the GNU General Public License as
758b7983dSAndi Kleen# published by the Free Software Foundation.
858b7983dSAndi Kleen#
958b7983dSAndi Kleen# This program is distributed in the hope that it would be useful,
1058b7983dSAndi Kleen# but WITHOUT ANY WARRANTY; without even the implied warranty of
1158b7983dSAndi Kleen# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1258b7983dSAndi Kleen# GNU General Public License for more details.
1358b7983dSAndi Kleen#
1458b7983dSAndi Kleen# You should have received a copy of the GNU General Public License
1558b7983dSAndi Kleen# along with this program; if not, write the Free Software Foundation,
1658b7983dSAndi Kleen# Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
1758b7983dSAndi Kleen#
1858b7983dSAndi Kleen
19b6bede3bSChristoph Hellwigccflags-y += -I$(src)			# needed for trace events
2069116a13SDave Chinnerccflags-y += -I$(src)/libxfs
21b6bede3bSChristoph Hellwig
220ccd234cSmatt mooneyccflags-$(CONFIG_XFS_DEBUG) += -g
2358b7983dSAndi Kleen
2458b7983dSAndi Kleenobj-$(CONFIG_XFS_FS)		+= xfs.o
25269cdfafSLachlan McIlroy
26c59d87c4SChristoph Hellwig# this one should be compiled first, as the tracing macros can easily blow up
27c59d87c4SChristoph Hellwigxfs-y				+= xfs_trace.o
280b1b213fSChristoph Hellwig
2969116a13SDave Chinner# build the libxfs code first
3069116a13SDave Chinnerxfs-y				+= $(addprefix libxfs/, \
3130f712c9SDave Chinner				   xfs_alloc.o \
3230f712c9SDave Chinner				   xfs_alloc_btree.o \
3330f712c9SDave Chinner				   xfs_attr.o \
3430f712c9SDave Chinner				   xfs_attr_leaf.o \
3530f712c9SDave Chinner				   xfs_attr_remote.o \
361cfc4a9cSDave Chinner				   xfs_bit.o \
3730f712c9SDave Chinner				   xfs_bmap.o \
3830f712c9SDave Chinner				   xfs_bmap_btree.o \
3930f712c9SDave Chinner				   xfs_btree.o \
4030f712c9SDave Chinner				   xfs_da_btree.o \
4130f712c9SDave Chinner				   xfs_da_format.o \
424e0cc29bSDarrick J. Wong				   xfs_defer.o \
4330f712c9SDave Chinner				   xfs_dir2.o \
4430f712c9SDave Chinner				   xfs_dir2_block.o \
4530f712c9SDave Chinner				   xfs_dir2_data.o \
4630f712c9SDave Chinner				   xfs_dir2_leaf.o \
4730f712c9SDave Chinner				   xfs_dir2_node.o \
4830f712c9SDave Chinner				   xfs_dir2_sf.o \
4930f712c9SDave Chinner				   xfs_dquot_buf.o \
5030f712c9SDave Chinner				   xfs_ialloc.o \
5130f712c9SDave Chinner				   xfs_ialloc_btree.o \
52*6bdcf26aSChristoph Hellwig				   xfs_iext_tree.o \
5330f712c9SDave Chinner				   xfs_inode_fork.o \
5430f712c9SDave Chinner				   xfs_inode_buf.o \
5530f712c9SDave Chinner				   xfs_log_rlimit.o \
563fd129b6SDarrick J. Wong				   xfs_ag_resv.o \
57673930c3SDarrick J. Wong				   xfs_rmap.o \
58035e00acSDarrick J. Wong				   xfs_rmap_btree.o \
59bdf28630SDarrick J. Wong				   xfs_refcount.o \
601946b91cSDarrick J. Wong				   xfs_refcount_btree.o \
6169116a13SDave Chinner				   xfs_sb.o \
6230f712c9SDave Chinner				   xfs_symlink_remote.o \
6330f712c9SDave Chinner				   xfs_trans_resv.o \
6430f712c9SDave Chinner				   )
6530f712c9SDave Chinner# xfs_rtbitmap is shared with libxfs
6630f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT)		+= $(addprefix libxfs/, \
6730f712c9SDave Chinner				   xfs_rtbitmap.o \
6869116a13SDave Chinner				   )
6969116a13SDave Chinner
70c59d87c4SChristoph Hellwig# highlevel code
71c59d87c4SChristoph Hellwigxfs-y				+= xfs_aops.o \
72fde2227cSDave Chinner				   xfs_attr_inactive.o \
73abec5f2bSDave Chinner				   xfs_attr_list.o \
7468988114SDave Chinner				   xfs_bmap_util.o \
75c59d87c4SChristoph Hellwig				   xfs_buf.o \
764a8af273SDave Chinner				   xfs_dir2_readdir.o \
77c59d87c4SChristoph Hellwig				   xfs_discard.o \
78c59d87c4SChristoph Hellwig				   xfs_error.o \
79c59d87c4SChristoph Hellwig				   xfs_export.o \
80efc27b52SDave Chinner				   xfs_extent_busy.o \
81c59d87c4SChristoph Hellwig				   xfs_file.o \
82c59d87c4SChristoph Hellwig				   xfs_filestream.o \
83e89c0413SDarrick J. Wong				   xfs_fsmap.o \
84c59d87c4SChristoph Hellwig				   xfs_fsops.o \
85c59d87c4SChristoph Hellwig				   xfs_globals.o \
866d8b79cfSDave Chinner				   xfs_icache.o \
87c59d87c4SChristoph Hellwig				   xfs_ioctl.o \
88c59d87c4SChristoph Hellwig				   xfs_iomap.o \
89c59d87c4SChristoph Hellwig				   xfs_iops.o \
9030f712c9SDave Chinner				   xfs_inode.o \
91c59d87c4SChristoph Hellwig				   xfs_itable.o \
92c59d87c4SChristoph Hellwig				   xfs_message.o \
93ff55068cSDave Chinner				   xfs_mount.o \
94c59d87c4SChristoph Hellwig				   xfs_mru_cache.o \
953993baebSDarrick J. Wong				   xfs_reflink.o \
96985ef4dcSDave Chinner				   xfs_stats.o \
9719de7351SDave Chinner				   xfs_super.o \
981fb7e48dSDave Chinner				   xfs_symlink.o \
99a31b1d3dSBrian Foster				   xfs_sysfs.o \
1007fd36c44SDave Chinner				   xfs_trans.o \
10119de7351SDave Chinner				   xfs_xattr.o \
102d905fdaaSAmir Goldstein				   kmem.o
103269cdfafSLachlan McIlroy
104c59d87c4SChristoph Hellwig# low-level transaction/log code
105c59d87c4SChristoph Hellwigxfs-y				+= xfs_log.o \
106c59d87c4SChristoph Hellwig				   xfs_log_cil.o \
1076413a014SDarrick J. Wong				   xfs_bmap_item.o \
108c59d87c4SChristoph Hellwig				   xfs_buf_item.o \
109c59d87c4SChristoph Hellwig				   xfs_extfree_item.o \
11030f712c9SDave Chinner				   xfs_icreate_item.o \
111c59d87c4SChristoph Hellwig				   xfs_inode_item.o \
112baf4bcacSDarrick J. Wong				   xfs_refcount_item.o \
1135880f2d7SDarrick J. Wong				   xfs_rmap_item.o \
11430f712c9SDave Chinner				   xfs_log_recover.o \
11558b7983dSAndi Kleen				   xfs_trans_ail.o \
11677d61fe4SDarrick J. Wong				   xfs_trans_bmap.o \
11758b7983dSAndi Kleen				   xfs_trans_buf.o \
11858b7983dSAndi Kleen				   xfs_trans_extfree.o \
11958b7983dSAndi Kleen				   xfs_trans_inode.o \
120f997ee21SDarrick J. Wong				   xfs_trans_refcount.o \
1219e88b5d8SDarrick J. Wong				   xfs_trans_rmap.o \
12258b7983dSAndi Kleen
123c59d87c4SChristoph Hellwig# optional features
124c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_QUOTA)		+= xfs_dquot.o \
125c59d87c4SChristoph Hellwig				   xfs_dquot_item.o \
126c59d87c4SChristoph Hellwig				   xfs_trans_dquot.o \
127c59d87c4SChristoph Hellwig				   xfs_qm_syscalls.o \
128c59d87c4SChristoph Hellwig				   xfs_qm_bhv.o \
129c59d87c4SChristoph Hellwig				   xfs_qm.o \
130c59d87c4SChristoph Hellwig				   xfs_quotaops.o
131c963c619SDave Chinner
132c963c619SDave Chinner# xfs_rtbitmap is shared with libxfs
13330f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT)		+= xfs_rtalloc.o
134c963c619SDave Chinner
135c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_POSIX_ACL)	+= xfs_acl.o
136c59d87c4SChristoph Hellwigxfs-$(CONFIG_SYSCTL)		+= xfs_sysctl.o
137c59d87c4SChristoph Hellwigxfs-$(CONFIG_COMPAT)		+= xfs_ioctl32.o
13815d66ac2SBenjamin Coddingtonxfs-$(CONFIG_EXPORTFS_BLOCK_OPS)	+= xfs_pnfs.o
13936fd6e86SDarrick J. Wong
14036fd6e86SDarrick J. Wong# online scrub/repair
14136fd6e86SDarrick J. Wongifeq ($(CONFIG_XFS_ONLINE_SCRUB),y)
14236fd6e86SDarrick J. Wong
14336fd6e86SDarrick J. Wong# Tracepoints like to blow up, so build that before everything else
14436fd6e86SDarrick J. Wong
14536fd6e86SDarrick J. Wongxfs-y				+= $(addprefix scrub/, \
14636fd6e86SDarrick J. Wong				   trace.o \
14721fb4cb1SDarrick J. Wong				   agheader.o \
148efa7a99cSDarrick J. Wong				   alloc.o \
149eec0482eSDarrick J. Wong				   attr.o \
15099d9d8d0SDarrick J. Wong				   bmap.o \
151537964bcSDarrick J. Wong				   btree.o \
152dcb660f9SDarrick J. Wong				   common.o \
1537c4a07a4SDarrick J. Wong				   dabtree.o \
154a5c46e5eSDarrick J. Wong				   dir.o \
1553daa6641SDarrick J. Wong				   ialloc.o \
15680e4e126SDarrick J. Wong				   inode.o \
1570f28b257SDarrick J. Wong				   parent.o \
158edc09b52SDarrick J. Wong				   refcount.o \
159c7e693d9SDarrick J. Wong				   rmap.o \
16036fd6e86SDarrick J. Wong				   scrub.o \
1612a721dbbSDarrick J. Wong				   symlink.o \
16236fd6e86SDarrick J. Wong				   )
16329b0767bSDarrick J. Wong
16429b0767bSDarrick J. Wongxfs-$(CONFIG_XFS_RT)		+= scrub/rtbitmap.o
165c2fc338cSDarrick J. Wongxfs-$(CONFIG_XFS_QUOTA)		+= scrub/quota.o
16636fd6e86SDarrick J. Wongendif
167