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/, \ 31b16817b6SDave Chinner xfs_ag.o \ 3230f712c9SDave Chinner xfs_alloc.o \ 3330f712c9SDave Chinner xfs_alloc_btree.o \ 3430f712c9SDave Chinner xfs_attr.o \ 3530f712c9SDave Chinner xfs_attr_leaf.o \ 3630f712c9SDave Chinner xfs_attr_remote.o \ 371cfc4a9cSDave Chinner xfs_bit.o \ 3830f712c9SDave Chinner xfs_bmap.o \ 3930f712c9SDave Chinner xfs_bmap_btree.o \ 4030f712c9SDave Chinner xfs_btree.o \ 4130f712c9SDave Chinner xfs_da_btree.o \ 4230f712c9SDave Chinner xfs_da_format.o \ 434e0cc29bSDarrick J. Wong xfs_defer.o \ 4430f712c9SDave Chinner xfs_dir2.o \ 4530f712c9SDave Chinner xfs_dir2_block.o \ 4630f712c9SDave Chinner xfs_dir2_data.o \ 4730f712c9SDave Chinner xfs_dir2_leaf.o \ 4830f712c9SDave Chinner xfs_dir2_node.o \ 4930f712c9SDave Chinner xfs_dir2_sf.o \ 5030f712c9SDave Chinner xfs_dquot_buf.o \ 5130f712c9SDave Chinner xfs_ialloc.o \ 5230f712c9SDave Chinner xfs_ialloc_btree.o \ 536bdcf26aSChristoph Hellwig xfs_iext_tree.o \ 5430f712c9SDave Chinner xfs_inode_fork.o \ 5530f712c9SDave Chinner xfs_inode_buf.o \ 5630f712c9SDave Chinner xfs_log_rlimit.o \ 573fd129b6SDarrick J. Wong xfs_ag_resv.o \ 58673930c3SDarrick J. Wong xfs_rmap.o \ 59035e00acSDarrick J. Wong xfs_rmap_btree.o \ 60bdf28630SDarrick J. Wong xfs_refcount.o \ 611946b91cSDarrick J. Wong xfs_refcount_btree.o \ 6269116a13SDave Chinner xfs_sb.o \ 6330f712c9SDave Chinner xfs_symlink_remote.o \ 6430f712c9SDave Chinner xfs_trans_resv.o \ 6530f712c9SDave Chinner ) 6630f712c9SDave Chinner# xfs_rtbitmap is shared with libxfs 6730f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \ 6830f712c9SDave Chinner xfs_rtbitmap.o \ 6969116a13SDave Chinner ) 7069116a13SDave Chinner 71c59d87c4SChristoph Hellwig# highlevel code 72c59d87c4SChristoph Hellwigxfs-y += xfs_aops.o \ 73fde2227cSDave Chinner xfs_attr_inactive.o \ 74abec5f2bSDave Chinner xfs_attr_list.o \ 7568988114SDave Chinner xfs_bmap_util.o \ 76c59d87c4SChristoph Hellwig xfs_buf.o \ 774a8af273SDave Chinner xfs_dir2_readdir.o \ 78c59d87c4SChristoph Hellwig xfs_discard.o \ 79c59d87c4SChristoph Hellwig xfs_error.o \ 80c59d87c4SChristoph Hellwig xfs_export.o \ 81efc27b52SDave Chinner xfs_extent_busy.o \ 82c59d87c4SChristoph Hellwig xfs_file.o \ 83c59d87c4SChristoph Hellwig xfs_filestream.o \ 84e89c0413SDarrick J. Wong xfs_fsmap.o \ 85c59d87c4SChristoph Hellwig xfs_fsops.o \ 86c59d87c4SChristoph Hellwig xfs_globals.o \ 876d8b79cfSDave Chinner xfs_icache.o \ 88c59d87c4SChristoph Hellwig xfs_ioctl.o \ 89c59d87c4SChristoph Hellwig xfs_iomap.o \ 90c59d87c4SChristoph Hellwig xfs_iops.o \ 9130f712c9SDave Chinner xfs_inode.o \ 92c59d87c4SChristoph Hellwig xfs_itable.o \ 93c59d87c4SChristoph Hellwig xfs_message.o \ 94ff55068cSDave Chinner xfs_mount.o \ 95c59d87c4SChristoph Hellwig xfs_mru_cache.o \ 963993baebSDarrick J. Wong xfs_reflink.o \ 97985ef4dcSDave Chinner xfs_stats.o \ 9819de7351SDave Chinner xfs_super.o \ 991fb7e48dSDave Chinner xfs_symlink.o \ 100a31b1d3dSBrian Foster xfs_sysfs.o \ 1017fd36c44SDave Chinner xfs_trans.o \ 10219de7351SDave Chinner xfs_xattr.o \ 103d905fdaaSAmir Goldstein kmem.o 104269cdfafSLachlan McIlroy 105c59d87c4SChristoph Hellwig# low-level transaction/log code 106c59d87c4SChristoph Hellwigxfs-y += xfs_log.o \ 107c59d87c4SChristoph Hellwig xfs_log_cil.o \ 1086413a014SDarrick J. Wong xfs_bmap_item.o \ 109c59d87c4SChristoph Hellwig xfs_buf_item.o \ 110c59d87c4SChristoph Hellwig xfs_extfree_item.o \ 11130f712c9SDave Chinner xfs_icreate_item.o \ 112c59d87c4SChristoph Hellwig xfs_inode_item.o \ 113baf4bcacSDarrick J. Wong xfs_refcount_item.o \ 1145880f2d7SDarrick J. Wong xfs_rmap_item.o \ 11530f712c9SDave Chinner xfs_log_recover.o \ 11658b7983dSAndi Kleen xfs_trans_ail.o \ 11777d61fe4SDarrick J. Wong xfs_trans_bmap.o \ 11858b7983dSAndi Kleen xfs_trans_buf.o \ 11958b7983dSAndi Kleen xfs_trans_extfree.o \ 12058b7983dSAndi Kleen xfs_trans_inode.o \ 121f997ee21SDarrick J. Wong xfs_trans_refcount.o \ 1229e88b5d8SDarrick J. Wong xfs_trans_rmap.o \ 12358b7983dSAndi Kleen 124c59d87c4SChristoph Hellwig# optional features 125c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_QUOTA) += xfs_dquot.o \ 126c59d87c4SChristoph Hellwig xfs_dquot_item.o \ 127c59d87c4SChristoph Hellwig xfs_trans_dquot.o \ 128c59d87c4SChristoph Hellwig xfs_qm_syscalls.o \ 129c59d87c4SChristoph Hellwig xfs_qm_bhv.o \ 130c59d87c4SChristoph Hellwig xfs_qm.o \ 131c59d87c4SChristoph Hellwig xfs_quotaops.o 132c963c619SDave Chinner 133c963c619SDave Chinner# xfs_rtbitmap is shared with libxfs 13430f712c9SDave Chinnerxfs-$(CONFIG_XFS_RT) += xfs_rtalloc.o 135c963c619SDave Chinner 136c59d87c4SChristoph Hellwigxfs-$(CONFIG_XFS_POSIX_ACL) += xfs_acl.o 137c59d87c4SChristoph Hellwigxfs-$(CONFIG_SYSCTL) += xfs_sysctl.o 138c59d87c4SChristoph Hellwigxfs-$(CONFIG_COMPAT) += xfs_ioctl32.o 13915d66ac2SBenjamin Coddingtonxfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o 14036fd6e86SDarrick 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 \ 15199d9d8d0SDarrick J. Wong bmap.o \ 152537964bcSDarrick J. Wong btree.o \ 153dcb660f9SDarrick J. Wong common.o \ 1547c4a07a4SDarrick J. Wong dabtree.o \ 155a5c46e5eSDarrick J. Wong dir.o \ 1563daa6641SDarrick J. Wong ialloc.o \ 15780e4e126SDarrick J. Wong inode.o \ 1580f28b257SDarrick J. Wong parent.o \ 159edc09b52SDarrick J. Wong refcount.o \ 160c7e693d9SDarrick J. Wong rmap.o \ 16136fd6e86SDarrick J. Wong scrub.o \ 1622a721dbbSDarrick J. Wong symlink.o \ 16336fd6e86SDarrick J. Wong ) 16429b0767bSDarrick J. Wong 16529b0767bSDarrick J. Wongxfs-$(CONFIG_XFS_RT) += scrub/rtbitmap.o 166c2fc338cSDarrick J. Wongxfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o 16784d42ea6SDarrick J. Wong 16884d42ea6SDarrick J. Wong# online repair 16984d42ea6SDarrick J. Wongifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) 17084d42ea6SDarrick J. Wongxfs-y += $(addprefix scrub/, \ 171*d25522f1SDarrick J. Wong agheader_repair.o \ 17284d42ea6SDarrick J. Wong repair.o \ 17384d42ea6SDarrick J. Wong ) 17484d42ea6SDarrick J. Wongendif 17536fd6e86SDarrick J. Wongendif 176