CC := g++
CFLAGS := -Wall -g -std=c++23 -I./include/
TARGET := server

LIBPATHS := 
LIBS := -lcurl

SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %.cpp, %.o, $(SRCS))

all: $(TARGET)
$(TARGET): $(OBJS)
	$(CC) $(LIBPATHS) $(LIBS) -o $@ $^
%.o: %.cpp
	$(CC) $(CFLAGS) -lpthread -c $<
clean:
	rm -rf $(TARGET) *.o
all: run
run: $(TARGET)
	./$(TARGET)
pch: include/crow_all.h.gch
include/crow_all.h.gch: include/crow_all.h
	$(CC) $(CFLAGS) -lpthread -c $< -o $@