Browse Source

Makefile now builds each object on its own. Thus it can be build with -j2 and higher

master
Dirk Engling 14 years ago
parent
commit
bcf252f249
  1. 28
      Makefile

28
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 *~

Loading…
Cancel
Save