cleaned up Makefile a lot

This commit is contained in:
Josh Holtrop 2010-12-19 00:11:40 -05:00
parent 4cd5a61bc4
commit 96f62c237b
2 changed files with 19 additions and 34 deletions

View File

@ -1,6 +1,6 @@
glob:*.dep
glob:*.o
^ag_lua.c$
^ag_lua.cc$
^anaglym$
^sdl_keymap.cc$
glob:dist

View File

@ -7,14 +7,17 @@ else
PLATFORM := PLATFORM_WINDOWS
endif
TARGET := anaglym
SOURCES := $(wildcard *.c) ag_lua.c
COBJS := $(patsubst %.c,%.o,$(SOURCES))
CXXOBJS := $(subst sdl_keymap.o,,$(patsubst %.cc,%.o,$(wildcard *.cc))) sdl_keymap.o
OBJS := $(COBJS) $(CXXOBJS)
CDEPS := $(COBJS:.o=.dep)
CXXDEPS := $(CXXOBJS:.o=.dep)
DEPS := $(CDEPS) $(CXXDEPS)
TARGET := anaglym
SUBDIRS := WFObj PhyObj TextureCache OdeWorld
SUBDIR_OBJS := $(foreach sd,$(SUBDIRS),$(sd)/$(sd).o)
CXXOBJS := $(patsubst %.cc,%.o,$(wildcard *.cc))
CXXOBJS := $(patsubst ag_lua.o,,$(CXXOBJS))
CXXOBJS := $(patsubst sdl_keymap.o,,$(CXXOBJS))
OBJS := $(CXXOBJS) $(SUBDIR_OBJS) ag_lua.o sdl_keymap.o
CXXDEPS := $(CXXOBJS:.o=.dep)
DEPS := $(CDEPS) $(CXXDEPS)
DEPS := $(patsubst ag_lua.dep,,$(DEPS))
DEPS := $(patsubst sdl_keymap.dep,,$(DEPS))
LUAINCLUDE := $(shell pkg-config --cflags lua5.1 2>/dev/null)
ifeq ($(strip $(LUAINCLUDE)),)
@ -68,34 +71,20 @@ endif
all: $(TARGET)
$(TARGET): $(OBJS) wfobj/WFObj.o OdeWorld/OdeWorld.o PhyObj/PhyObj.o TextureCache/TextureCache.o
$(TARGET): $(OBJS)
$(CXX) -o $@ $^ $(LDFLAGS)
ag_lua.c: ag.lua
xxd -i $< > $@
.PHONY: wfobj/WFObj.o
wfobj/WFObj.o:
$(MAKE) -C wfobj
.PHONY: OdeWorld/OdeWorld.o
OdeWorld/OdeWorld.o:
$(MAKE) -C OdeWorld
.PHONY: PhyObj/PhyObj.o
PhyObj/PhyObj.o:
$(MAKE) -C PhyObj
.PHONY: TextureCache/TextureCache.o
TextureCache/TextureCache.o:
$(MAKE) -C TextureCache
%.o: %.c
$(CC) -c -o $@ $(CPPFLAGS) $(CFLAGS) $<
%.o: %.cc
$(CXX) -c -o $@ $(CPPFLAGS) $(CXXFLAGS) $<
ag_lua.cc: ag.lua
xxd -i $< > $@
ag_lua.o: ag_lua.cc
sdl_keymap.o: sdl_keymap.cc
sdl_keymap.cc: gen-sdl-keymap.pl
@ -142,11 +131,7 @@ install: dist
rsync -av dist/ $(install_dir)
clean:
-rm -f *.o *.dep *~ $(TARGET) stdout.txt stderr.txt sdl_keymap.h sdl_keymap.cc
$(MAKE) -C wfobj clean
$(MAKE) -C TextureCache clean
$(MAKE) -C OdeWorld clean
$(MAKE) -C PhyObj clean
-rm -f $(OBJS) $(DEPS) $(TARGET) stdout.txt stderr.txt sdl_keymap.cc ag_lua.cc
distclean: clean
-rm -rf dist