CXX      = g++
CXXFLAGS = -O2 -Wall -Wextra -std=c++17
INCLUDES = -I. -I/boot/system/develop/headers/private/netservices2
LIBS     = -lnetservices2 -lbnetapi -lnetwork -lbe -lz

all: WeatherApp test_fetch

WeatherApp: main.o weather.o json.o
	$(CXX) $(CXXFLAGS) -o $@ main.o weather.o json.o $(LIBS)

test_fetch: test_fetch.o weather.o json.o
	$(CXX) $(CXXFLAGS) -o $@ test_fetch.o weather.o json.o $(LIBS)

%.o: %.cpp $(wildcard *.h)
	$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@

clean:
	rm -f *.o WeatherApp test_fetch