PROG=	ldis
SRCS+=	ldis.c
SRCS+=	main.c
MAN=	ldis.1
WARNS=	5

CPPFLAGS+=	-g -O0
LDFLAGS+=	-g -O0
CPPFLAGS+=	-DLIB_NAMESPACE="ldis_"

BINDIR=	../bin

${PROG}: ldis.o main.o
	${CC} ${LDFLAGS} ldis.o main.o -o ${PROG}

ldis.o: ldis.c
	${CC} ${CFLAGS} ${CPPFLAGS} -c ldis.c

main.o: main.c
	${CC} ${CFLAGS} ${CPPFLAGS} -c main.c

clean:
	rm -f *.o *.core ${PROG}

t: ${PROG}
	@echo "1. basics - hello"
	./${PROG} ${BINDIR}/hello.out > 1.lass
	diff ${BINDIR}/1.expected 1.lass
	rm -f 1.lass
	@echo "2. basics - add"
	./${PROG} ${BINDIR}/add.out > 2.lass
	diff ${BINDIR}/2.expected 2.lass
	rm -f 2.lass
	@echo "3. basics - fib"
	./${PROG} ${BINDIR}/fib.out > 3.lass
	diff ${BINDIR}/3.expected 3.lass
	rm -f 3.lass
	@echo "4. multiple functions"
	./${PROG} ${BINDIR}/f3.out > 4.lass
	diff ${BINDIR}/4.expected 4.lass
	rm -f 4.lass
	@echo "5. multiple functions, verbose"
	./${PROG} -v ${BINDIR}/f3.out > 5.lass
	diff ${BINDIR}/5.expected 5.lass
	rm -f 5.lass
	@echo "6. get version"
	./${PROG} -V > 6.lass
	diff ${BINDIR}/6.expected 6.lass
	rm -f 6.lass
	@echo "7. floats, large program"
	./${PROG} ${BINDIR}/jacobi-sor.out > 7.lass
	diff ${BINDIR}/7.expected 7.lass
	rm -f 7.lass
	@echo "8. instructions for large program"
	./${PROG} -i ${BINDIR}/jacobi-sor.out > 8.lass
	diff ${BINDIR}/8.expected 8.lass
	rm -f 8.lass
#	@echo "9. checking out assembler instructions"
#	./test-lass.sh
	@echo "10. basics - hello 5.5 binary"
	./${PROG} ${BINDIR}/hello55.out > 10.lass
	diff ${BINDIR}/10.expected 10.lass
	rm -f 10.lass
	@echo "11. basics - hello 5.5 binary"
	./${PROG} -v ${BINDIR}/hello55.out > 11.lass
	diff ${BINDIR}/11.expected 11.lass
	rm -f 11.lass
	@echo "12. basics - add 5.5 binary"
	./${PROG} ${BINDIR}/add55.out > 12.lass
	diff ${BINDIR}/12.expected 12.lass
	rm -f 12.lass
	@echo "13. basics - add 5.5 binary"
	./${PROG} ${BINDIR}/fib55.out > 13.lass
	diff ${BINDIR}/13.expected 13.lass
	rm -f 13.lass
	@echo "14. basics - f3 5.5 binary"
	./${PROG} ${BINDIR}/f355.out > 14.lass
	diff ${BINDIR}/14.expected 14.lass
	rm -f 14.lass
	@echo "15. basics - jacobi-sor 5.5 binary"
	./${PROG} ${BINDIR}/jacobi-sor55.out > 15.lass
	diff ${BINDIR}/15.expected 15.lass
	rm -f 15.lass
	@echo "16. basics - jacobi-sor 5.5 binary, no debug"
	./${PROG} ${BINDIR}/jacobi-sor55.out > 16.lass
	diff ${BINDIR}/16.expected 16.lass
	rm -f 16.lass
