more changes on original files
[linux-2.4.git] / fs / xfs / Makefile
1 #
2 # Copyright (c) 2000-2004 Silicon Graphics, Inc.  All Rights Reserved.
3 #
4 # This program is free software; you can redistribute it and/or modify it
5 # under the terms of version 2 of the GNU General Public License as
6 # published by the Free Software Foundation.
7 #
8 # This program is distributed in the hope that it would be useful, but
9 # WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11 #
12 # Further, this software is distributed without any warranty that it is
13 # free of the rightful claim of any third person regarding infringement
14 # or the like.  Any license provided herein, whether implied or
15 # otherwise, applies only to this software file.  Patent licenses, if
16 # any, provided herein do not apply to combinations of this program with
17 # other software, or any other product whatsoever.
18 #
19 # You should have received a copy of the GNU General Public License along
20 # with this program; if not, write the Free Software Foundation, Inc., 59
21 # Temple Place - Suite 330, Boston MA 02111-1307, USA.
22 #
23 # Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
24 # Mountain View, CA  94043, or:
25 #
26 # http://www.sgi.com
27 #
28 # For further information regarding this notice, see:
29 #
30 # http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
31 #
32
33 EXTRA_CFLAGS +=  -I. -I linux-2.4 -funsigned-char
34
35 ifeq ($(CONFIG_XFS_DEBUG),y)
36         EXTRA_CFLAGS += -g -DSTATIC="" -DDEBUG
37         EXTRA_CFLAGS += -DPAGEBUF_LOCK_TRACKING
38 endif
39 ifeq ($(CONFIG_XFS_TRACE),y)
40         EXTRA_CFLAGS += -DXFS_ALLOC_TRACE
41         EXTRA_CFLAGS += -DXFS_ATTR_TRACE
42         EXTRA_CFLAGS += -DXFS_BLI_TRACE
43         EXTRA_CFLAGS += -DXFS_BMAP_TRACE
44         EXTRA_CFLAGS += -DXFS_BMBT_TRACE
45         EXTRA_CFLAGS += -DXFS_DIR_TRACE
46         EXTRA_CFLAGS += -DXFS_DQUOT_TRACE
47         EXTRA_CFLAGS += -DXFS_ILOCK_TRACE
48         EXTRA_CFLAGS += -DXFS_LOG_TRACE
49         EXTRA_CFLAGS += -DXFS_RW_TRACE
50         EXTRA_CFLAGS += -DXFS_DIR2_TRACE
51         EXTRA_CFLAGS += -DPAGEBUF_TRACE
52         # EXTRA_CFLAGS += -DXFS_VNODE_TRACE
53 endif
54
55 O_TARGET                        := xfs.o
56 obj-m                           := $(O_TARGET)
57
58 obj-$(CONFIG_XFS_RT)            += xfs_rtalloc.o
59 obj-$(CONFIG_XFS_POSIX_ACL)     += xfs_acl.o
60
61 obj-$(CONFIG_XFS_TRACE)         += xfs_dir2_trace.o
62
63 obj-y                           += xfs_alloc.o \
64                                    xfs_alloc_btree.o \
65                                    xfs_attr.o \
66                                    xfs_attr_leaf.o \
67                                    xfs_behavior.o \
68                                    xfs_bit.o \
69                                    xfs_bmap.o \
70                                    xfs_bmap_btree.o \
71                                    xfs_btree.o \
72                                    xfs_buf_item.o \
73                                    xfs_da_btree.o \
74                                    xfs_dir.o \
75                                    xfs_dir2.o \
76                                    xfs_dir2_block.o \
77                                    xfs_dir2_data.o \
78                                    xfs_dir2_leaf.o \
79                                    xfs_dir2_node.o \
80                                    xfs_dir2_sf.o \
81                                    xfs_dir_leaf.o \
82                                    xfs_error.o \
83                                    xfs_extfree_item.o \
84                                    xfs_fsops.o \
85                                    xfs_ialloc.o \
86                                    xfs_ialloc_btree.o \
87                                    xfs_iget.o \
88                                    xfs_inode.o \
89                                    xfs_inode_item.o \
90                                    xfs_iocore.o \
91                                    xfs_iomap.o \
92                                    xfs_itable.o \
93                                    xfs_dfrag.o \
94                                    xfs_log.o \
95                                    xfs_log_recover.o \
96                                    xfs_macros.o \
97                                    xfs_mount.o \
98                                    xfs_rename.o \
99                                    xfs_trans.o \
100                                    xfs_trans_ail.o \
101                                    xfs_trans_buf.o \
102                                    xfs_trans_extfree.o \
103                                    xfs_trans_inode.o \
104                                    xfs_trans_item.o \
105                                    xfs_utils.o \
106                                    xfs_vfsops.o \
107                                    xfs_vnodeops.o \
108                                    xfs_refcache.o \
109                                    xfs_rw.o \
110                                    xfs_dmops.o \
111                                    xfs_qmops.o
112
113 # Objects not built in this directory
114 obj-y                           += linux-2.4/linux_xfs.o \
115                                    support/support_xfs.o
116
117 subdir-$(CONFIG_XFS_FS)         += linux-2.4 support
118
119 ifeq ($(CONFIG_XFS_DMAPI),y)
120   subdir-$(CONFIG_XFS_FS)       += dmapi
121   obj-y                         += dmapi/xfs_dmapi.o
122 endif
123
124 ifeq ($(CONFIG_XFS_QUOTA),y)
125   subdir-$(CONFIG_XFS_FS)       += quota
126   obj-y                         += quota/xfs_quota.o
127 endif
128
129 include $(TOPDIR)/Rules.make
130
131 # This is really nasty, but Rules.make was never designed for multi directory
132 # modules.  Keith Owens.
133
134 xfs.o: $(patsubst %,_modsubdir_%,$(subdir-m))