1# SPDX-License-Identifier: GPL-2.0 2# 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 9obj-$(CONFIG_SYSCTL) += sysctls.o 10 11obj-y := open.o read_write.o file_table.o super.o \ 12 char_dev.o stat.o exec.o pipe.o namei.o fcntl.o \ 13 ioctl.o readdir.o select.o dcache.o inode.o \ 14 attr.o bad_inode.o file.o filesystems.o namespace.o \ 15 seq_file.o xattr.o libfs.o fs-writeback.o \ 16 pnode.o splice.o sync.o utimes.o d_path.o \ 17 stack.o fs_struct.o statfs.o fs_pin.o nsfs.o \ 18 fs_types.o fs_context.o fs_parser.o fsopen.o init.o \ 19 kernel_read_file.o remap_range.o 20 21ifeq ($(CONFIG_BLOCK),y) 22obj-y += buffer.o direct-io.o mpage.o 23else 24obj-y += no-block.o 25endif 26 27obj-$(CONFIG_PROC_FS) += proc_namespace.o 28 29obj-y += notify/ 30obj-$(CONFIG_EPOLL) += eventpoll.o 31obj-y += anon_inodes.o 32obj-$(CONFIG_SIGNALFD) += signalfd.o 33obj-$(CONFIG_TIMERFD) += timerfd.o 34obj-$(CONFIG_EVENTFD) += eventfd.o 35obj-$(CONFIG_USERFAULTFD) += userfaultfd.o 36obj-$(CONFIG_AIO) += aio.o 37obj-$(CONFIG_IO_URING) += io_uring.o 38obj-$(CONFIG_IO_WQ) += io-wq.o 39obj-$(CONFIG_FS_DAX) += dax.o 40obj-$(CONFIG_FS_ENCRYPTION) += crypto/ 41obj-$(CONFIG_FS_VERITY) += verity/ 42obj-$(CONFIG_FILE_LOCKING) += locks.o 43obj-$(CONFIG_BINFMT_AOUT) += binfmt_aout.o 44obj-$(CONFIG_BINFMT_MISC) += binfmt_misc.o 45obj-$(CONFIG_BINFMT_SCRIPT) += binfmt_script.o 46obj-$(CONFIG_BINFMT_ELF) += binfmt_elf.o 47obj-$(CONFIG_COMPAT_BINFMT_ELF) += compat_binfmt_elf.o 48obj-$(CONFIG_BINFMT_ELF_FDPIC) += binfmt_elf_fdpic.o 49obj-$(CONFIG_BINFMT_FLAT) += binfmt_flat.o 50 51obj-$(CONFIG_FS_MBCACHE) += mbcache.o 52obj-$(CONFIG_FS_POSIX_ACL) += posix_acl.o 53obj-$(CONFIG_NFS_COMMON) += nfs_common/ 54obj-$(CONFIG_COREDUMP) += coredump.o 55obj-$(CONFIG_SYSCTL) += drop_caches.o 56 57obj-$(CONFIG_FHANDLE) += fhandle.o 58obj-y += iomap/ 59 60obj-y += quota/ 61 62obj-$(CONFIG_PROC_FS) += proc/ 63obj-$(CONFIG_KERNFS) += kernfs/ 64obj-$(CONFIG_SYSFS) += sysfs/ 65obj-$(CONFIG_CONFIGFS_FS) += configfs/ 66obj-y += devpts/ 67 68obj-$(CONFIG_DLM) += dlm/ 69 70# Do not add any filesystems before this line 71obj-$(CONFIG_NETFS_SUPPORT) += netfs/ 72obj-$(CONFIG_FSCACHE) += fscache/ 73obj-$(CONFIG_REISERFS_FS) += reiserfs/ 74obj-$(CONFIG_EXT4_FS) += ext4/ 75# We place ext4 before ext2 so that clean ext3 root fs's do NOT mount using the 76# ext2 driver, which doesn't know about journalling! Explicitly request ext2 77# by giving the rootfstype= parameter. 78obj-$(CONFIG_EXT2_FS) += ext2/ 79obj-$(CONFIG_JBD2) += jbd2/ 80obj-$(CONFIG_CRAMFS) += cramfs/ 81obj-$(CONFIG_SQUASHFS) += squashfs/ 82obj-y += ramfs/ 83obj-$(CONFIG_HUGETLBFS) += hugetlbfs/ 84obj-$(CONFIG_CODA_FS) += coda/ 85obj-$(CONFIG_MINIX_FS) += minix/ 86obj-$(CONFIG_FAT_FS) += fat/ 87obj-$(CONFIG_EXFAT_FS) += exfat/ 88obj-$(CONFIG_BFS_FS) += bfs/ 89obj-$(CONFIG_ISO9660_FS) += isofs/ 90obj-$(CONFIG_HFSPLUS_FS) += hfsplus/ # Before hfs to find wrapped HFS+ 91obj-$(CONFIG_HFS_FS) += hfs/ 92obj-$(CONFIG_ECRYPT_FS) += ecryptfs/ 93obj-$(CONFIG_VXFS_FS) += freevxfs/ 94obj-$(CONFIG_NFS_FS) += nfs/ 95obj-$(CONFIG_EXPORTFS) += exportfs/ 96obj-$(CONFIG_NFSD) += nfsd/ 97obj-$(CONFIG_LOCKD) += lockd/ 98obj-$(CONFIG_NLS) += nls/ 99obj-y += unicode/ 100obj-$(CONFIG_SYSV_FS) += sysv/ 101obj-$(CONFIG_SMBFS_COMMON) += smbfs_common/ 102obj-$(CONFIG_CIFS) += cifs/ 103obj-$(CONFIG_SMB_SERVER) += ksmbd/ 104obj-$(CONFIG_HPFS_FS) += hpfs/ 105obj-$(CONFIG_NTFS_FS) += ntfs/ 106obj-$(CONFIG_NTFS3_FS) += ntfs3/ 107obj-$(CONFIG_UFS_FS) += ufs/ 108obj-$(CONFIG_EFS_FS) += efs/ 109obj-$(CONFIG_JFFS2_FS) += jffs2/ 110obj-$(CONFIG_UBIFS_FS) += ubifs/ 111obj-$(CONFIG_AFFS_FS) += affs/ 112obj-$(CONFIG_ROMFS_FS) += romfs/ 113obj-$(CONFIG_QNX4FS_FS) += qnx4/ 114obj-$(CONFIG_QNX6FS_FS) += qnx6/ 115obj-$(CONFIG_AUTOFS_FS) += autofs/ 116obj-$(CONFIG_ADFS_FS) += adfs/ 117obj-$(CONFIG_FUSE_FS) += fuse/ 118obj-$(CONFIG_OVERLAY_FS) += overlayfs/ 119obj-$(CONFIG_ORANGEFS_FS) += orangefs/ 120obj-$(CONFIG_UDF_FS) += udf/ 121obj-$(CONFIG_SUN_OPENPROMFS) += openpromfs/ 122obj-$(CONFIG_OMFS_FS) += omfs/ 123obj-$(CONFIG_JFS_FS) += jfs/ 124obj-$(CONFIG_XFS_FS) += xfs/ 125obj-$(CONFIG_9P_FS) += 9p/ 126obj-$(CONFIG_AFS_FS) += afs/ 127obj-$(CONFIG_NILFS2_FS) += nilfs2/ 128obj-$(CONFIG_BEFS_FS) += befs/ 129obj-$(CONFIG_HOSTFS) += hostfs/ 130obj-$(CONFIG_CACHEFILES) += cachefiles/ 131obj-$(CONFIG_DEBUG_FS) += debugfs/ 132obj-$(CONFIG_TRACING) += tracefs/ 133obj-$(CONFIG_OCFS2_FS) += ocfs2/ 134obj-$(CONFIG_BTRFS_FS) += btrfs/ 135obj-$(CONFIG_GFS2_FS) += gfs2/ 136obj-$(CONFIG_F2FS_FS) += f2fs/ 137obj-$(CONFIG_CEPH_FS) += ceph/ 138obj-$(CONFIG_PSTORE) += pstore/ 139obj-$(CONFIG_EFIVAR_FS) += efivarfs/ 140obj-$(CONFIG_EROFS_FS) += erofs/ 141obj-$(CONFIG_VBOXSF_FS) += vboxsf/ 142obj-$(CONFIG_ZONEFS_FS) += zonefs/ 143