changeset 841:dd35d66c3714

Improve build process.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 14 Jul 2014 00:09:12 +0300
parents a9d0d35476ae
children 9a7323271347
files Makefile Makefile.gen Makefile.w32
diffstat 3 files changed, 28 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Sun Jul 13 23:56:55 2014 +0300
+++ b/Makefile	Mon Jul 14 00:09:12 2014 +0300
@@ -1,6 +1,14 @@
 #
 # Generic UNIX targets
 #
+DMLIB = ./
+BINPATH ?= 
+OBJPATH ?= ./obj/unix/
+EXEEXT ?=
+PREFIX ?= /usr/local
+INSTALL = install
+RANLIB = ranlib
+
 SDL_CFLAGS=`sdl-config --cflags`
 SDL_LDFLAGS=`sdl-config --static-libs`
 
@@ -16,14 +24,6 @@
 ZLIB_CFLAGS=`pkg-config --cflags zlib`
 ZLIB_LDFLAGS=`pkg-config --libs zlib`
 
-RANLIB=ranlib
-
-DMLIB = ./
-BINPATH ?= 
-OBJPATH ?= ./unix/
-EXEEXT ?=
-PREFIX ?= /usr/local
-INSTALL = install
 
 include $(DMLIB)Makefile.gen
 
--- a/Makefile.gen	Sun Jul 13 23:56:55 2014 +0300
+++ b/Makefile.gen	Mon Jul 14 00:09:12 2014 +0300
@@ -15,6 +15,9 @@
 EXTRA_CFLAGS=-O3 -march=core2 -DDM_DEVEL
 endif
 
+MKDIR ?= mkdir
+MKDIR_P ?= $(MKDIR) -p
+
 
 ###
 ### Editor
@@ -279,11 +282,22 @@
 TARGETS += $(DMLIB_A) $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(BINARIES))) \
 	$(TOOL_TARGETS) $(TESTS_TARGETS)
 
-all: $(TARGETS)
+NONBUILD+=$(OBJPATH) $(BINPATH)
+
+
+all: $(NONBUILD) $(TARGETS)
+
 
 ###
 ### Generic rules
 ###
+$(OBJPATH):
+	$(MKDIR_P) $@
+
+$(BINPATH):
+	$(MKDIR_P) $@
+
+
 $(OBJPATH)%.d: $(DMLIBSRC)%.c
 	@echo > $@
 	@grep '#\s*include\s*\"' $< | sed 's/#\s*include\s\s*"\(.*\)"/\1/' | \
--- a/Makefile.w32	Sun Jul 13 23:56:55 2014 +0300
+++ b/Makefile.w32	Mon Jul 14 00:09:12 2014 +0300
@@ -1,14 +1,14 @@
 #
 # For win32 version cross-compilation with MinGW suite @ Linux
 #
+DMLIB = ./
+BINPATH=./exe/
+OBJPATH=./obj/win32/
+EXEEXT=.exe
+
 MINGW_PREFIX=i686-w64-mingw32-
 MINGW_PATH=/usr/i686-w64-mingw32
 
-DMLIB = ./
-BINPATH=./exe/
-OBJPATH=./win32/
-EXEEXT=.exe
-
 # C-compiler, flags and linker flags
 CC=$(MINGW_PREFIX)gcc
 AR=$(MINGW_PREFIX)ar