2001-11-28 20:08:11 +00:00
#
2004-03-30 19:08:57 +00:00
# Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
2010-04-09 21:42:48 +00:00
# Copyright (C) 2004-2010 Red Hat, Inc. All rights reserved.
2001-11-28 20:08:11 +00:00
#
2004-03-30 19:08:57 +00:00
# This file is part of the device-mapper userspace tools.
2001-11-28 20:08:11 +00:00
#
2004-03-30 19:08:57 +00:00
# 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,
2016-01-21 11:49:46 +01:00
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2001-11-28 20:08:11 +00:00
srcdir = @srcdir@
top_srcdir = @top_srcdir@
2009-10-02 19:10:31 +00:00
top_builddir = @top_builddir@
2021-03-19 23:10:55 +01:00
abs_srcdir = @abs_srcdir@
2001-11-28 20:08:11 +00:00
2018-06-14 13:08:33 +01:00
SUBDIRS = dm-tools
2005-10-16 14:33:22 +00:00
SOURCES = \
datastruct/bitset.c \
datastruct/hash.c \
2008-11-03 18:59:59 +00:00
datastruct/list.c \
2005-10-16 14:33:22 +00:00
libdm-common.c \
2015-09-28 20:28:31 +01:00
libdm-config.c \
2005-10-16 14:33:22 +00:00
libdm-deptree.c \
2015-09-28 20:28:31 +01:00
libdm-file.c \
2007-01-16 18:04:15 +00:00
libdm-report.c \
2015-08-05 10:40:00 +01:00
libdm-stats.c \
2015-09-28 20:28:31 +01:00
libdm-string.c \
libdm-targets.c \
libdm-timestamp.c \
2005-10-16 14:33:22 +00:00
mm/dbg_malloc.c \
mm/pool.c \
2007-04-27 18:40:23 +00:00
regex/matcher.c \
regex/parse_rx.c \
regex/ttree.c \
2005-10-16 14:33:22 +00:00
$( interface) /libdm-iface.c
2001-12-05 16:41:52 +00:00
2015-05-13 23:42:17 +02:00
INCLUDES = -I$( srcdir) /$( interface)
2001-11-28 20:08:11 +00:00
2009-04-08 14:04:35 +00:00
i f e q ( "@STATIC_LINK@" , "yes" )
2004-02-24 18:46:20 +00:00
LIB_STATIC = $( interface) /libdevmapper.a
2009-04-08 14:04:35 +00:00
e n d i f
2005-01-27 16:16:54 +00:00
2010-04-09 21:42:48 +00:00
LIB_SHARED = $( interface) /libdevmapper.$( LIB_SUFFIX)
2008-11-03 22:14:30 +00:00
LIB_VERSION = $( LIB_VERSION_DM)
2021-04-06 14:39:44 +02:00
TARGETS = libdevmapper.$( LIB_SUFFIX) libdevmapper.$( LIB_SUFFIX) .$( LIB_VERSION) .symver_check
2004-02-24 18:46:20 +00:00
2010-03-29 14:11:17 +00:00
CFLOW_LIST = $( SOURCES)
CFLOW_LIST_TARGET = libdevmapper.cflow
2010-06-25 18:17:38 +00:00
EXPORTED_HEADER = $( srcdir) /libdevmapper.h
EXPORTED_FN_PREFIX = dm
2018-05-14 12:16:43 +01:00
i n c l u d e $( top_builddir ) / l i b d m / m a k e . t m p l
2010-03-04 09:56:56 +00:00
2017-08-01 00:01:07 +02:00
PROGS_CFLAGS = $( UDEV_CFLAGS)
2015-05-13 23:42:17 +02:00
2021-04-08 19:44:53 +02:00
device-mapper : $( TARGETS )
2010-03-04 12:08:26 +00:00
2021-04-08 19:44:53 +02:00
dm-tools.device-mapper : device -mapper
2018-06-14 20:37:33 +02:00
2010-04-09 21:42:48 +00:00
libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION) : $( LIB_SHARED )
2018-11-29 17:09:27 +01:00
@echo " [LN] $< "
$( Q) $( LN_S) -f $< $@
2010-04-09 21:42:48 +00:00
2021-04-06 14:39:44 +02:00
# Check versioned build when default versioned symbol is present @@
# also the older symbol is built-in
.symver_check : $( LIB_SHARED )
@echo " [CHECK] $< "
$( Q) if readelf -Ws $< | grep -q dm_stats_create_region@@; then \
SYM = $$ ( readelf -Ws $< | grep dm_stats_create_region@DM_1_02_106) ; \
if test -n " $$ SYM " ; then touch $@ ; \
else echo >& 2 " Missing versioned symbols in $< " ; false; fi ; \
else touch $@ ; fi
2006-04-19 15:23:10 +00:00
.PHONY : install_dynamic install_static install_include \
2007-08-21 18:41:58 +00:00
install_ioctl install_ioctl_static \
2006-04-19 16:38:56 +00:00
install_pkgconfig
2002-01-02 19:01:09 +00:00
2004-04-05 20:48:14 +00:00
INSTALL_TYPE = install_dynamic
2004-04-02 15:18:38 +00:00
i f e q ( "@STATIC_LINK@" , "yes" )
2004-04-05 20:48:14 +00:00
INSTALL_TYPE += install_static
2004-04-02 15:18:38 +00:00
e n d i f
2006-04-19 16:38:56 +00:00
i f e q ( "@PKGCONFIG@" , "yes" )
INSTALL_TYPE += install_pkgconfig
e n d i f
2006-04-19 15:23:10 +00:00
install : $( INSTALL_TYPE ) install_include
2008-11-04 17:25:32 +00:00
install_device-mapper : install
2010-04-09 21:42:48 +00:00
install_include : $( srcdir ) /libdevmapper .h
2018-11-29 17:09:27 +01:00
@echo " [INSTALL] $< "
$( Q) $( INSTALL_DATA) -D $< $( includedir) /$( <F)
2004-04-02 15:18:38 +00:00
install_dynamic : install_ @interface @
2001-11-28 20:08:11 +00:00
2004-01-28 03:40:31 +00:00
install_static : install_ @interface @_static
2007-10-03 10:48:27 +00:00
2010-04-09 21:42:48 +00:00
install_ioctl : install_lib_shared
2009-03-16 20:00:10 +00:00
2010-04-09 21:42:48 +00:00
install_pkgconfig : libdevmapper .pc
2018-11-29 17:09:27 +01:00
@echo " [INSTALL] $< "
$( Q) $( INSTALL_DATA) -D $< $( pkgconfigdir) /devmapper.pc
2004-04-02 15:18:38 +00:00
2010-04-09 21:42:48 +00:00
install_ioctl_static : $( LIB_STATIC )
2018-11-29 17:09:27 +01:00
@echo " [INSTALL] $< "
$( Q) $( INSTALL_DATA) -D $< $( usrlibdir) /$( <F)
2002-03-14 16:56:02 +00:00
2010-04-09 21:42:48 +00:00
CLEAN_TARGETS += ioctl/libdevmapper.a
2018-11-29 21:47:11 +01:00
DISTCLEAN_TARGETS += libdevmapper.pc make.tmpl