more Makefile cleaning
authorPatrik Gornicz <Gornicz.P@gmail.com>
Sat, 19 Jul 2008 20:55:38 +0000 (16:55 -0400)
committerPatrik Gornicz <Gornicz.P@gmail.com>
Sat, 19 Jul 2008 20:55:38 +0000 (16:55 -0400)
src/Makefile

index a2702eb..e6fe96b 100644 (file)
@@ -10,8 +10,10 @@ PRFFLAGS := ${DBGFLAGS} -pg
 #CXX := g++
 CXXFLAGS := -Wall -pedantic -ansi ${DBGFLAGS}
 
+TARGET := ../run_physics
 
-SRCS := entityManager.cpp
+SRCS := # simply to keep every line below the same
+SRCS += entityManager.cpp
 SRCS += entityCreator.cpp
 SRCS += game.cpp
 SRCS += main.cpp
@@ -38,10 +40,15 @@ SRCS += input/inputManager.cpp
 SRCS += graphics/graphics.cpp
 
 OBJS := ${SRCS:.cpp=.o}
+DEPENDS := ${SRCS:.cpp=.d}
 
+HRDS := ${SRCS:.cpp=.h}
+HRDS := ${HRDS:main.h=} # remove main.h
+HRDS += debug.h
+HRDS += graphics/colors.h
+
+TARS := ${SRCS} ${HRDS} Makefile
 
-TARGET := ../run_physics
-DEPENDS := ${SRCS:.cpp=.d}
 
 VERBOSE := 0
 
@@ -64,12 +71,12 @@ ${TARGET}: ${OBJS}
        ${Q1}echo "${CXX}: $@"
        ${Q2}${CXX} ${CXXFLAGS} -o ${TARGET} $^ ${LIBS}
 
-# how to make a depend file from a source file
+# rule to make a depend file from a .cpp
 %.d: %.cpp
        ${Q1}echo "DEP: $@"
        ${Q2}${CXX} -M ${CXXFLAGS} $< | sed 's,: , $@: ,' > $@
-#@${CXX} -M ${CXXFLAGS} $< | sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' > $@
 
+# rule to make an object file from a .cpp
 %.o: %.cpp
        ${Q1}echo "${CXX}: $@"
        ${Q2}${CXX} ${CXXFLAGS} -c -o $@ $<
@@ -92,9 +99,16 @@ distclean: clean
 tags: ${SRCS}
        ctags $^
 
-tar: clean
-       cd ..; tar -cjf physics.tar.bz2 src/
+tar:
+       ${Q1}echo "tar: physics.tar"
+       ${Q2}rm -f physics.tar # prevents appending
+       ${Q2}for f in ${TARS}; do\
+               tar -C ../.. -rf physics.tar "physics/src/$$f"; done
+       ${Q2}bzip2 physics.tar
 
+git-tar:
+       ${Q1}echo "git-archive: ../physics.tar.bz2"
+       ${Q2}cd ..; git-archive --prefix=physics/ HEAD | bzip2 > physics.tar.bz2
 
 .PHONY: run
 run: all