#
# Copyright (C) 2014-2015 Red Hat, Inc.
#
# This file is part of LVM2.
#
# This copyrighted material is made available to anyone wishing to use,
# modify, copy, or redistribute it subject to the terms and conditions
# of the GNU Lesser General Public License v.2.1.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@

SOURCES = lvmpolld-core.c lvmpolld-data-utils.c lvmpolld-cmd-utils.c

TARGETS = lvmpolld

.PHONY: install_lvmpolld

CFLOW_LIST = $(SOURCES)
CFLOW_LIST_TARGET = $(LIB_NAME).cflow
CFLOW_TARGET = lvmpolld

include $(top_builddir)/make.tmpl

INCLUDES += -I$(top_srcdir)/libdaemon/server
LVMLIBS = -ldaemonserver $(LVMINTERNAL_LIBS) -ldevmapper

LIBS += $(PTHREAD_LIBS)

LDFLAGS += -L$(top_builddir)/libdaemon/server $(DAEMON_LDFLAGS)
CLDFLAGS += -L$(top_builddir)/libdaemon/server
CFLAGS += $(DAEMON_CFLAGS)

lvmpolld: $(OBJECTS) $(top_builddir)/libdaemon/client/libdaemonclient.a \
		    $(top_builddir)/libdaemon/server/libdaemonserver.a
	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJECTS) $(LVMLIBS) $(LIBS)

install_lvmpolld: lvmpolld
	$(INSTALL_PROGRAM) -D $< $(sbindir)/$(<F)

install_lvm2: install_lvmpolld

install: install_lvm2
