[10/13] vis: Use standard-like build rules

Message ID 1305985517-3763-10-git-send-email-sven@narfation.org (mailing list archive)
State Accepted, archived
Commit 757d206707e491b9b81b91c205a9967f8d6bb844
Headers

Commit Message

Sven Eckelmann May 21, 2011, 1:45 p.m. UTC
  User expect a specific naming inside makefile rules which they can
modify by changing environment variables or providing them explicitely
as parameters of the make call. The naming was extracted from the gnu
make standard rules database.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
---
This patch depends on other patches submitted earlier:
 - vis: Remove obsolete creation of source packages
 - vis: Remove subversion/svk revision information

 Makefile |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)
  

Patch

diff --git a/Makefile b/Makefile
index da966ac..b34d2e8 100755
--- a/Makefile
+++ b/Makefile
@@ -23,9 +23,9 @@  BINARY_NAME= vis
 OBJ = allocate.o hash.o list-batman.o vis.o udp_server.o
 
 # vis flags and options
-CFLAGS +=	-pedantic -Wall -W -std=gnu99
-EXTRA_CFLAGS =	-DDEBUG_MALLOC -DMEMORY_USAGE -DREVISION_VERSION=$(REVISION_VERSION)
-LDFLAGS +=	-lpthread
+CFLAGS +=	-pedantic -Wall -W -std=gnu99 -MD
+CPPFLAGS +=	-DDEBUG_MALLOC -DMEMORY_USAGE -DREVISION_VERSION=$(REVISION_VERSION)
+LDLIBS +=	-lpthread
 
 # disable verbose output
 ifneq ($(findstring $(MAKEFLAGS),s),s)
@@ -39,6 +39,8 @@  endif
 
 # standard build tools
 CC ?=		gcc
+COMPILE.c = $(Q_CC)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c
+LINK.o = $(Q_LD)$(CC) $(LDFLAGS) $(TARGET_ARCH)
 
 # standard install paths
 SBINDIR =	$(INSTALL_PREFIX)/usr/sbin
@@ -53,10 +55,10 @@  all: $(BINARY_NAME)
 # standard build rules
 .SUFFIXES: .o .c
 .c.o:
-	$(Q_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -MD -c $< -o $@
+	$(COMPILE.c) -o $@ $<
 
-$(BINARY_NAME): $(OBJ) Makefile
-	$(Q_LD)$(CC) -o $@ $(OBJ) $(LDFLAGS)
+$(BINARY_NAME): $(OBJ)
+	$(LINK.o) $^ $(LDLIBS) -o $@
 
 clean:
 	rm -f $(BINARY_NAME) $(OBJ) $(DEP)