tags 564810 patch thanks Luca Bruno wrote: >> Please consider building lvm2 with the --enable-applib configure >> switch and packaging the resulting lvm2app library files. > > I'd join this request, as I'm personally interested in it and gparted > could benefit of this too, soon. > Please enable it, or let us know if you need additional manpower for > the package.
Hi,
please find attached this patch. It does
1.) Add a liblvm2app-dev and liblvm2app2.1 binary package to debian/control
2.) Add liblvm2app2.1.{install,symbols} and liblvm2app-dev.install
3.) Update debian/patches/libs-cleanup.patch, so liblvm2app correctly links
against libdevmapper.
4.) debian/rules
- Pass --enable-applib to configure in setup-deb
- As liblvm has no separate install target (like e.g. install_lvm2), define a
install-deb-all target which runs make install
- Add install-liblvm2app which takes care of creating the liblvm2app-dev and
liblvm2app2.1 binary package
Patch is tested.
Please consider it in your next upload.
Thanks,
Michael
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
diff --git a/debian/control b/debian/control
index 8444459..1ccdac4 100644
--- a/debian/control
+++ b/debian/control
@@ -35,6 +35,23 @@ Description: The Linux Logical Volume Manager
volume groups can be allocated to logical volumes, which are accessed as
regular block devices.
+Package: liblvm2app-dev
+Section: libdevel
+Architecture: any
+Depends: ${misc:Depends}, liblvm2app2.1 (= ${binary:Version}), libdevmapper-dev
+Description: LVM2 application library - development files
+ This package contains files needed to develop applications that use the
+ lvm2app library.
+
+Package: liblvm2app2.1
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: LVM2 application library
+ This package contains the lvm2app shared library. It allows easier access
+ to the basic LVM objects and provides functions to enumerate, create or
+ modify them.
+
Package: clvm
Section: admin
Priority: extra
diff --git a/debian/liblvm2app-dev.install b/debian/liblvm2app-dev.install
new file mode 100644
index 0000000..cae75ab
--- /dev/null
+++ b/debian/liblvm2app-dev.install
@@ -0,0 +1,3 @@
+usr/include/lvm2app.h
+usr/lib/pkgconfig/lvm2app.pc
+lib/liblvm2app.so usr/lib/
diff --git a/debian/liblvm2app2.1.install b/debian/liblvm2app2.1.install
new file mode 100644
index 0000000..4a845ef
--- /dev/null
+++ b/debian/liblvm2app2.1.install
@@ -0,0 +1 @@
+lib/liblvm2app.so.* usr/lib/
diff --git a/debian/liblvm2app2.1.symbols b/debian/liblvm2app2.1.symbols
new file mode 100644
index 0000000..b2c792d
--- /dev/null
+++ b/debian/liblvm2app2.1.symbols
@@ -0,0 +1,43 @@
+liblvm2app.so.2.1 liblvm2app2.1 #MINVER#
+ b...@base 2.02.54
+ lvm_config_overr...@base 2.02.54
+ lvm_config_rel...@base 2.02.54
+ lvm_err...@base 2.02.54
+ lvm_er...@base 2.02.54
+ lvm_i...@base 2.02.54
+ lvm_library_get_vers...@base 2.02.54
+ lvm_list_vg_na...@base 2.02.54
+ lvm_list_vg_uu...@base 2.02.54
+ lvm_lv_activ...@base 2.02.54
+ lvm_lv_deactiv...@base 2.02.54
+ lvm_lv_get_n...@base 2.02.54
+ lvm_lv_get_s...@base 2.02.54
+ lvm_lv_get_u...@base 2.02.54
+ lvm_lv_is_act...@base 2.02.54
+ lvm_lv_is_suspen...@base 2.02.54
+ lvm_pv_get_mda_co...@base 2.02.54
+ lvm_pv_get_n...@base 2.02.54
+ lvm_pv_get_u...@base 2.02.54
+ lvm_q...@base 2.02.54
+ lvm_s...@base 2.02.54
+ lvm_vg_cl...@base 2.02.54
+ lvm_vg_cre...@base 2.02.54
+ lvm_vg_create_lv_lin...@base 2.02.54
+ lvm_vg_ext...@base 2.02.54
+ lvm_vg_get_extent_co...@base 2.02.54
+ lvm_vg_get_extent_s...@base 2.02.54
+ lvm_vg_get_free_extent_co...@base 2.02.54
+ lvm_vg_get_free_s...@base 2.02.54
+ lvm_vg_get_n...@base 2.02.54
+ lvm_vg_get_pv_co...@base 2.02.54
+ lvm_vg_get_se...@base 2.02.54
+ lvm_vg_get_s...@base 2.02.54
+ lvm_vg_get_u...@base 2.02.54
+ lvm_vg_list_...@base 2.02.54
+ lvm_vg_list_...@base 2.02.54
+ lvm_vg_o...@base 2.02.54
+ lvm_vg_red...@base 2.02.54
+ lvm_vg_rem...@base 2.02.54
+ lvm_vg_remove...@base 2.02.54
+ lvm_vg_set_extent_s...@base 2.02.54
+ lvm_vg_wr...@base 2.02.54
diff --git a/debian/patches/libs-cleanup.patch b/debian/patches/libs-cleanup.patch
index 495dfcb..267faf7 100644
--- a/debian/patches/libs-cleanup.patch
+++ b/debian/patches/libs-cleanup.patch
@@ -189,14 +189,14 @@
$(LIB_SHARED): $(OBJECTS) $(LDDEPS)
$(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \
- $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
-+ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) -o $@
++ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
endif
ifeq ("@LIB_SUFFIX@","dylib")
$(LIB_SHARED): $(OBJECTS) $(LDDEPS)
$(CC) -dynamiclib -dylib_current_version,$(LIB_VERSION) \
- $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
-+ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) -o $@
++ $(CFLAGS) $(LDFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
endif
%.so: %.a
diff --git a/debian/rules b/debian/rules
index fad53ac..ba348f2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -18,6 +18,8 @@ DEVMAPPER_VERSION = 2:$(DEVMAPPER_VERSION_PLAIN)
DEVMAPPER_VERSION_DEBIAN = $(DEVMAPPER_VERSION)-$(VERSION_DEBIAN)
DEVMAPPER_VERSION_FILE = $(DEVMAPPER_VERSION_PLAIN)-$(VERSION_DEBIAN)
+LVM2APP_ABINAME = 2.1
+
BUILD_DIR = debian/build
STAMPS_DIR = debian/stamps
@@ -71,7 +73,8 @@ $(STAMPS_DIR)/setup-deb: $(STAMPS_DIR)/source
--with-device-gid=6 \
--with-device-mode=0660 \
--enable-pkgconfig \
- --enable-readline
+ --enable-readline \
+ --enable-applib
touch $@
$(STAMPS_DIR)/setup-udeb: SOURCE_DIR = $(BUILD_DIR)/source
@@ -135,7 +138,15 @@ $(STAMPS_DIR)/install-udeb-%: $(STAMPS_DIR)/build-udeb
$(MAKE) -C $(BUILD_DIR)/build-udeb install_$* DESTDIR=$(CURDIR)/$(DIR) LIB_VERSION_DM=$(DEVMAPPER_ABINAME)
touch $@
-install: $(addprefix install-,libdevmapper libdevmapper-udeb dmsetup dmsetup-udeb lvm2 lvm2-udeb clvm)
+$(STAMPS_DIR)/install-deb-all: DIR = $(BUILD_DIR)/install-deb-all
+$(STAMPS_DIR)/install-deb-all: $(STAMPS_DIR)/build-deb
+ dh_testdir
+ dh_testroot
+ rm -rf $(DIR)
+ $(MAKE) -C $(BUILD_DIR)/build-deb install DESTDIR=$(CURDIR)/$(DIR)
+ touch $@
+
+install: $(addprefix install-,libdevmapper libdevmapper-udeb liblvm2app dmsetup dmsetup-udeb lvm2 lvm2-udeb clvm)
install-base:
dh_installdocs
@@ -198,7 +209,6 @@ install-dmsetup-udeb: $(STAMPS_DIR)/install-udeb-device-mapper
dh_md5sums
dpkg-deb --build debian/$(PACKAGE_NAME) ../$(PACKAGE_FILE)
-
install-libdevmapper: export DH_OPTIONS = -plibdevmapper-dev -plibdevmapper$(DEVMAPPER_ABINAME)
install-libdevmapper: DIR = $(BUILD_DIR)/install-deb-device-mapper
install-libdevmapper: $(STAMPS_DIR)/install-deb-device-mapper
@@ -240,6 +250,18 @@ install-libdevmapper-udeb: $(STAMPS_DIR)/install-udeb-device-mapper
dh_md5sums
dpkg-deb --build debian/$(PACKAGE_NAME) ../$(PACKAGE_FILE)
+install-liblvm2app: export DH_OPTIONS = -pliblvm2app-dev -pliblvm2app$(LVM2APP_ABINAME)
+install-liblvm2app: DIR = $(BUILD_DIR)/install-deb-all
+install-liblvm2app: $(STAMPS_DIR)/install-deb-all
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_install --sourcedir=$(DIR)
+ dh_installchangelogs WHATS_NEW
+ dh_installexamples
+ dh_makeshlibs
+ $(MAKE) -f debian/rules install-base
+
install-lvm2: export DH_OPTIONS = -plvm2
install-lvm2: DIR = $(BUILD_DIR)/install-deb-lvm2
install-lvm2: $(STAMPS_DIR)/install-deb-lvm2
signature.asc
Description: OpenPGP digital signature

