#
#	Honeywell HSM NG2D Plug-in Makefile
# Copyright (c) Honeywell International Inc 2004-2009
#

#
# Predefined variables, !Do not modify!
# This section later may be removed
#

# Prefix
PREFIX = /opt/PluginToolbin

# Build Flags
CFLAGS = -mcpu=arm926ej-s -Wall -Werror -Wundef -fomit-frame-pointer -mfloat-abi=soft -mno-apcs-frame -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -I${PREFIX}/arm-matrix-eabi/include
LDFLAGS = -L${PREFIX}/arm-matrix-eabi/lib -L${PREFIX}/lib/gcc/arm-matrix-eabi/4.3.2

# Build Tools
AS = $(PREFIX)/bin/arm-matrix-eabi-as
CC = ${PREFIX}/bin/arm-matrix-eabi-gcc
LD = ${PREFIX}/bin/arm-matrix-eabi-ld
STRIP = ${PREFIX}/bin/arm-matrix-eabi-strip
APPENDMOC = ${PREFIX}/Tools/AppendToMocf
COMPATPODFILE = ${PREFIX}/Tools/AppCompatProd.txt
COMPATPODFILERF = ${PREFIX}/Tools/AppCompatProdRF.txt


#
# User defined fields
# Modify 'BINNAME' to define the name of the plug-in output
# Modify 'OBJS' to define list of object file names
#

#
BINNAME = Decode
OBJS = decode_plugin_sample.o



# Tatgets
all: moc

.PHONY: moc

moc:$(BINNAME).moc $(BINNAME)_RF.moc

$(BINNAME).moc: $(BINNAME).plugin $(BINNAME)Conf
	$(APPENDMOC) -m $@ -t CompatProd -f $(COMPATPODFILE) -d
	$(APPENDMOC) -m $@ -t user -f $(BINNAME).plugin
	$(APPENDMOC) -m $@ -t user -f $(BINNAME)Conf


$(BINNAME)_RF.moc: $(BINNAME).plugin $(BINNAME)Conf
	$(APPENDMOC) -m $@ -t CompatProd -f $(COMPATPODFILERF) -d
	$(APPENDMOC) -m $@ -t user -f $(BINNAME).plugin
	$(APPENDMOC) -m $@ -t user -f $(BINNAME)Conf

$(OBJS): %.o: %.c


$(BINNAME).plugin: $(OBJS)
	$(LD) -marmelf -r $(LDFLAGS) -o foo.bin $(OBJS) -lc -lmatrix -lgcc
	$(STRIP) -g -o $@ foo.bin
	rm -rf foo.bin

clean:
	-rm -f *.o *~ $(BINNAME).plugin *.moc




