summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--WHATS_NEW2
-rwxr-xr-xconfigure3
-rw-r--r--configure.in1
-rw-r--r--liblvm/Makefile.in51
-rw-r--r--liblvm/liblvm2app.pc11
5 files changed, 64 insertions, 4 deletions
diff --git a/WHATS_NEW b/WHATS_NEW
index 8c832680..49e803a8 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,7 @@
Version 2.02.50 -
================================
+ Add liblvm2app Makefile installation targets.
+ Add liblvm pkgconfig file.
Use newly-independent LVM_LIBAPI in liblvm soname. E.g. liblvm2app.so.2.1.
Add an API version number, LVM_LIBAPI, to the VERSION string for liblvm.
Pass a pointer to struct cmd_context to init_multiple_segtypes
diff --git a/configure b/configure
index 5dc547ad..df487323 100755
--- a/configure
+++ b/configure
@@ -12685,7 +12685,7 @@ LVM_LIBAPI=`echo "$VER" | $AWK -F '[()]' '{print $2}'`
################################################################################
-ac_config_files="$ac_config_files Makefile make.tmpl daemons/Makefile daemons/clvmd/Makefile daemons/dmeventd/Makefile daemons/dmeventd/libdevmapper-event.pc daemons/dmeventd/plugins/Makefile daemons/dmeventd/plugins/mirror/Makefile daemons/dmeventd/plugins/snapshot/Makefile doc/Makefile include/Makefile lib/Makefile lib/format1/Makefile lib/format_pool/Makefile lib/locking/Makefile lib/mirror/Makefile lib/misc/lvm-version.h lib/snapshot/Makefile libdm/Makefile libdm/libdevmapper.pc liblvm/Makefile man/Makefile po/Makefile scripts/clvmd_init_red_hat scripts/Makefile test/Makefile test/api/Makefile tools/Makefile"
+ac_config_files="$ac_config_files Makefile make.tmpl daemons/Makefile daemons/clvmd/Makefile daemons/dmeventd/Makefile daemons/dmeventd/libdevmapper-event.pc daemons/dmeventd/plugins/Makefile daemons/dmeventd/plugins/mirror/Makefile daemons/dmeventd/plugins/snapshot/Makefile doc/Makefile include/Makefile lib/Makefile lib/format1/Makefile lib/format_pool/Makefile lib/locking/Makefile lib/mirror/Makefile lib/misc/lvm-version.h lib/snapshot/Makefile libdm/Makefile libdm/libdevmapper.pc liblvm/Makefile liblvm/liblvm2app.pc man/Makefile po/Makefile scripts/clvmd_init_red_hat scripts/Makefile test/Makefile test/api/Makefile tools/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -13305,6 +13305,7 @@ do
"libdm/Makefile") CONFIG_FILES="$CONFIG_FILES libdm/Makefile" ;;
"libdm/libdevmapper.pc") CONFIG_FILES="$CONFIG_FILES libdm/libdevmapper.pc" ;;
"liblvm/Makefile") CONFIG_FILES="$CONFIG_FILES liblvm/Makefile" ;;
+ "liblvm/liblvm2app.pc") CONFIG_FILES="$CONFIG_FILES liblvm/liblvm2app.pc" ;;
"man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;;
"po/Makefile") CONFIG_FILES="$CONFIG_FILES po/Makefile" ;;
"scripts/clvmd_init_red_hat") CONFIG_FILES="$CONFIG_FILES scripts/clvmd_init_red_hat" ;;
diff --git a/configure.in b/configure.in
index 1db70b85..7a865ff2 100644
--- a/configure.in
+++ b/configure.in
@@ -852,6 +852,7 @@ lib/snapshot/Makefile
libdm/Makefile
libdm/libdevmapper.pc
liblvm/Makefile
+liblvm/liblvm2app.pc
man/Makefile
po/Makefile
scripts/clvmd_init_red_hat
diff --git a/liblvm/Makefile.in b/liblvm/Makefile.in
index 329ae129..c29909f5 100644
--- a/liblvm/Makefile.in
+++ b/liblvm/Makefile.in
@@ -25,9 +25,14 @@ LIB_VERSION = $(LIB_VERSION_APP)
VERSIONED_SHLIB = $(LIB_NAME).$(LIB_SUFFIX).$(LIB_VERSION_APP)
ifeq ("@STATIC_LINK@", "yes")
-LIB_STATIC = $(LIB_NAME).a
+ LIB_STATIC = $(LIB_NAME).a
+endif
+
+ifeq ("@LIB_SUFFIX@","dylib")
+ LIB_SHARED = $(LIB_NAME).dylib
+else
+ LIB_SHARED = $(LIB_NAME).so
endif
-LIB_SHARED = $(LIB_NAME).so
CLEAN_TARGETS += liblvm.cflow
@@ -35,10 +40,43 @@ include $(top_srcdir)/make.tmpl
LIBS += -ldevmapper -llvm-internal
-$(VERSIONED_SHLIB): %.$(LIB_SUFFIX).$(LIB_VERSION): %.$(LIB_SUFFIX)
+$(VERSIONED_SHLIB): %.$(LIB_SUFFIX).$(LIB_VERSION_APP): %.$(LIB_SUFFIX)
rm -f $@
$(LN_S) $< $@
+.PHONY: install_dynamic install_static install_include install_pkgconfig \
+ distclean_lib distclean
+
+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_include:
+ $(INSTALL) -D $(OWNER) $(GROUP) -m 444 lvm.h $(includedir)/lvm.h
+
+install_dynamic: $(LIB_SHARED)
+ $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \
+ $(libdir)/$(LIB_SHARED).$(LIB_VERSION_APP)
+ $(LN_S) -f $(LIB_SHARED).$(LIB_VERSION_APP) \
+ $(libdir)/$(LIB_SHARED)
+
+install_static: $(LIB_STATIC)
+ $(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \
+ $(libdir)/$(LIB_STATIC).$(LIB_VERSION_APP)
+ $(LN_S) -f $(LIB_STATIC).$(LIB_VERSION_APP) $(libdir)/$(LIB_STATIC)
+
+install_pkgconfig:
+ $(INSTALL) -D $(OWNER) $(GROUP) -m 444 $(LIB_NAME).pc \
+ $(usrlibdir)/pkgconfig/$(LIB_NAME).pc
+
liblvm.cflow: $(SOURCES)
set -e; (echo -n "SOURCES += "; \
echo $(SOURCES) | \
@@ -46,3 +84,10 @@ liblvm.cflow: $(SOURCES)
) > $@
cflow: liblvm.cflow
+
+CLEAN_TARGETS += $(LIB_NAME).$(LIB_SUFFIX)
+
+distclean_lib:
+ $(RM) $(LIB_NAME).pc
+
+distclean: distclean_lib
diff --git a/liblvm/liblvm2app.pc b/liblvm/liblvm2app.pc
new file mode 100644
index 00000000..c50771df
--- /dev/null
+++ b/liblvm/liblvm2app.pc
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: lvm2app
+Description: lvm2 application library
+Version: 2.1
+Cflags: -I${includedir}
+Libs: -L${libdir} -llvm2app
+Libs.private: -ldevmapper