include ../../Config.mk

CFLAGS += -I../include -O2 -Wall -Wstrict-prototypes -Wshadow
CPPFLAGS=$(FW_INCLUDES) -I$(FW_TOPDIR)/$(LINUX_KERNEL_DIR)/include

ifeq ($(COMPILE_FOR_HOST), 1)
	CROSS= 
	ZLIB = -lz
else
	ZLIB = $(DESTDIR)/lib/libz.a
endif

TARGETS = eraseall # flash_otp_dump flash_otp_info flash_otp_lock flash_otp_write
TARGETS_HOST = mkfs.jffs2

ifeq ($(PP_PRODUCTION), 1)
TARGETS += lock unlock 
TARGETS_HOST +=
else
ifneq ($(PP_BUILD_TYPE), final)
TARGETS += lock unlock 
endif
endif

# available if needed:
#TARGETS = ftl_format erase eraseall  nanddump doc_loadbios \
#	   ftl_check mkfs.jffs2 lock unlock \
#	   einfo mtd_debug fcp nandwrite jffs2dump \
#	   jffs2reader nftldump nftl_format mkfs.jffs

SYMLINKS = compr_rtime.c

all: $(TARGETS)
all_host: $(TARGETS_HOST)

install: all
ifneq "$(strip $(TARGETS))" ""
	$(INSTALL) -m 755 $(TARGETS) $(DESTDIR)/sbin
endif

install_host: all_host
ifneq "$(strip $(TARGETS_HOST))" ""
	cp -f $(TARGETS_HOST) $(FW_TOPDIR)/mkfirmware/
endif

clean:
	rm -f *.o $(TARGETS) $(SYMLINKS)

mkfs.jffs2.o eraseall.o crc32.o: crc32.h

$(SYMLINKS):
	ln -sf ../fs/jffs2/$@ $@

mkfs.jffs2: crc32.o compr_rtime.o mkfs.jffs2.o compr_zlib.o
	$(CC) $(LDFLAGS) -o $@ $^ $(ZLIB)

eraseall: crc32.o eraseall.o
	$(CC) $(LDFLAGS) -o $@ $^

jffs2reader: jffs2reader.o
	$(CC) $(LDFLAGS) -o $@ $^ -lz 

jffs2dump: jffs2dump.o crc32.o
	$(CC) $(LDFLAGS) -o $@ $^

flash_otp_dump: flash_otp_dump.o
	$(CC) $(LDFLAGS) -o $@ $^

flash_otp_info: flash_otp_info.o
	$(CC) $(LDFLAGS) -o $@ $^

flash_otp_lock: flash_otp_lock.o
	$(CC) $(LDFLAGS) -o $@ $^

flash_otp_write: flash_otp_write.o
	$(CC) $(LDFLAGS) -o $@ $^
