CC     = gcc
CFLAGS = -Wall -Wextra -g -std=c99 -ffreestanding

J2ME_JARS = lib/cldcapi10.jar:lib/midpapi20.jar

.PHONY: all clean run_parser run_exec

all: test_parser exec_code

test_parser: test_parser.c classfile.c classfile.h
	$(CC) $(CFLAGS) -o test_parser test_parser.c classfile.c

exec_code: exec_code.c classfile.c classfile.h helpers.h helpers.c
	$(CC) $(CFLAGS) -o exec_code exec_code.c classfile.c helpers.c -lSDL2 -lSDL2_ttf -lm

Hello.class: Hello.java
	javac -classpath $(J2ME_JARS) Hello.java

run_parser: test_parser Hello.class
	./test_parser Hello.class

run_exec: exec_code Hello.class
	export LIBGL_ALWAYS_SOFTWARE=1 && ./exec_code Hello.class

clean:
	rm -f test_parser exec_code *.class