1 include ../Makefile.inc
4 DEVLIB = libmpathpersist.so
5 LIBS = $(DEVLIB).$(SONAME)
6 VERSION_SCRIPT:= libmpathpersist.version
8 CFLAGS += $(LIB_CFLAGS) -I$(multipathdir) -I$(mpathpersistdir) -I$(mpathcmddir)
9 LDFLAGS += -L$(multipathdir) -L$(mpathcmddir)
11 LIBDEPS += -lmultipath -lmpathcmd -ldevmapper -lpthread -ldl
13 OBJS = mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o mpath_persist_int.o
17 $(LIBS): $(OBJS) $(VERSION_SCRIPT)
18 $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ \
19 -Wl,--version-script=$(VERSION_SCRIPT) -o $@ $(OBJS) $(LIBDEPS)
21 $(NV_VERSION_SCRIPT): $(VERSION_SCRIPT)
22 @printf 'NOVERSION {\nglobal:\n' >$@
23 @grep -P '^[ \t]+[a-zA-Z_][a-zA-Z0-9_]*;' $< >>$@
24 @printf 'local:\n\t*;\n};\n' >>$@
26 $(LIBS:%.so.$(SONAME)=%-nv.so): $(OBJS) $(NV_VERSION_SCRIPT)
27 $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ \
28 -Wl,--version-script=$(NV_VERSION_SCRIPT) -o $@ $(OBJS) $(LIBDEPS)
30 abi: $(LIBS:%.so.$(SONAME)=%-nv.abi)
36 $(INSTALL_PROGRAM) -d $(DESTDIR)$(syslibdir)
37 $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(syslibdir)/$(LIBS)
38 $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(syslibdir)
39 $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(man3dir)
40 $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(includedir)
41 $(LN) $(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB)
42 $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_in.3 $(DESTDIR)$(man3dir)
43 $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_out.3 $(DESTDIR)$(man3dir)
44 $(INSTALL_PROGRAM) -m 644 mpath_persist.h $(DESTDIR)$(includedir)
47 $(RM) $(DESTDIR)$(syslibdir)/$(LIBS)
48 $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_in.3
49 $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_out.3
50 $(RM) $(DESTDIR)$(includedir)/mpath_persist.h
51 $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB)
54 $(RM) core *.a *.o *.so *.so.* *.abi $(NV_VERSION_SCRIPT)
56 include $(wildcard $(OBJS:.o=.d))