mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-22 17:35:59 +03:00
23b059e7b7
Patch is inspired by Debian's extra patch. - removes OWNER & GROUP make vars they are parts of INSTALL command. - adds INSTALL_PROGRAM for executable, uses $(INSTALL) - adds INSTALL_DATA for non-executable data, uses ($INSTALL) - adds INSTALL_WDATA for writable non-executable data, uses ($INSTALL) - adds configure option --enable-write_install - to support installatin of writable files used by distribution - replaces usage of ifeq @LIB_SUFFIX@ with $(LIB_SUFFIX) - installs .a files from static builds without executable flag - installs .a files to $(usrlibdir) instead of $(libdir) - installs all static binaries to $(staticdir) - create .so links for devel package in $(usrlibdir) instead of $(libdir) - makes .so and .so.LIB_VERSION files within builddir - removes VERSIONED_SHLIB and created versioned LIB_SHARED automagicaly - install LIB_SHARED via install_lib_shared target - install plugins via install_lib_shared_plugin target - prints whole 'install' command during installation instead of less informative "Installing $(something) $(somewhere)" - install multiple man pages with one INSTALL command - use DISTCLEAN_TARGETS instead of creating multiple distclean targets
95 lines
2.4 KiB
Makefile
95 lines
2.4 KiB
Makefile
#
|
|
# Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
|
|
# Copyright (C) 2004-2010 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This file is part of the device-mapper userspace tools.
|
|
#
|
|
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
top_builddir = @top_builddir@
|
|
|
|
SOURCES =\
|
|
datastruct/bitset.c \
|
|
datastruct/hash.c \
|
|
datastruct/list.c \
|
|
libdm-common.c \
|
|
libdm-file.c \
|
|
libdm-deptree.c \
|
|
libdm-string.c \
|
|
libdm-report.c \
|
|
mm/dbg_malloc.c \
|
|
mm/pool.c \
|
|
regex/matcher.c \
|
|
regex/parse_rx.c \
|
|
regex/ttree.c \
|
|
$(interface)/libdm-iface.c
|
|
|
|
INCLUDES = -I$(srcdir)/$(interface) -I$(srcdir)
|
|
|
|
ifeq ("@STATIC_LINK@", "yes")
|
|
LIB_STATIC = $(interface)/libdevmapper.a
|
|
endif
|
|
|
|
LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX)
|
|
LIB_VERSION = $(LIB_VERSION_DM)
|
|
TARGETS += libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION)
|
|
|
|
CFLOW_LIST = $(SOURCES)
|
|
CFLOW_LIST_TARGET = libdevmapper.cflow
|
|
|
|
include $(top_builddir)/make.tmpl
|
|
|
|
DEFS += -DDM_DEVICE_UID=@DM_DEVICE_UID@ -DDM_DEVICE_GID=@DM_DEVICE_GID@ \
|
|
-DDM_DEVICE_MODE=@DM_DEVICE_MODE@
|
|
|
|
LIBS += $(SELINUX_LIBS) $(UDEV_LIBS)
|
|
|
|
device-mapper: all
|
|
|
|
libdevmapper.$(LIB_SUFFIX) libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION): $(LIB_SHARED)
|
|
$(LN_S) -f $< $@
|
|
|
|
.PHONY: install_dynamic install_static install_include \
|
|
install_ioctl install_ioctl_static \
|
|
install_pkgconfig
|
|
|
|
INSTALL_TYPE = install_dynamic
|
|
|
|
ifeq ("@STATIC_LINK@", "yes")
|
|
INSTALL_TYPE += install_static
|
|
endif
|
|
|
|
ifeq ("@PKGCONFIG@", "yes")
|
|
INSTALL_TYPE += install_pkgconfig
|
|
endif
|
|
|
|
install: $(INSTALL_TYPE) install_include
|
|
|
|
install_device-mapper: install
|
|
|
|
install_include: $(srcdir)/libdevmapper.h
|
|
$(INSTALL_DATA) -D $< $(includedir)/$(<F)
|
|
|
|
install_dynamic: install_@interface@
|
|
|
|
install_static: install_@interface@_static
|
|
|
|
install_ioctl: install_lib_shared
|
|
|
|
install_pkgconfig: libdevmapper.pc
|
|
$(INSTALL_DATA) -D $< $(usrlibdir)/pkgconfig/devmapper.pc
|
|
|
|
install_ioctl_static: $(LIB_STATIC)
|
|
$(INSTALL_DATA) -D $< $(usrlibdir)/$(<F)
|
|
|
|
CLEAN_TARGETS += ioctl/libdevmapper.a
|
|
DISTCLEAN_TARGETS += libdevmapper.pc
|