#
# Makefile for Betascan - gt68xx Backend
# 2009 - 2016 Michal Zukowski
#

ROOTPATH=../../../../

include $(ROOTPATH)Makefile.config.default
ifeq ($(wildcard $(ROOTPATH)Makefile.config), $(ROOTPATH)Makefile.config)
	include $(ROOTPATH)Makefile.config
endif

CC  = ppc-morphos-gcc
CFLAGS += -Wall -noixemul -O3 -I../Include
EXE = gt68xx.device
LIBS = -ldebug  -L../SaneUtilSrc -lsaneutil -L../SaneiSrc -lsanei
DEFINES = -DBACKEND_NAME=\"gt68xx\" -DDEVNAME=\"gt68xx.device\" -DV_MAJOR=84 -DV_MINOR=2
DEFINES += -D__AMIGADATE__=\"$(shell date "+%d.%m.%Y")\"
ifeq ($(MORPHOS_BETABUILD),1)
DEFINES += -DDEBUG
endif

TEMPLATES_DIR = ../SaneTemplates


all: ../SaneUtilSrc/libsaneutil.a obj $(EXE)
	make -C ../SaneUtilSrc/
	make -C ../SaneiSrc/

OBJS	 = obj/gt68xx.o  obj/Sanegt68xx.o
TEMPLATE_OBJS = obj/DefaultParameters.o  obj/DefaultSaneGetParameters.o  obj/DefaultSaneStart.o \
				obj/DefaultSaneClose.o obj/DefaultSaneStop.o \
				obj/DefaultSaneGetDevices.o  obj/DefaultSaneRead.o obj/Instrument.o \
# obj/DefaultSaneOpen.o

$(OBJS): obj

$(EXE): obj ../SaneUtilSrc/libsaneutil.a  ../SaneiSrc/libsanei.a  $(OBJS)  $(TEMPLATE_OBJS)
	$(CC) -o $@   $(TEMPLATE_OBJS) $(OBJS)  $(LIBS)   -nostartfiles   -noixemul

obj:
	mkdir -p obj

obj/Instrument.o: $(TEMPLATES_DIR)/Instrument.c
	$(CC) -c  $(CFLAGS) $(DEFINES)   -o $@ $<

obj/DefaultParameters.o: $(TEMPLATES_DIR)/DefaultParameters.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/DefaultSaneGetParameters.o: $(TEMPLATES_DIR)/DefaultSaneGetParameters.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/DefaultSaneStart.o: $(TEMPLATES_DIR)/DefaultSaneStart.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/DefaultSaneClose.o: $(TEMPLATES_DIR)/DefaultSaneClose.c
	$(CC) -c  $(CFLAGS) $(DEFINES)   -o $@ $<

obj/DefaultSaneOpen.o: $(TEMPLATES_DIR)/DefaultSaneOpen.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/DefaultSaneStop.o: $(TEMPLATES_DIR)/DefaultSaneStop.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/DefaultSaneGetDevices.o: $(TEMPLATES_DIR)/DefaultSaneGetDevices.c
	$(CC) -c  $(CFLAGS) $(DEFINES)    -o $@ $<

obj/DefaultSaneRead.o: $(TEMPLATES_DIR)/DefaultSaneRead.c
	$(CC) -c  $(CFLAGS) $(DEFINES)   -o $@ $<

obj/gt68xx.o: gt68xx.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<

obj/Sanegt68xx.o: Sanegt68xx.c
	$(CC) -c  $(CFLAGS) $(DEFINES)  -o $@ $<



clean:
	rm -f obj/*.o
	
../SaneUtilSrc/libsaneutil.a:
	(cd ../SaneUtilSrc && $(MAKE))

../SaneiSrc/libsanei.a:
	(cd ../SaneiSrc && $(MAKE))	

.PHONY : clean

source:


install:  $(EXE)
	mkdir -p  /mossys/Devs/Scanners
	cp $(EXE) /mossys/Devs/Scanners
	

install-iso:  $(EXE)
	mkdir -p  $(ISOPATH)MorphOS/Devs/Scanners
	cp $(EXE) $(ISOPATH)MorphOS/Devs/Scanners

