140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#Makefile for mkyaffs
240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#
340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# NB this is not yet suitable for putting into the kernel tree.
440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# YAFFS: Yet another FFS. A NAND-flash specific file system. 
540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#
640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# Copyright (C) 2002 Aleph One Ltd.
740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#   for Toby Churchill Ltd and Brightstar Engineering
840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#
940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# Created by Charles Manning <charles@aleph1.co.uk>
1040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#
1140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# This program is free software; you can redistribute it and/or modify
1240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# it under the terms of the GNU General Public License version 2 as
1340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project# published by the Free Software Foundation.
1440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
1540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project## Change or override  KERNELDIR to your kernel
1640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
1740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#KERNELDIR = /usr/src/kernel-headers-2.4.18
1840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
1940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCFLAGS =   -I/usr/include -I.. -O2 -Wall -DCONFIG_YAFFS_UTIL
2040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCFLAGS+=   -Wshadow -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Wmissing-declarations
2140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCFLAGS+=   -Wmissing-prototypes -Wredundant-decls -Wnested-externs -Winline
2240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
2340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project## Change if you are using a cross-compiler
2440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMAKETOOLS = 
2540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
2640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCC=$(MAKETOOLS)gcc
2740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
2840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCOMMONLINKS = yaffs_ecc.c
2940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectCOMMONOBJS = $(COMMONLINKS:.c=.o)
3040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
3140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMKYAFFSSOURCES = mkyaffsimage.c
3240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMKYAFFSIMAGEOBJS = $(MKYAFFSSOURCES:.c=.o)
3340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
3440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMKYAFFS2SOURCES = mkyaffs2image.c
3540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMKYAFFS2LINKS = yaffs_packedtags2.c yaffs_tagsvalidity.c
3640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source ProjectMKYAFFS2IMAGEOBJS = $(MKYAFFS2SOURCES:.c=.o) $(MKYAFFS2LINKS:.c=.o)
3740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
3840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectall: mkyaffsimage mkyaffs2image
3940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
4040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project$(COMMONLINKS) $(MKYAFFSLINKS) $(MKYAFFS2LINKS):
4140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project	ln -s ../$@ $@
4240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
4340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project$(COMMONOBJS) $(MKYAFFSIMAGEOBJS) $(MKYAFFS2IMAGEOBJS) : %.o: %.c
4440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project	$(CC) -c $(CFLAGS) $< -o $@
4540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
4640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectmkyaffsimage: $(COMMONOBJS) $(MKYAFFSIMAGEOBJS)
4740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project	$(CC) -o $@ $(COMMONOBJS) $(MKYAFFSIMAGEOBJS)
4840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
4940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectmkyaffs2image: $(COMMONOBJS) $(MKYAFFS2IMAGEOBJS)
5040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project	$(CC) -o $@ $(COMMONOBJS) $(MKYAFFS2IMAGEOBJS)
5140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
5240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project
5340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectclean:
5440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project	rm -f $(COMMONOBJS) $(MKYAFFSIMAGEOBJS) $(MKYAFFS2IMAGEOBJS) $(COMMONLINKS) $(MKYAFFSLINKS) $(MKYAFFS2LINKS) mkyaffsimage mkyaffs2image core
55