aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Pettenò <flameeyes@gentoo.org>2008-10-22 15:31:05 +0000
committerDiego Pettenò <flameeyes@gentoo.org>2008-10-22 15:31:05 +0000
commit3d86221dd0c83a09c9bbed4c395852816e26b061 (patch)
treeb20e8380ffa622778372e59b18d266d84cf3f9dd /Makefile
parentAdd scanmacho to the list of ignored files. (diff)
downloadpax-utils-3d86221dd0c83a09c9bbed4c395852816e26b061.tar.gz
pax-utils-3d86221dd0c83a09c9bbed4c395852816e26b061.tar.bz2
pax-utils-3d86221dd0c83a09c9bbed4c395852816e26b061.zip
Improve Makefile to avoid relinking all targets when changing one tool.
With these changes, editing scanelf.c won't trigger a new build of dumpelf and pspax, since each target depends only on those object files it actually uses.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile16
1 files changed, 8 insertions, 8 deletions
diff --git a/Makefile b/Makefile
index 42f59b1..c96266d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
# Copyright 2003-2006 Ned Ludd <solar@linbsd.net>
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-projects/pax-utils/Makefile,v 1.69 2008/09/12 19:08:52 grobian Exp $
+# $Header: /var/cvsroot/gentoo-projects/pax-utils/Makefile,v 1.70 2008/10/22 15:31:05 flameeyes Exp $
####################################################################
check_gcc=$(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; \
@@ -41,12 +41,12 @@ endif
####################################################################
ELF_TARGETS = scanelf dumpelf $(shell echo | $(CC) -dM -E - | grep -q __svr4__ || echo pspax)
-ELF_OBJS = $(ELF_TARGETS:%=%.o) paxelf.o
+ELF_OBJS = paxelf.o
MACH_TARGETS = scanmacho
-MACH_OBJS = $(MACH_TARGETS:%=%.o) paxmacho.o
+MACH_OBJS = paxmacho.o
COMMON_OBJS = paxinc.o xfuncs.o
-OBJS = $(ELF_OBJS) $(MACH_OBJS) $(COMMON_OBJS)
TARGETS = $(ELF_TARGETS) $(MACH_TARGETS)
+OBJS = $(ELF_OBJS) $(MACH_OBJS) $(COMMON_OBJS) $(TARGETS:%=%.o)
MPAGES = $(TARGETS:%=man/%.1)
SOURCES = $(OBJS:%.o=%.c)
@@ -71,11 +71,11 @@ ifeq ($(V),)
endif
$(Q)$(compile.c) $(WFLAGS)
-$(ELF_TARGETS): $(ELF_OBJS) $(COMMON_OBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) $(COMMON_OBJS) paxelf.o -o $@ $@.o $(LIBS) $(LIBS-$@)
+$(ELF_TARGETS): %: $(ELF_OBJS) $(COMMON_OBJS) %.o
+ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(LIBS) $(LIBS-$@)
-$(MACH_TARGETS): $(MACH_OBJS) $(COMMON_OBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) $(COMMON_OBJS) paxmacho.o -o $@ $@.o $(LIBS) $(LIBS-$@)
+$(MACH_TARGETS): %: $(MACH_OBJS) $(COMMON_OBJS) %.o
+ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(LIBS) $(LIBS-$@)
%.so: %.c
$(CC) -shared -fPIC -o $@ $<