Update fs Makefiles
Subsystems (22)
PATCH 1/1 Update fs Makefiles
Convert foo-objs to newer-style foo-y.
--
Brian Gerst
fs/adfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_ADFS_FS) += adfs.o -adfs-objs := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o +adfs-y := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o
fs/affs/Makefile +1 -1
@@ -6,4 +6,4 @@ obj-$(CONFIG_AFFS_FS) += affs.o -affs-objs := super.o namei.o inode.o file.o dir.o amigaffs.o bitmap.o symlink.o +affs-y := super.o namei.o inode.o file.o dir.o amigaffs.o bitmap.o symlink.o
fs/afs/Makefile +1 -1
@@ -2,7 +2,7 @@ # Makefile for Red Hat Linux AFS client. # -kafs-objs := \ +kafs-y := \ callback.o \ cell.o \ cmservice.o \
fs/autofs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_AUTOFS_FS) += autofs.o -autofs-objs := dirhash.o init.o inode.o root.o symlink.o waitq.o +autofs-y := dirhash.o init.o inode.o root.o symlink.o waitq.o
fs/autofs4/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_AUTOFS4_FS) += autofs4.o -autofs4-objs := init.o inode.o root.o symlink.o waitq.o expire.o +autofs4-y := init.o inode.o root.o symlink.o waitq.o expire.o
fs/befs/Makefile +1 -1
@@ -10,4 +10,4 @@ obj-$(CONFIG_BEFS_FS) += befs.o -befs-objs := datastream.o btree.o super.o inode.o debug.o io.o linuxvfs.o +befs-y := datastream.o btree.o super.o inode.o debug.o io.o linuxvfs.o
fs/bfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_BFS_FS) += bfs.o -bfs-objs := inode.o file.o dir.o +bfs-y := inode.o file.o dir.o
fs/cifs/Makefile +1 -1
@@ -3,4 +3,4 @@ # obj-$(CONFIG_CIFS) += cifs.o -cifs-objs := cifsfs.o cifssmb.o cifs_debug.o connect.o dir.o file.o inode.o link.o misc.o netmisc.o smbdes.o smbencrypt.o transport.o asn1.o md4.o md5.o cifs_unicode.o nterr.o +cifs-y := cifsfs.o cifssmb.o cifs_debug.o connect.o dir.o file.o inode.o link.o misc.o netmisc.o smbdes.o smbencrypt.o transport.o asn1.o md4.o md5.o cifs_unicode.o nterr.o
fs/coda/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_CODA_FS) += coda.o -coda-objs := psdev.o cache.o cnode.o inode.o dir.o file.o upcall.o \ +coda-y := psdev.o cache.o cnode.o inode.o dir.o file.o upcall.o \ coda_linux.o symlink.o pioctl.o sysctl.o # If you want debugging output, please uncomment the following line.
fs/cramfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_CRAMFS) += cramfs.o -cramfs-objs := inode.o uncompress.o +cramfs-y := inode.o uncompress.o
fs/devfs/Makefile +1 -2
@@ -4,5 +4,4 @@ obj-$(CONFIG_DEVFS_FS) += devfs.o -devfs-objs := base.o util.o - +devfs-y := base.o util.o
fs/devpts/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_DEVPTS_FS) += devpts.o -devpts-objs := inode.o +devpts-y := inode.o
fs/efs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_EFS_FS) += efs.o -efs-objs := super.o inode.o namei.o dir.o file.o symlink.o +efs-y := super.o inode.o namei.o dir.o file.o symlink.o
fs/exportfs/Makefile +1 -1
@@ -3,4 +3,4 @@ obj-$(CONFIG_EXPORTFS) += exportfs.o -exportfs-objs := expfs.o +exportfs-y := expfs.o
fs/ext2/Makefile +4 -12
@@ -4,17 +4,9 @@ obj-$(CONFIG_EXT2_FS) += ext2.o -ext2-objs := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \ +ext2-y := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \ ioctl.o namei.o super.o symlink.o -ifeq ($(CONFIG_EXT2_FS_XATTR),y) -ext2-objs += xattr.o xattr_user.o xattr_trusted.o -endif - -ifeq ($(CONFIG_EXT2_FS_POSIX_ACL),y) -ext2-objs += acl.o -endif - -ifeq ($(CONFIG_EXT2_FS_SECURITY),y) -ext2-objs += xattr_security.o -endif +ext2-$(CONFIG_EXT2_FS_XATTR) += xattr.o xattr_user.o xattr_trusted.o +ext2-$(CONFIG_EXT2_FS_POSIX_ACL) += acl.o +ext2-$(CONFIG_EXT2_FS_SECURITY) += xattr_security.o
fs/ext3/Makefile +4 -12
@@ -4,17 +4,9 @@ obj-$(CONFIG_EXT3_FS) += ext3.o -ext3-objs := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \ +ext3-y := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \ ioctl.o namei.o super.o symlink.o hash.o -ifeq ($(CONFIG_EXT3_FS_XATTR),y) -ext3-objs += xattr.o xattr_user.o xattr_trusted.o -endif - -ifeq ($(CONFIG_EXT3_FS_POSIX_ACL),y) -ext3-objs += acl.o -endif - -ifeq ($(CONFIG_EXT3_FS_SECURITY),y) -ext3-objs += xattr_security.o -endif +ext3-$(CONFIG_EXT3_FS_XATTR) += xattr.o xattr_user.o xattr_trusted.o +ext3-$(CONFIG_EXT3_FS_POSIX_ACL) += acl.o +ext3-$(CONFIG_EXT3_FS_SECURITY) += xattr_security.o
fs/fat/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_FAT_FS) += fat.o -fat-objs := cache.o dir.o file.o inode.o misc.o fatfs_syms.o +fat-y := cache.o dir.o file.o inode.o misc.o fatfs_syms.o
fs/freevxfs/Makefile +1 -1
@@ -4,5 +4,5 @@ obj-$(CONFIG_VXFS_FS) += freevxfs.o -freevxfs-objs := vxfs_bmap.o vxfs_fshead.o vxfs_immed.o vxfs_inode.o \ +freevxfs-y := vxfs_bmap.o vxfs_fshead.o vxfs_immed.o vxfs_inode.o \ vxfs_lookup.o vxfs_olt.o vxfs_subr.o vxfs_super.o
fs/hfs/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_HFS_FS) += hfs.o -hfs-objs := balloc.o bdelete.o bfind.o bins_del.o binsert.o bitmap.o bitops.o \ +hfs-y := balloc.o bdelete.o bfind.o bins_del.o binsert.o bitmap.o bitops.o \ bnode.o brec.o btree.o catalog.o dir.o dir_cap.o dir_dbl.o \ dir_nat.o extent.o file.o file_cap.o file_hdr.o inode.o mdb.o \ part_tbl.o string.o super.o sysdep.o trans.o version.o
fs/hpfs/Makefile +1 -1
@@ -4,5 +4,5 @@ obj-$(CONFIG_HPFS_FS) += hpfs.o -hpfs-objs := alloc.o anode.o buffer.o dentry.o dir.o dnode.o ea.o file.o \ +hpfs-y := alloc.o anode.o buffer.o dentry.o dir.o dnode.o ea.o file.o \ inode.o map.o name.o namei.o super.o
fs/hugetlbfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_HUGETLBFS) += hugetlbfs.o -hugetlbfs-objs := inode.o +hugetlbfs-y := inode.o
fs/intermezzo/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_INTERMEZZO_FS) += intermezzo.o -intermezzo-objs := cache.o dcache.o dir.o ext_attr.o file.o fileset.o \ +intermezzo-y := cache.o dcache.o dir.o ext_attr.o file.o fileset.o \ inode.o journal.o journal_ext2.o journal_ext3.o \ journal_obdfs.o journal_reiserfs.o journal_tmpfs.o journal_xfs.o \ kml_reint.o kml_unpack.o methods.o presto.o psdev.o replicator.o \
fs/isofs/Makefile +3 -4
@@ -4,7 +4,6 @@ obj-$(CONFIG_ISO9660_FS) += isofs.o -isofs-objs-y := namei.o inode.o dir.o util.o rock.o -isofs-objs-$(CONFIG_JOLIET) += joliet.o -isofs-objs-$(CONFIG_ZISOFS) += compress.o -isofs-objs := $(isofs-objs-y) +isofs-y := namei.o inode.o dir.o util.o rock.o +isofs-$(CONFIG_JOLIET) += joliet.o +isofs-$(CONFIG_ZISOFS) += compress.o
fs/jbd/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_JBD) += jbd.o -jbd-objs := transaction.o commit.o recovery.o checkpoint.o revoke.o journal.o +jbd-y := transaction.o commit.o recovery.o checkpoint.o revoke.o journal.o
fs/jffs/Makefile +0 -1
@@ -8,4 +8,3 @@ jffs-y := jffs_fm.o intrep.o inode-v23.o jffs-$(CONFIG_JFFS_PROC_FS) += jffs_proc.o -jffs-objs := $(jffs-y)
fs/jffs2/Makefile +1 -1
@@ -16,5 +16,5 @@ NAND_OBJS-$(CONFIG_JFFS2_FS_NAND) := wbuf.o -jffs2-objs := $(COMPR_OBJS) $(JFFS2_OBJS) $(VERS_OBJS) $(NAND_OBJS-y) \ +jffs2-y := $(COMPR_OBJS) $(JFFS2_OBJS) $(VERS_OBJS) $(NAND_OBJS-y) \ $(LINUX_OBJS-$(VERSION)$(PATCHLEVEL))
fs/jfs/Makefile +2 -4
@@ -4,14 +4,12 @@ obj-$(CONFIG_JFS_FS) += jfs.o -jfs-objs := super.o file.o inode.o namei.o jfs_mount.o jfs_umount.o \ +jfs-y := super.o file.o inode.o namei.o jfs_mount.o jfs_umount.o \ jfs_xtree.o jfs_imap.o jfs_debug.o jfs_dmap.o \ jfs_unicode.o jfs_dtree.o jfs_inode.o \ jfs_extent.o symlink.o jfs_metapage.o \ jfs_logmgr.o jfs_txnmgr.o jfs_uniupr.o resize.o xattr.o -ifeq ($(CONFIG_JFS_POSIX_ACL),y) -jfs-objs += acl.o -endif +jfs-$(CONFIG_JFS_POSIX_ACL) += acl.o EXTRA_CFLAGS += -D_JFS_4K
fs/lockd/Makefile +2 -3
@@ -4,7 +4,6 @@ obj-$(CONFIG_LOCKD) += lockd.o -lockd-objs-y := clntlock.o clntproc.o host.o svc.o svclock.o svcshare.o \ +lockd-y := clntlock.o clntproc.o host.o svc.o svclock.o svcshare.o \ svcproc.o svcsubs.o mon.o xdr.o lockd_syms.o -lockd-objs-$(CONFIG_LOCKD_V4) += xdr4.o svc4proc.o -lockd-objs := $(lockd-objs-y) +lockd-$(CONFIG_LOCKD_V4) += xdr4.o svc4proc.o
fs/minix/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_MINIX_FS) += minix.o -minix-objs := bitmap.o itree_v1.o itree_v2.o namei.o inode.o file.o dir.o +minix-y := bitmap.o itree_v1.o itree_v2.o namei.o inode.o file.o dir.o
fs/msdos/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_MSDOS_FS) += msdos.o -msdos-objs := namei.o msdosfs_syms.o +msdos-y := namei.o msdosfs_syms.o
fs/ncpfs/Makefile +4 -7
@@ -4,14 +4,11 @@ obj-$(CONFIG_NCP_FS) += ncpfs.o -ncpfs-objs := dir.o file.o inode.o ioctl.o mmap.o ncplib_kernel.o sock.o \ +ncpfs-y := dir.o file.o inode.o ioctl.o mmap.o ncplib_kernel.o sock.o \ ncpsign_kernel.o getopt.o -ifeq ($(CONFIG_NCPFS_EXTRAS),y) -ncpfs-objs += symlink.o -endif -ifeq ($(CONFIG_NCPFS_NFS_NS),y) -ncpfs-objs += symlink.o -endif + +ncpfs-$(CONFIG_NCPFS_EXTRAS) += symlink.o +ncpfs-$(CONFIG_NCPFS_NFS_NS) += symlink.o # If you want debugging output, please uncomment the following line # EXTRA_CFLAGS += -DDEBUG_NCP=1
fs/nfs/Makefile +0 -1
@@ -11,4 +11,3 @@ nfs-$(CONFIG_NFS_V4) += nfs4proc.o nfs4xdr.o nfs4state.o nfs4renewd.o \ idmap.o nfs-$(CONFIG_NFS_DIRECTIO) += direct.o -nfs-objs := $(nfs-y)
fs/nfsd/Makefile +0 -1
@@ -8,4 +8,3 @@ export.o auth.o lockd.o nfscache.o nfsxdr.o stats.o nfsd-$(CONFIG_NFSD_V3) += nfs3proc.o nfs3xdr.o nfsd-$(CONFIG_NFSD_V4) += nfs4proc.o nfs4xdr.o nfs4state.o -nfsd-objs := $(nfsd-y)
fs/ntfs/Makefile +1 -1
@@ -2,7 +2,7 @@ obj-$(CONFIG_NTFS_FS) += ntfs.o -ntfs-objs := aops.o attrib.o compress.o debug.o dir.o file.o inode.o mft.o \ +ntfs-y := aops.o attrib.o compress.o debug.o dir.o file.o inode.o mft.o \ mst.o namei.o super.o sysctl.o time.o unistr.o upcase.o EXTRA_CFLAGS = -DNTFS_VERSION=\"2.1.4\"
fs/openpromfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_SUN_OPENPROMFS) += openpromfs.o -openpromfs-objs := inode.o +openpromfs-y := inode.o
fs/proc/Makefile +4 -6
@@ -4,15 +4,13 @@ obj-$(CONFIG_PROC_FS) += proc.o -proc-objs := inode.o root.o base.o generic.o array.o \ +proc-y := inode.o root.o base.o generic.o array.o \ kmsg.o proc_tty.o proc_misc.o kcore.o ifeq ($(CONFIG_MMU),y) -proc-objs += task_mmu.o +proc-y += task_mmu.o else -proc-objs += task_nommu.o +proc-y += task_nommu.o endif -ifeq ($(CONFIG_PROC_DEVICETREE),y) -proc-objs += proc_devtree.o -endif +proc-$(CONFIG_PROC_DEVICETREE) += proc_devtree.o
fs/qnx4/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_QNX4FS_FS) += qnx4.o -qnx4-objs := inode.o dir.o namei.o file.o bitmap.o truncate.o fsync.o +qnx4-y := inode.o dir.o namei.o file.o bitmap.o truncate.o fsync.o
fs/ramfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_RAMFS) += ramfs.o -ramfs-objs := inode.o +ramfs-y := inode.o
fs/reiserfs/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_REISERFS_FS) += reiserfs.o -reiserfs-objs := bitmap.o do_balan.o namei.o inode.o file.o dir.o fix_node.o \ +reiserfs-y := bitmap.o do_balan.o namei.o inode.o file.o dir.o fix_node.o \ super.o prints.o objectid.o lbalance.o ibalance.o stree.o \ hashes.o tail_conversion.o journal.o resize.o \ item_ops.o ioctl.o procfs.o
fs/romfs/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_ROMFS_FS) += romfs.o -romfs-objs := inode.o +romfs-y := inode.o
fs/smbfs/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_SMB_FS) += smbfs.o -smbfs-objs := proc.o dir.o cache.o sock.o inode.o file.o ioctl.o getopt.o \ +smbfs-y := proc.o dir.o cache.o sock.o inode.o file.o ioctl.o getopt.o \ symlink.o smbiod.o request.o # If you want debugging output, you may add these flags to the EXTRA_CFLAGS
fs/sysv/Makefile +1 -1
@@ -4,5 +4,5 @@ obj-$(CONFIG_SYSV_FS) += sysv.o -sysv-objs := ialloc.o balloc.o inode.o itree.o file.o dir.o \ +sysv-y := ialloc.o balloc.o inode.o itree.o file.o dir.o \ namei.o super.o symlink.o
fs/udf/Makefile +1 -1
@@ -4,6 +4,6 @@ obj-$(CONFIG_UDF_FS) += udf.o -udf-objs := balloc.o dir.o file.o ialloc.o inode.o lowlevel.o namei.o \ +udf-y := balloc.o dir.o file.o ialloc.o inode.o lowlevel.o namei.o \ partition.o super.o truncate.o symlink.o fsync.o \ crc.o directory.o misc.o udftime.o unicode.o
fs/ufs/Makefile +1 -1
@@ -4,5 +4,5 @@ obj-$(CONFIG_UFS_FS) += ufs.o -ufs-objs := balloc.o cylinder.o dir.o file.o ialloc.o inode.o \ +ufs-y := balloc.o cylinder.o dir.o file.o ialloc.o inode.o \ namei.o super.o symlink.o truncate.o util.o
fs/umsdos/Makefile +1 -1
@@ -4,7 +4,7 @@ obj-$(CONFIG_UMSDOS) += umsdos.o -umsdos-objs := dir.o inode.o ioctl.o mangle.o namei.o rdir.o emd.o +umsdos-y := dir.o inode.o ioctl.o mangle.o namei.o rdir.o emd.o p: proto *.c >/usr/include/linux/umsdos_fs.p
fs/vfat/Makefile +1 -1
@@ -4,4 +4,4 @@ obj-$(CONFIG_VFAT_FS) += vfat.o -vfat-objs := namei.o vfatfs_syms.o +vfat-y := namei.o vfatfs_syms.o
Quoted 1 line · Brian Gerst
Convert foo-objs to newer-style foo-y.
The paths looks correct.
But do we really want to go that far, and deprecate the -objs syntax?
fs/adfs/Makefile line 7
Quoted 2 lines
fs/adfs/Makefile +1
-1-adfs-objs := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o +adfs-y := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o
The patch contains a lot of changes like the above - and they are only relevant if we deprecate the -objs syntax.
Opinions anyone?
Sam
Quoted 16 lines · Sam Ravnborg
Quoted 1 line · Brian Gerst
Convert foo-objs to newer-style foo-y.
The paths looks correct.
But do we really want to go that far, and deprecate the -objs syntax?fs/adfs/Makefile line 7
Quoted 2 lines
fs/adfs/Makefile +1
-1-adfs-objs := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o +adfs-y := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.oThe patch contains a lot of changes like the above - and they are only relevant if we deprecate the -objs syntax.
Quoted 4 lines
Opinions anyone?
Sam
Why have two methods of doing the same thing? foo-y is clearly the preferred method because it is easy to work with conditionals.
--
Brian Gerst
Quoted 17 lines · Brian Gerst
Quoted 9 lines · Sam Ravnborg
Quoted 1 line · Brian Gerst
Convert foo-objs to newer-style foo-y.
The paths looks correct.
But do we really want to go that far, and deprecate the -objs syntax?Quoted 6 lines
fs/adfs/Makefile line 7
Quoted 2 lines
fs/adfs/Makefile +1
-1-adfs-objs := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o +adfs-y := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.oThe patch contains a lot of changes like the above - and they are only relevant if we deprecate the -objs syntax.
Quoted 2 lines
Why have two methods of doing the same thing? foo-y is clearly the preferred method because it is easy to work with conditionals.
I tend to agree, though I don't feel strongly about it. Having two different methods of expressing the same thing will always be confusing.
OTOH, 2.4 does only support "-objs", so people may get confused anyway, and annoyed about having two different Makefiles to maintain in 2.4 and 2.5. Then again, the Makefiles between 2.4 and 2.5 have other differences already, and since they're small and rarely changing, maintaining two sets isn't so much of a pain.
So I would suggest:
o Change "-objs" to "-y" in 2.5
o Warn / error about the deprecated use in 2.5 when "-objs" is encountered.
o Possibly add "-y" support to 2.4 (it's a pretty trivial change)
Ok?
--Kai
Quoted 1 line · Kai Germaschewski
o Possibly add "-y" support to 2.4 (it's a pretty trivial change)
That's the worst thing you could do for those of us maintaining 2.4/2.5 compatibility in drivers etc.
Having to check "oh I'm in 2.4, let's see if I'm in 2.4.23 or $VENDOR 2.4.blah because then these random 2.5-like changes occurred" sucks like h*ll.
It's much better to have 2.4.$x be like 2.4.$y than 2.5.$z.
Quoted 8 lines · On Tue, 20 May 2003 [email protected] wrote:
Quoted 1 line · Kai Germaschewski
o Possibly add "-y" support to 2.4 (it's a pretty trivial change)
That's the worst thing you could do for those of us maintaining 2.4/2.5 compatibility in drivers etc.
Having to check "oh I'm in 2.4, let's see if I'm in 2.4.23 or $VENDOR 2.4.blah because then these random 2.5-like changes occurred" sucks like h*ll.
It'd be an additional feature, i.e. if it causes trouble for the code you maintain, don't use it.
People who want a Makefile which works in all 2.4 + vendor then would choose to stay with -objs, whereas people who prefer do have 2.4.latest and 2.5 in sync could use -y, like, I'd guess, USB.
--Kai
Quoted 13 lines · Kai Germaschewski
Quoted 8 lines · On Tue, 20 May 2003 [email protected] wrote:
Quoted 1 line · Kai Germaschewski
o Possibly add "-y" support to 2.4 (it's a pretty trivial change)
That's the worst thing you could do for those of us maintaining 2.4/2.5 compatibility in drivers etc.
Having to check "oh I'm in 2.4, let's see if I'm in 2.4.23 or $VENDOR 2.4.blah because then these random 2.5-like changes occurred" sucks like h*ll.
Quoted 5 lines
It'd be an additional feature, i.e. if it causes trouble for the code you maintain, don't use it.
People who want a
Makefilewhich works in all 2.4 + vendor then would choose to stay with -objs, whereas people who prefer do have 2.4.latest and 2.5 in sync could use -y, like, I'd guess, USB.--Kai
Easiest way to maintain 2.4 compatability is to add:
foo-objs := $(foo-y)
--
Brian Gerst
Hi,
Quoted 10 lines · Kai Germaschewski
Quoted 7 lines
Quoted 4 lines
fs/adfs/Makefile line 7
Quoted 2 lines
fs/adfs/Makefile +1
-1-adfs-objs := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.o +adfs-y := dir.o dir_f.o dir_fplus.o file.o inode.o map.o super.oWhy have two methods of doing the same thing? foo-y is clearly the preferred method because it is easy to work with conditionals.
I tend to agree, though I don't feel strongly about it. Having two different methods of expressing the same thing will always be confusing.
Has the new syntax any advantage, e.g. does it make sense to have adfs-m? Otherwise the -obj syntax looks IMO more readable and it directly says that this is a composite object.
bye, Roman
Quoted 3 lines · Roman Zippel
Has the new syntax any advantage, e.g. does it make sense to have adfs-m? Otherwise the -obj syntax looks IMO more readable and it directly says that this is a composite object.
Let me quote from Brian's patch:
diff -urN linux-2.5.69-bk/fs/ext3/Makefile linux/fs/ext3/Makefile
--- linux-2.5.69-bk/fs/ext3/Makefile 2003-05-17 23:55:01.000000000
-0400
+++ linux/fs/ext3/Makefile 2003-05-18 15:59:09.000000000 -0400
@@ -4,17 +4,9 @@
obj-$(CONFIG_EXT3_FS) += ext3.o
-ext3-objs := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o
inode.o \
+ext3-y := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o
inode.o \
ioctl.o namei.o super.o symlink.o hash.o
-ifeq ($(CONFIG_EXT3_FS_XATTR),y)
-ext3-objs += xattr.o xattr_user.o xattr_trusted.o
-endif
-
-ifeq ($(CONFIG_EXT3_FS_POSIX_ACL),y)
-ext3-objs += acl.o
-endif
-
-ifeq ($(CONFIG_EXT3_FS_SECURITY),y)
-ext3-objs += xattr_security.o
-endif
+ext3-$(CONFIG_EXT3_FS_XATTR) += xattr.o xattr_user.o xattr_trusted.o +ext3-$(CONFIG_EXT3_FS_POSIX_ACL) += acl.o +ext3-$(CONFIG_EXT3_FS_SECURITY) += xattr_security.o
which I think clearly shows the benefits. I agree that "-objs" is more intuitive than "-y", otoh it also has potential for confusion with "obj-$(CONFIG_...)" (as kinda proven by your "-obj" quote above ;).
Basically, I think having "-y" is essential for uses like the one above, the only question is whether to switch everything to "-y" or use "-y" for multipart modules with optional parts and "-objs" for multipart modules with a static list of components. For my opinion on that, see earlier this thread...
--Kai
Quoted 6 lines · Kai Germaschewski
OTOH, 2.4 does only support "-objs", so people may get confused anyway, and annoyed about having two different Makefiles to maintain in 2.4 and 2.5. Then again, the Makefiles between 2.4 and 2.5 have other differences already, and since they're small and rarely changing, maintaining two sets isn't so much of a pain.
When we shifted syntax for the kernel configuration people di not complain about compatibility with 2.4. Why not? Because it is trivial to maintain two simple files with different namings:
Config.in for 2.4Kconfig for 2.5
For the Makefiles we have seen a slow shift in syntax, with more and more being deprecated. So it is becoming a bit annoying to maintain 2.4 and 2.5 compatibility in the same file.
Idea:
In 2.5 introduce a new default filename for kbuild Makefiles:
Kmakefile
Then a driver would have:
2.4 Config.help, Config.in and Makefile
2.5 Kconfig and Kmakefile
This would also allow us to do some simplification of the top-level Makefile by moving the last steps of building vmlinux out to a seperate Kmakefile - but this is added bonus, the real driver for this change would be less hassle for 2.4/2.5 compatbility.
Comments?
Sam
The patch is trivial.
===== scripts/Makefile.build 1.36 vs edited =====
scripts/Makefile.build +1 -1
@@ -11,7 +11,7 @@ include .config endif -include $(obj)/Makefile +include $(if $(wildcard $(obj)/Kmakefile),$(obj)/Kmakefile,$(obj)/Makefile) include scripts/Makefile.lib