multipath-tools: add dependency tracking to Makefiles
authorMartin Wilck <mwilck@suse.com>
Fri, 19 Jan 2018 00:19:44 +0000 (01:19 +0100)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Wed, 7 Mar 2018 08:41:04 +0000 (09:41 +0100)
Signed-off-by: Martin Wilck <mwilck@suse.com>
14 files changed:
.gitignore
Makefile.inc
kpartx/Makefile
libdmmp/Makefile
libdmmp/test/Makefile
libmpathcmd/Makefile
libmpathpersist/Makefile
libmultipath/Makefile
libmultipath/checkers/Makefile
libmultipath/prioritizers/Makefile
mpathpersist/Makefile
multipath/Makefile
multipathd/Makefile
tests/Makefile

index 371b875..35c59a7 100644 (file)
@@ -5,6 +5,7 @@
 *.so.0
 *.a
 *.gz
+*.d
 kpartx/kpartx
 multipath/multipath
 multipathd/multipathd
index d82d3b5..eb99c36 100644 (file)
@@ -91,7 +91,7 @@ OPTFLAGS      = -O2 -g -pipe -Wall -Wextra -Wformat=2 -Werror=implicit-int \
                  --param=ssp-buffer-size=4
 
 CFLAGS         := $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
-                  $(CFLAGS)
+                  -MMD -MP $(CFLAGS)
 BIN_CFLAGS     = -fPIE -DPIE
 LIB_CFLAGS     = -fPIC
 SHARED_FLAGS   = -shared
index bf7362d..7eb467e 100644 (file)
@@ -44,5 +44,10 @@ uninstall:
        $(RM) $(DESTDIR)$(libudevdir)/rules.d/67-kpartx-compat.rules
        $(RM) $(DESTDIR)$(libudevdir)/rules.d/68-del-part-nodes.rules
 
-clean:
+clean: dep_clean
        $(RM) core *.o $(EXEC) *.gz
+
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index bf231ac..1dd3f34 100644 (file)
@@ -56,11 +56,13 @@ uninstall:
        $(RM) $(DESTDIR)$(man3dir)/libdmmp.h*
        $(RM) $(DESTDIR)$(pkgconfdir)/$(PKGFILE)
 
-clean:
+clean: dep_clean
        $(RM) core *.a *.o *.gz *.so *.so.*
        $(RM) -r docs/man
        $(MAKE) -C test clean
 
+include $(wildcard $(OBJS:.o=.d))
+
 check: all
        $(MAKE) -C test check
 
@@ -84,3 +86,6 @@ docs/man/$(EXTRA_MAN_FILES).gz: $(HEADERS)
                gzip -f $$file; \
        done
        find docs/man -type f -name \*[0-9].gz
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index acfb3bf..20b3945 100644 (file)
@@ -26,5 +26,12 @@ speed_test: $(SPD_TEST_EXEC)
        sudo env LD_LIBRARY_PATH=$(_libdmmpdir):$(_mpathcmddir) \
                time -p ./$(SPD_TEST_EXEC)
 
-clean:
+clean: dep_clean
        rm -f $(TEST_EXEC) $(SPD_TEST_EXEC)
+
+OBJS = $(TEST_EXEC).o $(SPD_TEST_EXEC).o
+include $(wildcard $(OBJS:.o=.d))
+
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 4f32101..53c0899 100644 (file)
@@ -26,5 +26,11 @@ uninstall:
        $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB)
        $(RM) $(DESTDIR)$(includedir)/mpath_cmd.h
 
-clean:
-       $(RM) core *.a *.o *.so *.so.* *.gz
+clean: dep_clean
+       $(RM) core *.a *.o *.so *.so.* *.gz 
+
+include $(wildcard $(OBJS:.o=.d))
+
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 1b4ec16..21fdad8 100644 (file)
@@ -37,5 +37,11 @@ uninstall:
        $(RM) $(DESTDIR)$(includedir)/mpath_persist.h
        $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB)
 
-clean:
+clean: dep_clean
        $(RM) core *.a *.o *.so *.so.* *.gz
+
+include $(wildcard $(OBJS:.o=.d))
+
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 6447d8d..25b0527 100644 (file)
@@ -61,5 +61,10 @@ uninstall:
        $(RM) $(DESTDIR)$(syslibdir)/$(LIBS)
        $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB)
 
-clean:
+clean: dep_clean
        $(RM) core *.a *.o *.so *.so.* *.gz
+
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index bce6b8b..9559038 100644 (file)
@@ -36,5 +36,11 @@ install:
 uninstall:
        for file in $(LIBS); do $(RM) $(DESTDIR)$(libdir)/$$file; done
 
-clean:
+clean: dep_clean
        $(RM) core *.a *.o *.gz *.so
+
+OBJS := $(LIBS:libcheck%.so=%.o) libsg.o directio.o
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 0c71e63..b3cc944 100644 (file)
@@ -38,5 +38,11 @@ install: $(LIBS)
 uninstall:
        for file in $(LIBS); do $(RM) $(DESTDIR)$(libdir)/$$file; done
 
-clean:
+clean: dep_clean
        $(RM) core *.a *.o *.gz *.so
+
+OBJS = $(LIBS:libprio%.so=%.o) alua_rtpg.o
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 6e5acd3..5126801 100644 (file)
@@ -22,9 +22,14 @@ install:
        $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir)
        $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir)
 
-clean:
+clean: dep_clean
        $(RM) core *.o $(EXEC) *.gz
 
+include $(wildcard $(OBJS:.o=.d))
+
 uninstall:
        $(RM) $(DESTDIR)$(bindir)/$(EXEC)
        $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index 468c056..654568a 100644 (file)
@@ -37,5 +37,10 @@ uninstall:
        $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz
        $(RM) $(DESTDIR)$(man5dir)/$(EXEC).conf.5.gz
 
-clean:
+clean: dep_clean
        $(RM) core *.o $(EXEC) *.gz
+
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index e6f140b..251690e 100644 (file)
@@ -49,5 +49,10 @@ uninstall:
        $(RM) $(DESTDIR)$(unitdir)/$(EXEC).service
        $(RM) $(DESTDIR)$(unitdir)/$(EXEC).socket
 
-clean:
+clean: dep_clean
        $(RM) core *.o $(EXEC) *.gz
+
+include $(wildcard $(OBJS:.o=.d))
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)
index ff58cb8..f6b5583 100644 (file)
@@ -17,7 +17,14 @@ TESTS := uevent
 
 all:   $(TESTS:%=%.out)
 
-clean:
+clean: dep_clean
        rm -f $(TESTS:%=%-test) $(TESTS:%=%.out) $(TESTS:%=%.o)
 
+OBJS = $(TESTS:%=%.o)
+include $(wildcard $(OBJS:.o=.d))
 
+
+
+
+dep_clean:
+       $(RM) $(OBJS:.o=.d)