Write object headers with stored file extents
[yaffs2.git] / Makefile
index d92630b..a346458 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,12 @@
-# Main Makefile for YAFFS
+# Main Makefile for out-of-tree yaffs2 .ko building
 #
+# You can make two flavours of the .ko
+#  make YAFFS_CURRENT=1  : makes yaffs2.ko using the current version code
+#  make                  : makes yaffs2multi.ko using the multi-version code
 #
 # YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
 #
-# Copyright (C) 2002-2007 Aleph One Ltd.
+# Copyright (C) 2002-2010 Aleph One Ltd.
 #   for Toby Churchill Ltd and Brightstar Engineering
 #
 # Created by Charles Manning <charles@aleph1.co.uk>
 # it under the terms of the GNU General Public License version 2 as
 # published by the Free Software Foundation.
 
+ifdef YAFFS_CURRENT
+       YAFFS_O := yaffs2.o
+       EXTRA_CFLAGS += -DYAFFS_CURRENT
+else
+       YAFFS_O := yaffs2multi.o
+endif
 
 ifneq ($(KERNELRELEASE),)
        EXTRA_CFLAGS += -DYAFFS_OUT_OF_TREE
 
-       obj-m := yaffs2.o
+       obj-m := $(YAFFS_O)
 
-       yaffs2-objs := yaffs_mtdif.o yaffs_mtdif2.o
-       yaffs2-objs += yaffs_mtdif1.o yaffs_packedtags1.o
-       yaffs2-objs += yaffs_ecc.o yaffs_fs.o yaffs_guts.o
-       yaffs2-objs += yaffs_packedtags2.o yaffs_qsort.o
-       yaffs2-objs += yaffs_tagscompat.o yaffs_tagsvalidity.o
+       yaffs2-objs := yaffs_mtdif_single.o
+       yaffs2-objs += yaffs_packedtags1.o
+       yaffs2-objs += yaffs_ecc.o yaffs_vfs_single.o yaffs_guts.o
+       yaffs2-objs += yaffs_packedtags2.o
+       yaffs2-objs += yaffs_tagscompat.o
+       yaffs2-objs += yaffs_tagsmarshall.o
        yaffs2-objs += yaffs_checkptrw.o yaffs_nand.o
+       yaffs2-objs += yaffs_checkptrw.o yaffs_nand.o yaffs_nameval.o
+       yaffs2-objs += yaffs_allocator.o yaffs_bitmap.o yaffs_attribs.o
+       yaffs2-objs += yaffs_yaffs1.o
+       yaffs2-objs += yaffs_yaffs2.o
+       yaffs2-objs += yaffs_verify.o
+       yaffs2-objs += yaffs_summary.o
+
+       yaffs2multi-objs := yaffs_mtdif_multi.o
+       yaffs2multi-objs += yaffs_packedtags1.o
+       yaffs2multi-objs += yaffs_ecc.o yaffs_vfs_multi.o yaffs_guts.o
+       yaffs2multi-objs += yaffs_packedtags2.o
+       yaffs2multi-objs += yaffs_tagscompat.o
+       yaffs2multi-objs += yaffs_tagsmarshall.o
+       yaffs2multi-objs += yaffs_checkptrw.o yaffs_nand.o
+       yaffs2multi-objs += yaffs_checkptrw.o yaffs_nand.o yaffs_nameval.o
+       yaffs2multi-objs += yaffs_allocator.o yaffs_bitmap.o yaffs_attribs.o
+       yaffs2multi-objs += yaffs_yaffs1.o
+       yaffs2multi-objs += yaffs_yaffs2.o
+       yaffs2multi-objs += yaffs_verify.o
+       yaffs2multi-objs += yaffs_summary.o
 
 else
        KERNELDIR ?= /lib/modules/$(shell uname -r)/build