From ab8bfca7949cf18837ead4b3aebd5f2186a6f739 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Amadeusz=20=C5=BBo=C5=82nowski?= <aidecoe@aidecoe.name>
Date: Wed, 25 Jul 2012 22:08:23 +0200
Subject: [PATCH] Makefile: use implicit rules for install/dracut-install
Don't fail on install rule if install/dracut-install is not build - just
skip it. $(strip) is not used by install rule, because it is nowhere
set.
---
Makefile | 30 ++++++++++++++----------------
1 file changed, 14 insertions(+), 16 deletions(-)
diff --git a/Makefile b/Makefile
index a109ef0..d013cbc 100644
--- a/Makefile
+++ b/Makefile
@@ -8,7 +8,8 @@ pkglibdir ?= ${libdir}/dracut
sysconfdir ?= ${prefix}/etc
bindir ?= ${prefix}/bin
mandir ?= ${prefix}/share/man
-CFLAGS ?= -std=gnu99 -O2 -g -Wall
+CFLAGS ?= -O2 -g -Wall
+CFLAGS += -std=gnu99
man1pages = lsinitrd.1
@@ -32,22 +33,17 @@ manpages = $(man1pages) $(man5pages) $(man7pages) $(man8pages)
.PHONY: install clean archive rpm testimage test all check AUTHORS doc
-all: syncheck dracut-version.sh dracut-install
+DRACUT_INSTALL_BIN = install/dracut-install
-DRACUT_INSTALL_SOURCE = \
- install/dracut-install.c \
- install/hashmap.c\
- install/log.c \
- install/util.c
+DRACUT_INSTALL_OBJECTS = \
+ install/dracut-install.o \
+ install/hashmap.o\
+ install/log.o \
+ install/util.o
-DRACUT_INSTALL_HEADER = \
- install/hashmap.h \
- install/log.h \
- install/macro.h \
- install/util.h
+all: syncheck dracut-version.sh $(DRACUT_INSTALL_BIN)
-dracut-install: $(DRACUT_INSTALL_SOURCE) $(DRACUT_INSTALL_HEADER)
- gcc $(CFLAGS) -o dracut-install $(DRACUT_INSTALL_SOURCE)
+$(DRACUT_INSTALL_BIN): $(DRACUT_INSTALL_OBJECTS)
indent:
indent -i8 -nut -br -linux -l120 install/dracut-install.c
@@ -99,7 +95,9 @@ install: doc dracut-version.sh
ln -s ../dracut-shutdown.service \
$(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants/dracut-shutdown.service; \
fi
- install $(strip) -m 0755 dracut-install $(DESTDIR)$(pkglibdir)/dracut-install
+ if [ -x $(DRACUT_INSTALL_BIN) ]; then \
+ install -m 0755 $(DRACUT_INSTALL_BIN) $(DESTDIR)$(pkglibdir)/dracut-install; \
+ fi
dracut-version.sh:
@echo "DRACUT_VERSION=$(VERSION)-$(GITVERSION)" > dracut-version.sh
@@ -110,7 +108,7 @@ clean:
$(RM) */*/*~
$(RM) test-*.img
$(RM) dracut-*.rpm dracut-*.tar.bz2
- $(RM) dracut-install
+ $(RM) $(DRACUT_INSTALL_BIN) $(DRACUT_INSTALL_OBJECTS)
$(RM) $(manpages) dracut.html
$(MAKE) -C test clean