0
0
mirror of https://github.com/openwrt/packages.git synced 2025-07-17 04:04:46 +00:00
Files
packages/utils/lvm2/Makefile
Daniel Golle f2b49654eb lvm2: update to 2.03.33 and libdm to 1.02.207
LVM changes:

Version 2.03.33 - 27th June 2025
================================
  Various spelling, grammar, formatting, test, and build script improvements.
  Override LC_NUMERIC locale if unsuitable for json_std report format.
  Repair raid arrays with transiently lost devices.

Version 2.03.32 - 05th May 2025
===============================
  Lvconvert vdopool conversion properly validates acceptable LVs.
  Accept thin pool data LV as cacheable LV.
  Allow using zram block devices (likely for testing).
  Fix lvresize when resizing COW snapshots already covering origin.
  Fix lvmdbusd read of executed lvm commands output.
  Fix construction of DM UUID for cachevol _cdata and _cmeta devices.
  Ignore PV claims from old metadata when then PV belongs to a new VG.
  Fix integrity metadata rounding.
  Accept --autobackup option in pvresize.

libdm changes:

Version 1.02.207 - 27th June 2025
=================================
  Escape the escape character itself on JSON report format output.
  Fail dm_report_group_create if radix char from locale unsuitable for JSON_STD.

Version 1.02.206 - 05th May 2025
================================
  Add support for using regex in selection criteria for string lists.
  Fix string list selection when using [<item> || <item> ...].

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2025-07-09 00:28:11 +08:00

169 lines
4.8 KiB
Makefile

#
# Copyright (C) 2009-2010 Stefan Monnier
# Copyright (C) 2011-2018 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.03.33
PKG_VERSION_DM:=1.02.207
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz
PKG_SOURCE_URL:=https://sourceware.org/pub/lvm2 \
https://www.mirrorservice.org/sites/sourceware.org/pub/lvm2
PKG_HASH:=be4babd8a986d73279f1e75fbb1d33cb41559b75c2063611781bfeb8c2def139
PKG_BUILD_DIR:=$(BUILD_DIR)/lvm2-$(BUILD_VARIANT)/$(PKG_NAME).$(PKG_VERSION)
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-2.0 LGPL-2.1
PKG_LICENSE_FILES:=COPYING COPYING.lib
PKG_CPE_ID:=cpe:/a:heinz_mauelshagen:lvm2
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/libdevmapper/Default
SECTION:=libs
CATEGORY:=Libraries
TITLE:=The Linux Kernel Device Mapper userspace library
URL:=https://sourceware.org/dm/
VERSION:=$(PKG_VERSION_DM)
DEPENDS:=+kmod-dm +libpthread +libuuid +librt +libblkid
endef
define Package/libdevmapper
$(call Package/libdevmapper/Default)
VARIANT := normal
endef
define Package/libdevmapper-selinux
$(call Package/libdevmapper/Default)
VARIANT := selinux
DEPENDS += +libselinux
PROVIDES := libdevmapper
endef
define Package/libdevmapper/description
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/libdevmapper-selinux/description
$(call Package/libdevmapper/description)
This variant supports SELinux
endef
define Package/lvm2/default
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=Disc
TITLE:=The Linux Logical Volume Manager
URL:=https://sourceware.org/lvm2/
DEPENDS:=+libreadline +libncurses +libaio
endef
define Package/lvm2
$(call Package/lvm2/default)
VARIANT := normal
DEPENDS += +libdevmapper
endef
define Package/lvm2-selinux
$(call Package/lvm2/default)
VARIANT := selinux
DEPENDS += +libdevmapper-selinux
PROVIDES := lvm2
endef
define Package/lvm2/description
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
define Package/lvm2-selinux/description
$(call Package/lvm2/description)
This variant supports SELinux
endef
CONFIGURE_ARGS += \
--disable-o_direct \
--with-default-pid-dir=/var/run \
--with-default-dm-run-dir=/var/run \
--with-default-run-dir=/var/run/lvm \
--with-default-locking-dir=/var/lock/lvm \
--without-libnvme \
--$(if $(findstring selinux,$(BUILD_VARIANT)),en,dis)able-selinux
ifneq ($(shell /bin/sh -c "echo -n 'X'"),X)
MAKE_SHELL = SHELL=/bin/bash
endif
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(FPIC)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
$(MAKE_SHELL) \
install
endef
define Build/InstallDev
$(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
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libdevmapper.so.* $(1)/usr/lib
endef
Package/libdevmapper-selinux/install = $(Package/libdevmapper/install)
define Package/lvm2/install
$(INSTALL_DIR) $(1)/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/lvm $(1)/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dmsetup $(1)/sbin
$(INSTALL_DIR) $(1)/etc/lvm
$(SED) '/^[[:space:]]*\(#\|$$$$\)/d; /cache_dir/s@.*@ cache_dir = "/tmp/lvm/cache"@' $(PKG_INSTALL_DIR)/etc/lvm/lvm.conf
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/lvm/lvm.conf $(1)/etc/lvm/
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/lvm/lvmlocal.conf $(1)/etc/lvm/
$(INSTALL_DIR) $(1)/etc/lvm/profile
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/lvm/profile/* $(1)/etc/lvm/profile/
$(INSTALL_DIR) $(1)/lib/preinit
$(INSTALL_DATA) ./files/lvm2.preinit $(1)/lib/preinit/80_lvm2
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/lvm2.init $(1)/etc/init.d/lvm2
$(INSTALL_DIR) $(1)/etc/hotplug.d/block
$(INSTALL_DATA) ./files/lvm2.hotplug $(1)/etc/hotplug.d/block/20-lvm2
$(FIND) $(PKG_INSTALL_DIR)/usr/sbin/ -type l -exec $(CP) -a {} $(1)/sbin/ \;
endef
Package/lvm2-selinux/install = $(Package/lvm2/install)
define Package/lvm2/conffiles
/etc/lvm/lvm.conf
endef
Package/lvm2-selinux/conffiles = $(Package/lvm2/conffiles)
$(eval $(call BuildPackage,libdevmapper))
$(eval $(call BuildPackage,libdevmapper-selinux))
$(eval $(call BuildPackage,lvm2))
$(eval $(call BuildPackage,lvm2-selinux))