blob: 7bb2a05fda1f18cf7f20ba960bbecd0a0d32e1c0 [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 \
Kees Cook5287b072020-10-02 10:38:16 -070016 fs_types.o fs_context.o fs_parser.o fsopen.o init.o \
17 kernel_read_file.o
David Howells93614012006-09-30 20:45:40 +020018
19ifeq ($(CONFIG_BLOCK),y)
Jens Axboe2667bcb2014-05-19 11:02:18 -060020obj-y += buffer.o block_dev.o direct-io.o mpage.o
David Howells93614012006-09-30 20:45:40 +020021else
22obj-y += no-block.o
23endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070024
Al Viro0226f492011-12-06 12:21:54 -050025obj-$(CONFIG_PROC_FS) += proc_namespace.o
26
Eric Paris272eb012008-12-17 13:59:41 -050027obj-y += notify/
Linus Torvalds1da177e2005-04-16 15:20:36 -070028obj-$(CONFIG_EPOLL) += eventpoll.o
David Howellsdadd2292018-11-05 17:40:31 +000029obj-y += anon_inodes.o
Davide Libenzifba2afa2007-05-10 22:23:13 -070030obj-$(CONFIG_SIGNALFD) += signalfd.o
Davide Libenzib215e282007-05-10 22:23:16 -070031obj-$(CONFIG_TIMERFD) += timerfd.o
Davide Libenzie1ad7462007-05-10 22:23:19 -070032obj-$(CONFIG_EVENTFD) += eventfd.o
Andrea Arcangelia14c1512015-09-04 15:46:54 -070033obj-$(CONFIG_USERFAULTFD) += userfaultfd.o
Thomas Petazzoniebf3f092008-10-15 22:05:12 -070034obj-$(CONFIG_AIO) += aio.o
Jens Axboe2b188cc2019-01-07 10:46:33 -070035obj-$(CONFIG_IO_URING) += io_uring.o
Jens Axboe771b53d02019-10-22 10:25:58 -060036obj-$(CONFIG_IO_WQ) += io-wq.o
Matthew Wilcox6cd176a2015-02-16 15:59:25 -080037obj-$(CONFIG_FS_DAX) += dax.o
Jaegeuk Kim0b81d072015-05-15 16:26:10 -070038obj-$(CONFIG_FS_ENCRYPTION) += crypto/
Eric Biggers671e67b2019-07-22 09:26:21 -070039obj-$(CONFIG_FS_VERITY) += verity/
Thomas Petazzonibfcd17a2008-08-06 15:12:22 +020040obj-$(CONFIG_FILE_LOCKING) += locks.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070041obj-$(CONFIG_BINFMT_AOUT) += binfmt_aout.o
42obj-$(CONFIG_BINFMT_EM86) += binfmt_em86.o
43obj-$(CONFIG_BINFMT_MISC) += binfmt_misc.o
Josh Triplett2535e0d2013-04-30 15:27:44 -070044obj-$(CONFIG_BINFMT_SCRIPT) += binfmt_script.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070045obj-$(CONFIG_BINFMT_ELF) += binfmt_elf.o
Roland McGrathb9d36d52008-01-30 13:31:46 +010046obj-$(CONFIG_COMPAT_BINFMT_ELF) += compat_binfmt_elf.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070047obj-$(CONFIG_BINFMT_ELF_FDPIC) += binfmt_elf_fdpic.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070048obj-$(CONFIG_BINFMT_FLAT) += binfmt_flat.o
49
50obj-$(CONFIG_FS_MBCACHE) += mbcache.o
Christoph Hellwig5c8ebd52013-12-20 05:16:37 -080051obj-$(CONFIG_FS_POSIX_ACL) += posix_acl.o
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +000052obj-$(CONFIG_NFS_COMMON) += nfs_common/
Alex Kelly046d6622012-10-04 17:15:23 -070053obj-$(CONFIG_COREDUMP) += coredump.o
Josh Triplett146732c2013-04-29 15:07:22 -070054obj-$(CONFIG_SYSCTL) += drop_caches.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070055
Aneesh Kumar K.V990d6c22011-01-29 18:43:26 +053056obj-$(CONFIG_FHANDLE) += fhandle.o
Darrick J. Wong1c230202019-07-15 08:50:57 -070057obj-y += iomap/
Aneesh Kumar K.V990d6c22011-01-29 18:43:26 +053058
Jan Kara884d1792009-01-26 15:28:09 +010059obj-y += quota/
Linus Torvalds1da177e2005-04-16 15:20:36 -070060
Linus Torvalds1da177e2005-04-16 15:20:36 -070061obj-$(CONFIG_PROC_FS) += proc/
Tejun Heoba341d52014-02-03 14:09:17 -050062obj-$(CONFIG_KERNFS) += kernfs/
63obj-$(CONFIG_SYSFS) += sysfs/
Joel Beckercef08932006-05-03 11:38:53 -070064obj-$(CONFIG_CONFIGFS_FS) += configfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070065obj-y += devpts/
66
67obj-$(CONFIG_PROFILING) += dcookies.o
David Teiglande7fd4172006-01-18 09:30:29 +000068obj-$(CONFIG_DLM) += dlm/
Linus Torvalds1da177e2005-04-16 15:20:36 -070069
70# Do not add any filesystems before this line
David Howells06b3db12009-04-03 16:42:36 +010071obj-$(CONFIG_FSCACHE) += fscache/
Linus Torvalds1da177e2005-04-16 15:20:36 -070072obj-$(CONFIG_REISERFS_FS) += reiserfs/
Theodore Ts'od8ae4602009-02-28 09:50:01 -050073obj-$(CONFIG_EXT4_FS) += ext4/
Darrick J. Wong91727962015-10-15 10:33:21 -040074# We place ext4 before ext2 so that clean ext3 root fs's do NOT mount using the
75# ext2 driver, which doesn't know about journalling! Explicitly request ext2
76# by giving the rootfstype= parameter.
77obj-$(CONFIG_EXT2_FS) += ext2/
Mingming Caodab291a2006-10-11 01:21:01 -070078obj-$(CONFIG_JBD2) += jbd2/
Linus Torvalds1da177e2005-04-16 15:20:36 -070079obj-$(CONFIG_CRAMFS) += cramfs/
Phillip Lougherfcef6fb2009-01-05 08:46:27 +000080obj-$(CONFIG_SQUASHFS) += squashfs/
Robert P. J. Day8e3f7152007-10-16 23:29:27 -070081obj-y += ramfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070082obj-$(CONFIG_HUGETLBFS) += hugetlbfs/
83obj-$(CONFIG_CODA_FS) += coda/
84obj-$(CONFIG_MINIX_FS) += minix/
85obj-$(CONFIG_FAT_FS) += fat/
Namjae Jeonb9d1e2e2020-03-02 15:21:42 +090086obj-$(CONFIG_EXFAT_FS) += exfat/
Linus Torvalds1da177e2005-04-16 15:20:36 -070087obj-$(CONFIG_BFS_FS) += bfs/
88obj-$(CONFIG_ISO9660_FS) += isofs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070089obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+
90obj-$(CONFIG_HFS_FS) += hfs/
Michael Halcrow237fead2006-10-04 02:16:22 -070091obj-$(CONFIG_ECRYPT_FS) += ecryptfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -070092obj-$(CONFIG_VXFS_FS) += freevxfs/
93obj-$(CONFIG_NFS_FS) += nfs/
94obj-$(CONFIG_EXPORTFS) += exportfs/
95obj-$(CONFIG_NFSD) += nfsd/
96obj-$(CONFIG_LOCKD) += lockd/
97obj-$(CONFIG_NLS) += nls/
Gabriel Krisman Bertazi955405d2019-04-25 13:38:44 -040098obj-$(CONFIG_UNICODE) += unicode/
Linus Torvalds1da177e2005-04-16 15:20:36 -070099obj-$(CONFIG_SYSV_FS) += sysv/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700100obj-$(CONFIG_CIFS) += cifs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101obj-$(CONFIG_HPFS_FS) += hpfs/
102obj-$(CONFIG_NTFS_FS) += ntfs/
103obj-$(CONFIG_UFS_FS) += ufs/
104obj-$(CONFIG_EFS_FS) += efs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700105obj-$(CONFIG_JFFS2_FS) += jffs2/
Artem Bityutskiy0d7eff82008-07-14 19:08:38 +0300106obj-$(CONFIG_UBIFS_FS) += ubifs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700107obj-$(CONFIG_AFFS_FS) += affs/
108obj-$(CONFIG_ROMFS_FS) += romfs/
109obj-$(CONFIG_QNX4FS_FS) += qnx4/
Kai Bankett5d026c72012-02-17 05:59:20 +0100110obj-$(CONFIG_QNX6FS_FS) += qnx6/
Ian Kent2a3ae0a2018-06-07 17:11:31 -0700111obj-$(CONFIG_AUTOFS_FS) += autofs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700112obj-$(CONFIG_ADFS_FS) += adfs/
Miklos Szeredi04578f12005-09-09 13:10:22 -0700113obj-$(CONFIG_FUSE_FS) += fuse/
Miklos Szeredief94b182014-11-20 16:39:59 +0100114obj-$(CONFIG_OVERLAY_FS) += overlayfs/
Mike Marshall07f01962015-07-17 10:38:17 -0400115obj-$(CONFIG_ORANGEFS_FS) += orangefs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116obj-$(CONFIG_UDF_FS) += udf/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117obj-$(CONFIG_SUN_OPENPROMFS) += openpromfs/
Bob Copeland63ca8ce2008-07-25 19:45:17 -0700118obj-$(CONFIG_OMFS_FS) += omfs/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119obj-$(CONFIG_JFS_FS) += jfs/
120obj-$(CONFIG_XFS_FS) += xfs/
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -0700121obj-$(CONFIG_9P_FS) += 9p/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122obj-$(CONFIG_AFS_FS) += afs/
Ryusuke Konishi0c4fb872009-04-06 19:01:41 -0700123obj-$(CONFIG_NILFS2_FS) += nilfs2/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124obj-$(CONFIG_BEFS_FS) += befs/
125obj-$(CONFIG_HOSTFS) += hostfs/
David Howells9ae326a2009-04-03 16:42:41 +0100126obj-$(CONFIG_CACHEFILES) += cachefiles/
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127obj-$(CONFIG_DEBUG_FS) += debugfs/
Steven Rostedt (Red Hat)4282d602015-01-20 11:36:55 -0500128obj-$(CONFIG_TRACING) += tracefs/
Mark Fashehb4e40a52005-12-15 14:31:24 -0800129obj-$(CONFIG_OCFS2_FS) += ocfs2/
Chris Mason60582d12008-09-25 12:25:16 -0400130obj-$(CONFIG_BTRFS_FS) += btrfs/
David Teiglandf7825dc2006-01-16 16:43:37 +0000131obj-$(CONFIG_GFS2_FS) += gfs2/
Jaegeuk Kima14d53932012-11-02 17:25:27 +0900132obj-$(CONFIG_F2FS_FS) += f2fs/
Sage Weil9030aaf2009-10-06 11:31:15 -0700133obj-$(CONFIG_CEPH_FS) += ceph/
Tony Luckca01d6d2010-12-28 14:25:21 -0800134obj-$(CONFIG_PSTORE) += pstore/
Matt Flemingd68772b2013-02-08 16:27:24 +0000135obj-$(CONFIG_EFIVAR_FS) += efivarfs/
Gao Xiang47e49372019-08-23 05:36:59 +0800136obj-$(CONFIG_EROFS_FS) += erofs/
Hans de Goede0fd16952019-12-12 15:09:14 +0100137obj-$(CONFIG_VBOXSF_FS) += vboxsf/
Damien Le Moal8dcc1a92019-12-25 16:07:44 +0900138obj-$(CONFIG_ZONEFS_FS) += zonefs/