From 96f62c237bca7fb55434d5c580e963db2ac039c5 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Sun, 19 Dec 2010 00:11:40 -0500 Subject: [PATCH] cleaned up Makefile a lot --- .hgignore | 2 +- Makefile | 51 ++++++++++++++++++--------------------------------- 2 files changed, 19 insertions(+), 34 deletions(-) diff --git a/.hgignore b/.hgignore index bb52999..5a057bb 100644 --- a/.hgignore +++ b/.hgignore @@ -1,6 +1,6 @@ glob:*.dep glob:*.o -^ag_lua.c$ +^ag_lua.cc$ ^anaglym$ ^sdl_keymap.cc$ glob:dist diff --git a/Makefile b/Makefile index 75bdd9a..939aac3 100644 --- a/Makefile +++ b/Makefile @@ -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