CC = gcc

CFLAGS= -I/usr/include -Wall -Wno-missing-braces -O3 -ffast-math
LDFLAGS = -L/usr/lib/arm-linux-gnueabihf/
FFLAGS =  -O2 -Wall -Wno-conversion
LIBS = -lfftw3f -lm -lasound

# Default rules
%.o: %.c $(DEPS)
	${CC} ${CFLAGS} -c $<

all:    wsprd wsprddum fskmod dsamp

DEPS =  wsprsim_utils.h wsprd_utils.h fano.h jelinek.h nhash.h
OBJS1 = wsprd.o wsprsim_utils.o wsprd_utils.o tab.o fano.o jelinek.o nhash.o
wsprd: $(OBJS1)
	$(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) $(LIBS)

OBJS2 = wsprsim.o wsprsim_utils.o wsprd_utils.o tab.o fano.o nhash.o 
wsprddum: $(OBJS2) 
	$(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) $(LIBS)

OBJS3 = fskmod.o 
fskmod: $(OBJS3) 
	$(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) $(LIBS)

OBJS4 = dsamp.o 
dsamp: $(OBJS4) 
	$(CC) -o $@ $^ $(CFLAGS) $(LDFLAGS) $(LIBS)

clean:
	\rm *.o wsprdum fskmod dsamp
