Imported Upstream version 0.7.5
[platform/upstream/multipath-tools.git] / multipathd / Makefile
index 781122a..4c9d296 100644 (file)
@@ -1,62 +1,58 @@
-EXEC = multipathd
-
 include ../Makefile.inc
 
 #
-# basic flags setting
-#
-CFLAGS += -I$(multipathdir) -I$(mpathpersistdir)
-ifdef SYSTEMD
-       CFLAGS += -DUSE_SYSTEMD=$(SYSTEMD)
-endif
-LDFLAGS += -lpthread -ldevmapper -lreadline
-ifdef SYSTEMD
-       LDFLAGS += -lsystemd-daemon
-endif
-LDFLAGS += -ludev -ldl \
-       -L$(multipathdir) -lmultipath -L$(mpathpersistdir) -lmpathpersist
-
-#
-# debuging stuff
+# debugging stuff
 #
 #CFLAGS += -DLCKDBG
 #CFLAGS += -D_DEBUG_
 #CFLAGS += -DLOGDBG
+CFLAGS += $(BIN_CFLAGS) -I$(multipathdir) -I$(mpathpersistdir) \
+         -I$(mpathcmddir) -I$(thirdpartydir)
+LDFLAGS += $(BIN_LDFLAGS)
+LIBDEPS += -L$(multipathdir) -lmultipath -L$(mpathpersistdir) -lmpathpersist \
+          -L$(mpathcmddir) -lmpathcmd -ludev -ldl -lurcu -lpthread \
+          -ldevmapper -lreadline
+
+ifdef SYSTEMD
+       CFLAGS += -DUSE_SYSTEMD=$(SYSTEMD)
+       ifeq ($(shell test $(SYSTEMD) -gt 209 && echo 1), 1)
+               LIBDEPS += -lsystemd
+       else
+               LIBDEPS += -lsystemd-daemon
+       endif
+endif
 
-#
-# object files
-#
 OBJS = main.o pidfile.o uxlsnr.o uxclnt.o cli.o cli_handlers.o
 
+EXEC = multipathd
 
-#
-# directives
-#
 all : $(EXEC)
 
-$(EXEC): $(OBJS)
-       $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(EXEC)
+$(EXEC): $(OBJS) $(multipathdir)/libmultipath.so $(mpathcmddir)/libmpathcmd.so
+       $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(EXEC) $(LIBDEPS)
        $(GZIP) $(EXEC).8 > $(EXEC).8.gz
 
 install:
        $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
        $(INSTALL_PROGRAM) -m 755 $(EXEC) $(DESTDIR)$(bindir)
-       $(INSTALL_PROGRAM) -d $(DESTDIR)$(rcdir)
 ifdef SYSTEMD
        $(INSTALL_PROGRAM) -d $(DESTDIR)$(unitdir)
        $(INSTALL_PROGRAM) -m 644 $(EXEC).service $(DESTDIR)$(unitdir)
        $(INSTALL_PROGRAM) -m 644 $(EXEC).socket $(DESTDIR)$(unitdir)
 endif
-       $(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
-       $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
+       $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir)
+       $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir)
 
 uninstall:
-       rm -f $(DESTDIR)$(bindir)/$(EXEC)
-       rm -f $(DESTDIR)$(rcdir)/$(EXEC)
-       rm -f $(DESTDIR)$(mandir)/$(EXEC).8.gz
-       rm -f $(DESTDIR)$(unitdir)/$(EXEC).service
-       rm -f $(DESTDIR)$(unitdir)/$(EXEC).socket
+       $(RM) $(DESTDIR)$(bindir)/$(EXEC)
+       $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz
+       $(RM) $(DESTDIR)$(unitdir)/$(EXEC).service
+       $(RM) $(DESTDIR)$(unitdir)/$(EXEC).socket
+
+clean: dep_clean
+       $(RM) core *.o $(EXEC) *.gz
 
-clean:
-       rm -f core *.o $(EXEC) *.gz
+include $(wildcard $(OBJS:.o=.d))
 
+dep_clean:
+       $(RM) $(OBJS:.o=.d)