]> git.mdlowis.com Git - archive/dlang.git/commitdiff
Cleaned up makefile and updated submodules
authorMike D. Lowis <mike@mdlowis.com>
Fri, 20 Apr 2012 18:10:04 +0000 (14:10 -0400)
committerMike D. Lowis <mike@mdlowis.com>
Fri, 20 Apr 2012 18:10:04 +0000 (14:10 -0400)
.gitmodules
Makefile

index f15f888d0d7e20b6f94ff6fd855d04751597e6cc..ce0e8e2d6aa56c320edf704790f416bbf532777b 100644 (file)
@@ -5,5 +5,5 @@
     path = deps/cork
     url = git://github.com/mikedlowis/cork.git
 [submodule "deps/parse-utils"]
-       path = deps/parse-utils
-       url = git://github.com/mikedlowis/parse-utils.git
+    path = deps/parse-utils
+    url = git://github.com/mikedlowis/parse-utils.git
index f394261793d41216599eefe7796303c89b61c782..be2219ba0cc50bd027c37c45e3012de9ee7c9468 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -25,75 +25,78 @@ TEST_RUNNER = test_runner
 
 # File and Directory Settings
 #----------------------------
+# Root Directories
 SRC_ROOT   = source/
 RES_ROOT   = res/
 TESTS_ROOT = tests/
+
+# File Extensions
 SRC_EXT    = cpp
 RES_EXT    = scm
 TEST_EXT   = cpp
-SRC_DIRS   = $(call dlist, $(SRC_ROOT))
+
+# Libraries to Link Against
+LIBS      = deps/parse-utils/libparseutils.a
+TEST_LIBS = $(LIBS) \
+            tools/UnitTest++/libUnitTest++.a
+
+# Source File Lists
 SRC_FILES  = $(call flist, $(SRC_ROOT), $(SRC_EXT))
 RES_FILES  = $(call flist, $(RES_ROOT), $(RES_EXT))
 TEST_FILES = $(call flist, $(TESTS_ROOT), $(TEST_EXT))
 
-# Object File List
+# Object File Lists
 SRC_OBJS  = $(SRC_FILES:%.$(SRC_EXT)=%.o)
 RES_OBJS  = $(RES_FILES:%.$(RES_EXT)=%.o)
 TEST_OBJS = $(TEST_FILES:%.$(TEST_EXT)=%.o)
 
 # Include Directories
-INC_DIRS = $(addprefix -I,$(SRC_DIRS)) \
+INC_DIRS = $(call incdirs, $(SRC_ROOT)) \
            $(call incdirs, deps/parse-utils/source) \
            $(call incdirs, tools/UnitTest++/src)
 
-# Libraries to Link Against
-LIBS      = deps/parse-utils/libparseutils.a
-TEST_LIBS = tools/UnitTest++/libUnitTest++.a \
-            $(LIBS)
-
 # Compiler and Linker Options
 #----------------------------
 CXXFLAGS = $(INC_DIRS) -Wall -Werror
 
 # Build Rules
 #------------
-all: $(PROJ_NAME) test
+all: release test
+
+release: $(PROJ_NAME)
 
 test: $(TEST_RUNNER)
        $(TEST_RUNNER)
 
 # Binaries
-$(TEST_RUNNER): unit_test_pp parseutils $(SRC_OBJS) $(RES_OBJS) $(TEST_OBJS)
-       $(CXX) -o $@ $(TEST_OBJS) $(filter-out source/main.o,$(SRC_OBJS)) $(RES_OBJS) $(TEST_LIBS)
-
-$(PROJ_NAME): parseutils $(SRC_OBJS) $(RES_OBJS)
+$(PROJ_NAME): parseutils $(SRC_OBJS) res/environment.o
        $(CXX) $(CXX_FLAGS) -o $@ $(SRC_OBJS) $(RES_OBJS) $(LIBS)
 
-# Libraries
-cork:
-       $(MAKE) -C deps/cork static
+$(TEST_RUNNER): parseutils unit_test_pp $(SRC_OBJS) $(RES_OBJS) $(TEST_OBJS)
+       $(CXX) $(CXX_FLAGS) -o $@ $(filter-out source/main.o,$(SRC_OBJS)) $(RES_OBJS) $(TEST_OBJS) $(TEST_LIBS)
 
+# Libraries
 parseutils:
        $(MAKE) -C deps/parse-utils static
 
 unit_test_pp:
        $(MAKE) -C tools/UnitTest++
 
-# Resources (Compiled Text Files)
 # Object Files
 $(SRC_OBJS): %.o : %.$(SRC_EXT)
+
 $(TEST_OBJS): %.o : %.$(TEST_EXT)
+
 $(RES_OBJS): %.o : %.$(RES_EXT)
        objcopy -I binary -O elf32-i386 -B i386 $< $@
 
-# Clean Task
+# Cleanup
 clean:
-       -@$(MAKE) -C deps/cork clean
-       -@$(MAKE) -C deps/parse-utils clean
-       -@$(MAKE) -C tools/UnitTest++ clean
-       -@$(RM) $(SRC_OBJS)
-       -@$(RM) $(RES_OBJS)
-       -@$(RM) $(TEST_OBJS)
-       -@$(RM) $(TEST_RUNNER)*
-       -@$(RM) $(PROJ_NAME)*
+       $(MAKE) -C deps/parse-utils clean
+       $(MAKE) -C tools/UnitTest++ clean
+       $(RM) $(SRC_OBJS)
+       $(RM) $(RES_OBJS)
+       $(RM) $(TEST_OBJS)
+       $(RM) $(TEST_RUNNER)*
+       $(RM) $(PROJ_NAME)*