upgrade lvm2 package
authorLuka Perkov <luka@openwrt.org>
Mon, 25 Apr 2011 20:36:26 +0000 (20:36 +0000)
committerLuka Perkov <luka@openwrt.org>
Mon, 25 Apr 2011 20:36:26 +0000 (20:36 +0000)
SVN-Revision: 26754

utils/lvm2/Makefile
utils/lvm2/patches/100-readline-link.patch [deleted file]

index 9b38df7ddaadddfebac501c4996cec7c852cf14a..27767294f48c9f01dd89d8bab1347bf894bc1787 100644 (file)
@@ -1,5 +1,6 @@
 #
 # Copyright (C) 2009, 2010 Stefan Monnier
+# Copyright (C) 2011 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v3+.
 # See /LICENSE for more information.
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=LVM2
-PKG_VERSION:=2.02.64
-PKG_RELEASE:=2
+PKG_VERSION:=2.02.84
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz
-PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2/ \
-               http://netbsd.mirrors.tds.net/pub/sourceware.org/lvm2/
-PKG_MD5SUM:=59fc0f7f6703a8c7f12df6b7d2e509fb
-# 2.02.43 = fc34655706a2aa116b92328b24fad619
-# 2.02.44 = 4ed7b99903a6fc5165b7b0b8def42486
-# 2.02.53 = f9ae3579bf15467b7f1d7aea8b9ed9b3
-# 2.02.60 = 33e0e0f4b4582d495ff619696c634b2a
-# 2.02.63 = 74bb3beeefe68d539ab712e92fddfb39
-
-# OpenWRT normally expects the tarball to expand into
-# $(PKG_NAME)-$(PKG_VERSION), and this magic incantation seems to make it
-# understand that LVM2's tarball expands into $(PKG_NAME).$(PKG_VERSION).
+PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2
+PKG_MD5SUM:=8b4e0897ee48f02c0dff11940e44e23b
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION)
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/libdevmapper/Default
-  SUBMENU:=disc
-  MAINTAINER:=Stefan Monnier <monnier@iro.umontreal.ca>
-endef
-
 define Package/libdevmapper
-  $(call Package/libdevmapper/Default)
   SECTION:=libs
   CATEGORY:=Libraries
-  DEPENDS:=+kmod-dm
   TITLE:=The Linux Kernel Device Mapper userspace library
   URL:=http://sourceware.org/dm/
+  DEPENDS:=+kmod-dm
+  MAINTAINER:=Luka Perkov <openwrt@lukaperkov.net>
 endef
 
 define Package/libdevmapper/description
-  The Linux Kernel Device Mapper is the LVM (Linux Logical Volume Management)
-  Team\'s implementation of a minimalistic kernel-space driver that handles
-  volume management, while keeping knowledge of the underlying device layout
-  in user-space.  This makes it useful for not only LVM, but EVMS, software
-  raid, and other drivers that create "virtual" block devices.
-  .
-  This package contains the (user-space) shared library for accessing the
-  device-mapper; it allows usage of the device-mapper through a clean,
-  consistent interface (as opposed to through kernel ioctls).
+ The device-mapper is a component of the 2.6 linux kernel that supports logical
+ volume management. It is required by LVM2 and EVMS.
 endef
 
 define Package/lvm2
-  $(call Package/libdevmapper/Default)
   SECTION:=utils
   CATEGORY:=Utilities
+  SUBMENU:=disc
   TITLE:=The Linux Logical Volume Manager
-  DEPENDS:=+libdevmapper +libreadline +libncurses
   URL:=http://sourceware.org/lvm2/
+  DEPENDS:=+libdevmapper +libreadline +libncurses
+  MAINTAINER:=Luka Perkov <openwrt@lukaperkov.net>
 endef
 
 define Package/lvm2/description
-  This is LVM2, the rewrite of The Linux Logical Volume Manager.  LVM
-  supports enterprise level volume management of disk and disk subsystems
-  by grouping arbitrary disks into volume groups. The total capacity of
-  volume groups can be allocated to logical volumes, which are accessed as
-  regular block devices.
+ LVM2 refers to a new userspace toolset that provide logical volume management
+ facilities on linux. It is reasonably backwards-compatible with the original
+ LVM toolset.
 endef
 
