# Author: Josh Holtrop # DornerWorks screensaver # set this to compile in "debug" mode #DEBUG := 1 WINCHECK := $(shell which msys-1.0.dll >/dev/null 2>&1; if [ $$? -eq 0 ]; then echo MSYS; fi) ifeq ($(strip $(WINCHECK)),) WINDOWS := 0 else WINDOWS := 1 endif export CPPFLAGS += -I"$(shell pwd)" OBJS = dwscr.o wfobj/WFObj.o LoadFile/LoadFile.o ss/ss.a TARGET = dwscr export CXXFLAGS := -O2 -Wall export CPPFLAGS ifdef DEBUG CPPFLAGS += -DDEBUG CPPFLAGS += -g endif ifeq ($(WINDOWS),1) LDFLAGS += -lopengl32 -lglu32 -lmingw32 TARGET := $(TARGET).exe SSNAME := dwscr.scr INSTALLDIR := C:/WINDOWS OBJS += displayinfo-win32.o else LDFLAGS += -lGL -lGLU OBJS += displayinfo.o endif LDFLAGS += $(shell sdl-config --libs) export CPPFLAGS += $(shell sdl-config --cflags) ifdef WITHOUT_ODE CPPFLAGS += -DWITHOUT_ODE else CPPFLAGS += $(shell ode-config --cflags) LDFLAGS += $(shell ode-config --libs) endif all: $(TARGET) $(TARGET): $(OBJS) $(CXX) -o $@ $(OBJS) $(LDFLAGS) .PHONY: wfobj/WFObj.o wfobj/WFObj.o: $(MAKE) -C wfobj .PHONY: LoadFile/LoadFile.o LoadFile/LoadFile.o: $(MAKE) -C LoadFile .PHONY: ss/ss.a ss/ss.a: $(MAKE) -C ss ifeq ($(WINDOWS),1) .PHONY: install install: cp $(TARGET) $(INSTALLDIR)/$(SSNAME) endif .PHONY: clean clean: $(MAKE) -C wfobj clean $(MAKE) -C LoadFile clean $(MAKE) -C ss clean -$(RM) -f *~ *.o $(TARGET)