TARGET_CLIENT=client TARGET_SERVER=server CFLAGS=-g -O0 -Iinclude LDFLAGS= LIBS=-lws2_32 CC=gcc COBJDIR=obj/client SOBJDIR=obj/server CSRCDIR=src/client SSRCDIR=src/server COMOBJDIR=obj/com COMSRCDIR=src/com COM_SRCS=$(wildcard $(COMSRCDIR)/*.c) CLIENT_SRCS=$(wildcard $(CSRCDIR)/*.c) SERVER_SRCS=$(wildcard $(SSRCDIR)/*.c) COM_OBJS=$(COM_SRCS:$(COMSRCDIR)/%.c=$(COMOBJDIR)/%.o) CLIENT_OBJS=$(CLIENT_SRCS:$(CSRCDIR)/%.c=$(COBJDIR)/%.o) SERVER_OBJS=$(SERVER_SRCS:$(SSRCDIR)/%.c=$(SOBJDIR)/%.o) all: $(TARGET_CLIENT) $(TARGET_SERVER) clean: rm -f */*/*.o $(TARGET_CLIENT) $(TARGET_SERVER) rm -f */*/*~ $(TARGET_CLIENT).exe $(TARGET_SERVER).exe $(TARGET_CLIENT): $(COM_OBJS) $(CLIENT_OBJS) $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) $(TARGET_SERVER): $(COM_OBJS) $(SERVER_OBJS) $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) $(COMOBJDIR)/%.o: $(COMSRCDIR)/%.c $(CC) $(CFLAGS) -c -o $@ $< $(COBJDIR)/%.o: $(CSRCDIR)/%.c $(CC) $(CFLAGS) -c -o $@ $< $(SOBJDIR)/%.o: $(SSRCDIR)/%.c $(CC) $(CFLAGS) -c -o $@ $<