-# I got problems building with readline, so I originally just disabled it.
-# I've since added patch 100-readline-link which fixes the problem instead.
-# CONFIGURE_ARGS += --disable-readline
-
-# Apparently we have problems when "read"ing using O_DIRECT, maybe because
-# of uClibc.  More specifically, with O_DIRECT lvm becomes erratic, showing
-# non-deterministic behavior: `lvs', `pvs' and friends can return anything
-# from empty lists, to completely correct result, as well as checksum errors,
-# complaints about missing volume groups, ... each run of the command can
-# return something different.  The "root" of the problem is (maybe among
-# other places) in the "_io" function in dev-io.c, where calls to the "read"
-# function often return garbage, although not always.  There's nothing
-# obviously wrong with the dev-io.c code, so the bug may just as well be in
-# uClibc or in the kernel (it appeared on the MIPS platform and could be
-# related to cache coherency issues).
-# Debian Lenny's lvm2 also disables O_DIRECT on "arm armeb hppa mips mipsel".
 CONFIGURE_ARGS += --disable-o_direct
 
 define Build/Compile
        $(MAKE) -C $(PKG_BUILD_DIR) \
-               CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(FPIC)" \
+               CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
                DESTDIR="$(PKG_INSTALL_DIR)" \
                install
 endef
 
 define Build/InstallDev
-       mkdir -p $(1)/usr/include
-       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/libdevmapper.h $(1)/usr/include/
-       mkdir -p $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdevmapper.so* $(1)/usr/lib/
-       mkdir -p $(1)/usr/lib/pkgconfig
-       $(CP) $(PKG_BUILD_DIR)/libdm/libdevmapper.pc $(1)/usr/lib/pkgconfig/
+       $(INSTALL_DIR) $(1)/usr/include
+       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/libdevmapper.h $(1)/usr/include
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libdevmapper.so* $(1)/usr/lib
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+       $(CP) $(PKG_BUILD_DIR)/libdm/libdevmapper.pc $(1)/usr/lib/pkgconfig
 endef
 
 define Package/libdevmapper/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libdevmapper.so.* $(1)/usr/lib/
+       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libdevmapper.so.* $(1)/usr/lib
 endef
 
-# This rule only installs the `lvm' executable.  Debian also installs
-# a whole bunch of symlinks so that instead of `lvm <foo>' you can directly
-# run `<foo>'.
 define Package/lvm2/install
        $(INSTALL_DIR) $(1)/sbin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/lvm $(1)/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/lvm $(1)/sbin
        $(INSTALL_DIR) $(1)/etc/lvm
-       $(INSTALL_DATA) $(PKG_BUILD_DIR)/doc/example.conf $(1)/etc/lvm/lvm.conf
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/doc/example.conf $(1)/etc/lvm/lvm.conf
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/lvm2.init $(1)/etc/init.d/lvm2
 endef
diff --git a/utils/lvm2/patches/100-readline-link.patch b/utils/lvm2/patches/100-readline-link.patch
deleted file mode 100644 (file)
index 39783e8..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
---- a/make.tmpl.in
-+++ b/make.tmpl.in
-@@ -116,11 +116,9 @@ ifeq ("@INTL@", "yes")
- endif
- LDFLAGS += -L$(top_builddir)/libdm -L$(top_builddir)/lib
--CLDFLAGS += -L$(top_builddir)/libdm -L$(top_builddir)/lib
- ifeq ("@DMEVENTD@", "yes")
-   LDFLAGS += -L$(top_builddir)/daemons/dmeventd
--  CLDFLAGS += -L$(top_builddir)/daemons/dmeventd
- endif
- ifeq ("@DM_COMPAT@", "yes")
-@@ -291,11 +289,11 @@ TARGETS += $(LIB_SHARED).$(LIB_VERSION)
- $(LIB_SHARED).$(LIB_VERSION): $(OBJECTS) $(LDDEPS)
- ifeq ("@LIB_SUFFIX@","so")
-       $(CC) -shared -Wl,-soname,$(notdir $@) \
--              $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
-+              $(CFLAGS) $(CLDFLAGS) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@
- endif
- ifeq ("@LIB_SUFFIX@","dylib")
-       $(CC) -dynamiclib -dylib_current_version,$(LIB_VERSION) \
--              $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
-+              $(CFLAGS) $(CLDFLAGS) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@
- endif
- $(LIB_SHARED): $(LIB_SHARED).$(LIB_VERSION)
-@@ -313,7 +311,7 @@ endif
- %.so: %.a
-       $(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \
--      $(CFLAGS) $(CLDFLAGS) $(LIBS) -o $@ \
-+      $(CFLAGS) $(CLDFLAGS) $(LDFLAGS) $(LIBS) -o $@ \
-       @CLDWHOLEARCHIVE@ $< @CLDNOWHOLEARCHIVE@
- $(LIB_STATIC): $(OBJECTS)