MAIN=galgenerator
OBJ_DIR=bin
SRC_DIR=src
C_SRC=galgenerator.c random_coord.c galaxy_types.c
OBJS=$(patsubst %.c,%.o,$(C_SRC))

CC?=gcc
LDFLAGS+= -lm  -lOpenCL
CFLAGS+= -std=gnu99 -Wall -g -O0

vpath %.c $(SRC_DIR)
vpath %.h $(SRC_DIR)
vpath %.o $(BIN_DIR)

all:	$(OBJS)
	$(CC) $(CFLAGS) -o $(MAIN) $(foreach obj, $^, $(OBJ_DIR)/$(obj)) $(LDFLAGS)

%.o:	%.c
	$(CC) $(CFLAGS) -c -o $(OBJ_DIR)/$(@F) $(SRC_DIR)/$(<F)


.PHONY: clean mrproper

clean:  
	rm -f $(OBJ_DIR)/*.o
	rm -f $(SRC_DIR)/.*.swo $(SRC_DIR)/.*.swn $(SRC_DIR)/.*.swp

	mrproper: clean
	rm $(MAIN)
