From 2e62624bc446ae6413b24fe002faf20e373d7c05 Mon Sep 17 00:00:00 2001
From: erdgeist <>
Date: Tue, 6 Nov 2007 12:44:53 +0000
Subject: Makefile now builds each object on its own. Thus it can be build with
 -j2 and higher

---
 Makefile | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/Makefile b/Makefile
index 2360025..ea00d75 100644
--- a/Makefile
+++ b/Makefile
@@ -1,23 +1,33 @@
 CC?=gcc
-FEATURES=-DWANT_TRACKER_SYNC #-DWANT_CLOSED_TRACKER -DWANT_UTORRENT1600_WORKAROUND #-DWANT_IP_FROM_QUERY_STRING -D_DEBUG_HTTPERROR -DWANT_TRACKER_SYNC
+FEATURES=#-DWANT_CLOSED_TRACKER -DWANT_UTORRENT1600_WORKAROUND -DWANT_IP_FROM_QUERY_STRING -D_DEBUG_HTTPERROR -DWANT_TRACKER_SYNC
 OPTS_debug=-g -ggdb #-pg # -fprofile-arcs -ftest-coverage
-OPTS_production=-s -Os
-CFLAGS+=-I../libowfat -Wall -pipe -Wextra #-pedantic #-ansi
+OPTS_production=-Os
+CFLAGS+=-I../libowfat -Wall -pipe -Wextra #-pedantic -ansi
 LDFLAGS+=-L../libowfat/ -lowfat
  
 BINARY = opentracker
 HEADERS=trackerlogic.h scan_urlencoded_query.h ot_mutex.h ot_stats.h ot_sync.h ot_vector.h ot_clean.h
 SOURCES=opentracker.c trackerlogic.c scan_urlencoded_query.c ot_mutex.c ot_stats.c ot_sync.c ot_vector.c ot_clean.c
- 
+
+OBJECTS = $(SOURCES:%.c=%.o)
+OBJECTS_debug = $(SOURCES:%.c=%.debug.o)
+
 all: $(BINARY) $(BINARY).debug
 
 CFLAGS_production = $(CFLAGS) $(OPTS_production) $(FEATURES)
 CFLAGS_debug = $(CFLAGS) $(OPTS_debug) $(FEATURES)
 
-$(BINARY): $(SOURCES) $(HEADERS)
-	$(CC) -o $@ $(SOURCES) $(CFLAGS_production) $(LDFLAGS)
-$(BINARY).debug: $(SOURCES) $(HEADERS)
-	$(CC) -o $@ $(SOURCES) $(CFLAGS_debug) $(LDFLAGS)
- 
+$(BINARY): $(OBJECTS)
+	$(CC) -o $@ $(OBJECTS) $(LDFLAGS)
+	strip $@
+$(BINARY).debug: $(OBJECTS_debug) $(HEADERS)
+	$(CC) -o $@ $(OBJECTS_debug) $(LDFLAGS)
+
+%.debug.o : %.c $(HEADERS)
+	$(CC) -c -o $@ $(CFLAGS_debug) $<
+
+%.o : %.c $(HEADERS)
+	$(CC) -c -o $@ $(CFLAGS_production) $<
+
 clean:
 	rm -rf opentracker opentracker.debug *.o *~
-- 
cgit v1.2.3