blob: d60089fd689bc08dabc06e3b41a921e895acb6a6 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Linus Torvalds1da177e2005-04-16 15:20:36 -07002#
3# Makefile for the Linux filesystems.
4#
5# 14 Sep 2000, Christoph Hellwig <hch@infradead.org>
6# Rewritten to use lists instead of if-statements.
7#
8
David Howells93614012006-09-30 20:45:40 +02009obj-y := open.o read_write.o file_table.o super.o \
10 char_dev.o stat.o exec.o pipe.o namei.o fcntl.o \
Al Virof776c732013-03-12 09:46:27 -040011 ioctl.o readdir.o select.o dcache.o inode.o \
Thomas Petazzoniebf3f092008-10-15 22:05:12 -070012 attr.o bad_inode.o file.o filesystems.o namespace.o \
David Howells93614012006-09-30 20:45:40 +020013 seq_file.o xattr.o libfs.o fs-writeback.o \
Al Viro7a5cf792018-03-05 19:15:50 -050014 pnode.o splice.o sync.o utimes.o d_path.o \
Phillip Potterbbe7449e2019-01-21 00:54:27 +000015 stack.o fs_struct.o statfs.o fs_pin.o nsfs.o \
David Howells24dcb3d2018-11-01 23:33:31 +000016 fs_types.o fs_context.o fs_parser.o fsopen.o
David Howells93614012006-09-30 20:45:40 +020017
18ifeq ($(CONFIG_BLOCK),y)
Jens Axboe2667bcb2014-05-19 11:02:18 -060019obj-y += buffer.o block_dev.o direct-io.o mpage.o
David Howells93614012006-09-30 20:45:40 +020020else
21obj-y += no-block.o
22endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
Al Viro0226f492011-12-06 12:21:54 -050024obj-$(CONFIG_PROC_FS) += proc_namespace.o
25
Eric Paris272eb012008-12-17 13:59:41 -050026obj-y += notify/
Linus Torvalds1da177e2005-04-16 15:20:36 -070027obj-$(CONFIG_EPOLL) += eventpoll.o
David Howellsdadd2292018-11-05 17:40:31 +000028obj-y += anon_inodes.o
Davide Libenzifba2afa2007-05-10 22:23:13 -070029obj-$(CONFIG_SIGNALFD) += signalfd.o
Davide Libenzib215e282007-05-10 22:23:16 -070030obj-$(CONFIG_TIMERFD) += timerfd.o
Davide Libenzie1ad7462007-05-10 22:23:19 -070031obj-$(CONFIG_EVENTFD) += eventfd.o
Andrea Arcangelia14c1512015-09-04 15:46:54 -070032obj-$(CONFIG_USERFAULTFD) += userfaultfd.o
Thomas Petazzoniebf3f092008-10-15 22:05:12 -070033obj-$(CONFIG_AIO) += aio.o
Jens Axboe2b188cc2019-01-07 10:46:33 -070034obj-$(CONFIG_IO_URING) += io_uring.o
Matthew Wilcox6cd176a2015-02-16 15:59:25 -080035obj-$(CONFIG_FS_DAX) += dax.o
Jaegeuk Kim0b81d072015-05-15 16:26:10 -070036obj-$(CONFIG_FS_ENCRYPTION) += crypto/
Thomas Petazzonibfcd17a2008-08-06 15:12:22 +020037obj-$(CONFIG_FILE_LOCKING) += locks.o
Christoph Hellwige6a6d2e2006-01-09 20:52:14 -080038obj-$(CONFIG_COMPAT) += compat.o compat_ioctl.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070039obj-$(CONFIG_BINFMT_AOUT) += binfmt_aout.o
40obj-$(CONFIG_BINFMT_EM86) += binfmt_em86.o
41obj-$(CONFIG_BINFMT_MISC) += binfmt_misc.o
Josh Triplett2535e0d2013-04-30 15:27:44 -070042obj-$(CONFIG_BINFMT_SCRIPT) += binfmt_script.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070043obj-$(CONFIG_BINFMT_ELF) += binfmt_elf.o
Roland McGrathb9d36d52008-01-30 13:31:46 +010044obj-$(CONFIG_COMPAT_BINFMT_ELF) += compat_binfmt_elf.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070045obj-$(CONFIG_BINFMT_ELF_FDPIC) += binfmt_elf_fdpic.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070046obj-$(CONFIG_BINFMT_FLAT) += binfmt_flat.o
47
48obj-$(CONFIG_FS_MBCACHE) += mbcache.o
Christoph Hellwig5c8ebd52013-12-20 05:16:37 -080049obj-$(CONFIG_FS_POSIX_ACL) += posix_acl.o
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +000050obj-$(CONFIG_NFS_COMMON) += nfs_common/
Alex Kelly046d6622012-10-04 17:15:23 -070051obj-$(CONFIG_COREDUMP) += coredump.o
Josh Triplett146732c2013-04-29 15:07:22 -070052obj-$(CONFIG_SYSCTL) += drop_caches.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070053
Aneesh Kumar K.V990d6c22011-01-29 18:43:26 +053054obj-$(CONFIG_FHANDLE) += fhandle.o
Darrick J. Wong1c230202019-07-15 08:50:57 -070055obj-y += iomap/
Aneesh Kumar K.V990d6c22011-01-29 18:43:26 +053056
Jan Kara884d1792009-01-26 15:28:09 +010057obj-y += quota/
Linus Torvalds1da177e2005-04-16 15:20:36 -070058
Linus Torvalds1da177e2005-04-16 15:20:36 -070059obj-$(CONFIG_PROC_FS) += proc/
Tejun Heoba341d52014-02-03 14:09:17 -050060obj-$(CONFIG_KERNFS) += kernfs/
61obj-$(CONFIG_SYSFS) += sysfs/
Joel Beckercef08932006-05-03 11:38:53 -070062obj-$(CONFIG_CONFIGFS_FS) += configfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070063obj-y += devpts/
64
65obj-$(CONFIG_PROFILING) += dcookies.o
David Teiglande7fd4172006-01-18 09:30:29 +000066obj-$(CONFIG_DLM) += dlm/
Linus Torvalds1da177e2005-04-16 15:20:36 -070067
68# Do not add any filesystems before this line
David Howells06b3db12009-04-03 16:42:36 +010069obj-$(CONFIG_FSCACHE) += fscache/
Linus Torvalds1da177e2005-04-16 15:20:36 -070070obj-$(CONFIG_REISERFS_FS) += reiserfs/
Theodore Ts'od8ae4602009-02-28 09:50:01 -050071obj-$(CONFIG_EXT4_FS) += ext4/
Darrick J. Wong91727962015-10-15 10:33:21 -040072# We place ext4 before ext2 so that clean ext3 root fs's do NOT mount using the
73# ext2 driver, which doesn't know about journalling! Explicitly request ext2
74# by giving the rootfstype= parameter.
75obj-$(CONFIG_EXT2_FS) += ext2/
Mingming Caodab291a2006-10-11 01:21:01 -070076obj-$(CONFIG_JBD2) += jbd2/
Linus Torvalds1da177e2005-04-16 15:20:36 -070077obj-$(CONFIG_CRAMFS) += cramfs/
Phillip Lougherfcef6fb2009-01-05 08:46:27 +000078obj-$(CONFIG_SQUASHFS) += squashfs/
Robert P. J. Day8e3f7152007-10-16 23:29:27 -070079obj-y += ramfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070080obj-$(CONFIG_HUGETLBFS) += hugetlbfs/
81obj-$(CONFIG_CODA_FS) += coda/
82obj-$(CONFIG_MINIX_FS) += minix/
83obj-$(CONFIG_FAT_FS) += fat/
Linus Torvalds1da177e2005-04-16 15:20:36 -070084obj-$(CONFIG_BFS_FS) += bfs/
85obj-$(CONFIG_ISO9660_FS) += isofs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070086obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+
87obj-$(CONFIG_HFS_FS) += hfs/
Michael Halcrow237fead2006-10-04 02:16:22 -070088obj-$(CONFIG_ECRYPT_FS) += ecryptfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070089obj-$(CONFIG_VXFS_FS) += freevxfs/
90obj-$(CONFIG_NFS_FS) += nfs/
91obj-$(CONFIG_EXPORTFS) += exportfs/
92obj-$(CONFIG_NFSD) += nfsd/
93obj-$(CONFIG_LOCKD) += lockd/
94obj-$(CONFIG_NLS) += nls/
Gabriel Krisman Bertazi955405d2019-04-25 13:38:44 -040095obj-$(CONFIG_UNICODE) += unicode/
Linus Torvalds1da177e2005-04-16 15:20:36 -070096obj-$(CONFIG_SYSV_FS) += sysv/
Linus Torvalds1da177e2005-04-16 15:20:36 -070097obj-$(CONFIG_CIFS) += cifs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070098obj-$(CONFIG_HPFS_FS) += hpfs/
99obj-$(CONFIG_NTFS_FS) += ntfs/
100obj-$(CONFIG_UFS_FS) += ufs/
101obj-$(CONFIG_EFS_FS) += efs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102obj-$(CONFIG_JFFS2_FS) += jffs2/
Artem Bityutskiy0d7eff82008-07-14 19:08:38 +0300103obj-$(CONFIG_UBIFS_FS) += ubifs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104obj-$(CONFIG_AFFS_FS) += affs/
105obj-$(CONFIG_ROMFS_FS) += romfs/
106obj-$(CONFIG_QNX4FS_FS) += qnx4/
Kai Bankett5d026c72012-02-17 05:59:20 +0100107obj-$(CONFIG_QNX6FS_FS) += qnx6/
Ian Kent2a3ae0a2018-06-07 17:11:31 -0700108obj-$(CONFIG_AUTOFS_FS) += autofs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109obj-$(CONFIG_ADFS_FS) += adfs/
Miklos Szeredi04578f12005-09-09 13:10:22 -0700110obj-$(CONFIG_FUSE_FS) += fuse/
Miklos Szeredief94b182014-11-20 16:39:59 +0100111obj-$(CONFIG_OVERLAY_FS) += overlayfs/
Mike Marshall07f01962015-07-17 10:38:17 -0400112obj-$(CONFIG_ORANGEFS_FS) += orangefs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113obj-$(CONFIG_UDF_FS) += udf/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700114obj-$(CONFIG_SUN_OPENPROMFS) += openpromfs/
Bob Copeland63ca8ce2008-07-25 19:45:17 -0700115obj-$(CONFIG_OMFS_FS) += omfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116obj-$(CONFIG_JFS_FS) += jfs/
117obj-$(CONFIG_XFS_FS) += xfs/
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -0700118obj-$(CONFIG_9P_FS) += 9p/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119obj-$(CONFIG_AFS_FS) += afs/
Ryusuke Konishi0c4fb872009-04-06 19:01:41 -0700120obj-$(CONFIG_NILFS2_FS) += nilfs2/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700121obj-$(CONFIG_BEFS_FS) += befs/
122obj-$(CONFIG_HOSTFS) += hostfs/
David Howells9ae326a2009-04-03 16:42:41 +0100123obj-$(CONFIG_CACHEFILES) += cachefiles/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124obj-$(CONFIG_DEBUG_FS) += debugfs/
Steven Rostedt (Red Hat)4282d602015-01-20 11:36:55 -0500125obj-$(CONFIG_TRACING) += tracefs/
Mark Fashehb4e40a52005-12-15 14:31:24 -0800126obj-$(CONFIG_OCFS2_FS) += ocfs2/
Chris Mason60582d12008-09-25 12:25:16 -0400127obj-$(CONFIG_BTRFS_FS) += btrfs/
David Teiglandf7825dc2006-01-16 16:43:37 +0000128obj-$(CONFIG_GFS2_FS) += gfs2/
Jaegeuk Kima14d53932012-11-02 17:25:27 +0900129obj-$(CONFIG_F2FS_FS) += f2fs/
Sage Weil9030aaf2009-10-06 11:31:15 -0700130obj-$(CONFIG_CEPH_FS) += ceph/
Tony Luckca01d6d2010-12-28 14:25:21 -0800131obj-$(CONFIG_PSTORE) += pstore/
Matt Flemingd68772b2013-02-08 16:27:24 +0000132obj-$(CONFIG_EFIVAR_FS) += efivarfs/