1# 2# Copyright (C) 2005-2007 Red Hat, Inc. All rights reserved. 3# 4# This file is part of the device-mapper userspace tools. 5# 6# This copyrighted material is made available to anyone wishing to use, 7# modify, copy, or redistribute it subject to the terms and conditions 8# of the GNU Lesser General Public License v.2.1. 9# 10# You should have received a copy of the GNU Lesser General Public License 11# along with this program; if not, write to the Free Software Foundation, 12# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 13 14srcdir = @srcdir@ 15top_srcdir = @top_srcdir@ 16top_builddir = @top_builddir@ 17VPATH = @srcdir@ 18 19SOURCES = libdevmapper-event.c 20TARGETS = dmeventd 21 22.PHONY: install_lib_dynamic install_lib_static install_include \ 23 install_pkgconfig install_dmeventd_dynamic install_dmeventd_static \ 24 install_lib install_dmeventd 25 26INSTALL_DMEVENTD_TARGETS = install_dmeventd_dynamic 27INSTALL_LIB_TARGETS = install_lib_dynamic 28 29ifeq ("@STATIC_LINK@", "yes") 30 LIB_STATIC = libdevmapper-event.a 31 TARGETS += dmeventd.static 32 INSTALL_DMEVENTD_TARGETS += install_dmeventd_static 33 INSTALL_LIB_TARGETS += install_lib_static 34endif 35 36LIB_VERSION = $(LIB_VERSION_DM) 37 38ifeq ("@LIB_SUFFIX@","dylib") 39 LIB_SHARED = libdevmapper-event.dylib 40else 41 LIB_SHARED = libdevmapper-event.so 42 VERSIONED_SHLIB = $(LIB_SHARED).$(LIB_VERSION) 43endif 44 45CLEAN_TARGETS = dmeventd.o dmeventd.static 46 47ifneq ($(MAKECMDGOALS),device-mapper) 48 SUBDIRS+=plugins 49endif 50 51include ../../make.tmpl 52 53all: device-mapper 54device-mapper: $(TARGETS) 55 56LIBS += -ldl 57LVMLIBS += -ldevmapper-event -lpthread -ldevmapper 58 59$(VERSIONED_SHLIB): $(LIB_SHARED) 60 $(RM) -f $@ 61 $(LN_S) $(LIB_SHARED) $@ 62 63dmeventd: $(LIB_SHARED) $(VERSIONED_SHLIB) dmeventd.o 64 $(CC) $(CFLAGS) $(LDFLAGS) -L. -o $@ dmeventd.o \ 65 $(LVMLIBS) $(LIBS) -rdynamic 66 67dmeventd.static: $(LIB_STATIC) dmeventd.o $(interfacedir)/libdevmapper.a 68 $(CC) $(CFLAGS) $(LDFLAGS) -static -L. -L$(interfacedir) -o $@ \ 69 dmeventd.o $(LVMLIBS) $(LIBS) -rdynamic 70 71ifeq ("@PKGCONFIG@", "yes") 72 INSTALL_LIB_TARGETS += install_pkgconfig 73endif 74 75install_include: 76 $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(srcdir)/libdevmapper-event.h \ 77 $(includedir)/libdevmapper-event.h 78 79install_pkgconfig: 80 $(INSTALL) -D $(OWNER) $(GROUP) -m 444 libdevmapper-event.pc \ 81 $(usrlibdir)/pkgconfig/devmapper-event.pc 82 83install_lib_dynamic: libdevmapper-event.$(LIB_SUFFIX) 84 $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ 85 $(libdir)/libdevmapper-event.$(LIB_SUFFIX).$(LIB_VERSION) 86 $(LN_S) -f libdevmapper-event.$(LIB_SUFFIX).$(LIB_VERSION) \ 87 $(libdir)/libdevmapper-event.$(LIB_SUFFIX) 88 89install_lib_static: libdevmapper-event.a 90 $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \ 91 $(libdir)/libdevmapper-event.a.$(LIB_VERSION) 92 $(LN_S) -f libdevmapper-event.a.$(LIB_VERSION) $(libdir)/libdevmapper-event.a 93 94install_lib: $(INSTALL_LIB_TARGETS) 95 96install_dmeventd_dynamic: dmeventd 97 $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< 98 99install_dmeventd_static: dmeventd.static 100 $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$< 101 102install_dmeventd: $(INSTALL_DMEVENTD_TARGETS) 103 104install: install_include install_lib install_dmeventd 105 106install_device-mapper: install_include install_lib install_dmeventd 107 108.PHONY: distclean_lib distclean 109 110distclean_lib: 111 $(RM) libdevmapper-event.pc 112 113distclean: distclean_lib 114 115