CC = g++

all: app Saver clean

clean:
	rm -rf *.o

app: Saver
	${CC} src/app/UserInput/UserInput.cpp -o UserInput.o -c
	${CC} src/app/SaverLib.cpp -o SaverLib.o -c
	${CC} src/app/main.cpp -o main.o -c
	${CC} src/app/SaveThread/SaveThread.cpp -o SaveThread.o -c
	${CC} main.o SaveThread.o SaverLib.o UserInput.o -o app -ldl

Saver:
	${CC} src/Saver/Saver.cpp -o Saver.o -fPIC -c
	${CC} src/Saver/SaverBuilder.cpp -o SaverBuilder.o -fPIC -c
	${CC} -shared Saver.o SaverBuilder.o -o libsaver.so
