Split package
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
name: libblockdev
|
name: libblockdev
|
||||||
description: A library for manipulating block devices
|
description: A library for manipulating block devices
|
||||||
version: 3.4.0
|
version: 3.4.0
|
||||||
revision: 1
|
revision: 2
|
||||||
url: https://github.com/storaged-project/libblockdev
|
url: https://github.com/storaged-project/libblockdev
|
||||||
license: LGPL2.1-or-later
|
license: LGPL2.1-or-later
|
||||||
architecture: any
|
architecture: any
|
||||||
@@ -21,7 +21,6 @@ make_depends:
|
|||||||
- keyutils
|
- keyutils
|
||||||
- kmod
|
- kmod
|
||||||
- libatasmart
|
- libatasmart
|
||||||
- libbytesize
|
|
||||||
- libnvme
|
- libnvme
|
||||||
- libyaml
|
- libyaml
|
||||||
- lvm2
|
- lvm2
|
||||||
@@ -37,3 +36,143 @@ downloads:
|
|||||||
extract_to: ${BPM_SOURCE}
|
extract_to: ${BPM_SOURCE}
|
||||||
extract_strip_components: 1
|
extract_strip_components: 1
|
||||||
checksum: 65ef9a37babd44b85b8ff9b273f90f9f7d5f8ff7b0c76a8edb69240325fd83f4
|
checksum: 65ef9a37babd44b85b8ff9b273f90f9f7d5f8ff7b0c76a8edb69240325fd83f4
|
||||||
|
split_packages:
|
||||||
|
- name: libblockdev
|
||||||
|
optional_depends:
|
||||||
|
- libblockdev-btrfs
|
||||||
|
- libblockdev-crypto
|
||||||
|
- libblockdev-dm
|
||||||
|
- libblockdev-fs
|
||||||
|
- libblockdev-loop
|
||||||
|
- libblockdev-lvm
|
||||||
|
- libblockdev-mdraid
|
||||||
|
- libblockdev-mpath
|
||||||
|
- libblockdev-nvme
|
||||||
|
- libblockdev-part
|
||||||
|
- libblockdev-smart
|
||||||
|
- libblockdev-swap
|
||||||
|
- python-libblockdev
|
||||||
|
- name: libblockdev-btrfs
|
||||||
|
description: BTRFS support for libblockdev
|
||||||
|
depends:
|
||||||
|
- btrfs-progs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- libbytesize
|
||||||
|
- name: libblockdev-crypto
|
||||||
|
description: Crypto support for libblockdev
|
||||||
|
depends:
|
||||||
|
- cryptsetup
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- keyutils
|
||||||
|
- libblockdev
|
||||||
|
- cryptsetup
|
||||||
|
- nss
|
||||||
|
- util-linux
|
||||||
|
- volume_key
|
||||||
|
- name: libblockdev-dm
|
||||||
|
description: Device-mapper support for libblockdev
|
||||||
|
depends:
|
||||||
|
- lvm2
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- name: libblockdev-fs
|
||||||
|
description: Filesystem support for libblockdev
|
||||||
|
depends:
|
||||||
|
- e2fsprogs
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- libbytesize
|
||||||
|
- parted
|
||||||
|
- util-linux
|
||||||
|
optional_depends:
|
||||||
|
- btrfs-progs
|
||||||
|
- dosfstools
|
||||||
|
- exfatprogs
|
||||||
|
- f2fs-tools
|
||||||
|
- name: libblockdev-loop
|
||||||
|
description: Loop device support for libblockdev
|
||||||
|
depends:
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- name: libblockdev-lvm
|
||||||
|
description: LVM support for libblockdev
|
||||||
|
depends:
|
||||||
|
- lvm2
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- libbytesize
|
||||||
|
- libyaml
|
||||||
|
- name: libblockdev-mdraid
|
||||||
|
description: MDRAID support for libblockdev
|
||||||
|
depends:
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- libbytesize
|
||||||
|
- mdadm
|
||||||
|
- name: libblockdev-mpath
|
||||||
|
description: Multipath support for libblockdev
|
||||||
|
depends:
|
||||||
|
- lvm2
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- name: libblockdev-nvdimm
|
||||||
|
description: NVDIMM support for libblockdev
|
||||||
|
depends:
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- ndctl
|
||||||
|
- util-linux
|
||||||
|
- name: libblockdev-nvme
|
||||||
|
description: NVME support for libblockdev
|
||||||
|
depends:
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- libnvme
|
||||||
|
- name: libblockdev-part
|
||||||
|
description: Partitioning support for libblockdev
|
||||||
|
depends:
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- util-linux
|
||||||
|
- name: libblockdev-smart
|
||||||
|
description: SMART support for libblockdev
|
||||||
|
depends:
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- json-glib
|
||||||
|
- libatasmart
|
||||||
|
- libblockdev
|
||||||
|
optional_depends:
|
||||||
|
- smartmontools
|
||||||
|
- name: libblockdev-swap
|
||||||
|
description: Swap support for libblockdev
|
||||||
|
depends:
|
||||||
|
- gcc-libs
|
||||||
|
- glib
|
||||||
|
- glibc
|
||||||
|
- libblockdev
|
||||||
|
- util-linux
|
||||||
|
- name: python-libblockdev
|
||||||
|
description: Python bindings for libblockdev
|
||||||
|
depends:
|
||||||
|
- glib
|
||||||
|
- libbytesize
|
||||||
|
- python3
|
||||||
|
- python-pygobject
|
||||||
|
|||||||
@@ -19,11 +19,168 @@ check() {
|
|||||||
make check
|
make check
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_pick() {
|
||||||
|
local p="$1" f d; shift
|
||||||
|
for f; do
|
||||||
|
[ -d "$BPM_WORKDIR"/output_"$p" ] || { echo "Split package $p not found"; exit 1; }
|
||||||
|
d="$BPM_WORKDIR"/output_"$p"/"${f#$BPM_OUTPUT}"
|
||||||
|
mkdir -p "$(dirname "$d")"
|
||||||
|
mv "$f" "$d"
|
||||||
|
rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
# The package function is executed in the source directory
|
# The package function is executed in the source directory
|
||||||
# This function is used to move the compiled files into the output directory
|
# This function is used to move the compiled files into the output directory
|
||||||
package() {
|
package_libblockdev() {
|
||||||
make DESTDIR="$BPM_OUTPUT" install
|
make DESTDIR="$BPM_OUTPUT" install
|
||||||
|
|
||||||
|
cd "$BPM_OUTPUT"
|
||||||
|
|
||||||
|
# Move btrfs files into split package
|
||||||
|
_pick libblockdev-btrfs usr/include/blockdev/btrfs.h
|
||||||
|
_pick libblockdev-btrfs usr/lib/libbd_btrfs.*
|
||||||
|
|
||||||
|
# Move crypto files into split package
|
||||||
|
_pick libblockdev-crypto usr/include/blockdev/crypto.h
|
||||||
|
_pick libblockdev-crypto usr/lib/libbd_crypto.*
|
||||||
|
|
||||||
|
# Move device-mapper files into split package
|
||||||
|
_pick libblockdev-dm usr/include/blockdev/dm.h
|
||||||
|
_pick libblockdev-dm usr/lib/libbd_dm.*
|
||||||
|
|
||||||
|
# Move filesystem files into split package
|
||||||
|
_pick libblockdev-fs usr/bin/vfat-resize
|
||||||
|
_pick libblockdev-fs usr/include/blockdev/fs.h
|
||||||
|
_pick libblockdev-fs usr/include/blockdev/fs/*.h
|
||||||
|
_pick libblockdev-fs usr/lib/libbd_fs.*
|
||||||
|
|
||||||
|
# Move loop device files into split package
|
||||||
|
_pick libblockdev-loop usr/include/blockdev/loop.h
|
||||||
|
_pick libblockdev-loop usr/lib/libbd_loop.*
|
||||||
|
|
||||||
|
# Move lvm files into split package
|
||||||
|
_pick libblockdev-lvm etc/libblockdev/3/conf.d/10-lvm-dbus.cfg
|
||||||
|
_pick libblockdev-lvm usr/bin/lvm-cache-stats
|
||||||
|
_pick libblockdev-lvm usr/include/blockdev/lvm.h
|
||||||
|
_pick libblockdev-lvm usr/lib/libbd_lvm.*
|
||||||
|
_pick libblockdev-lvm usr/lib/libbd_lvm-dbus.*
|
||||||
|
|
||||||
|
# Move mdraid files into split package
|
||||||
|
_pick libblockdev-mdraid usr/include/blockdev/mdraid.h
|
||||||
|
_pick libblockdev-mdraid usr/lib/libbd_mdraid.*
|
||||||
|
|
||||||
|
# Move mpath files into split package
|
||||||
|
_pick libblockdev-mpath usr/include/blockdev/mpath.h
|
||||||
|
_pick libblockdev-mpath usr/lib/libbd_mpath.*
|
||||||
|
|
||||||
|
# Move nvdimm files into split package
|
||||||
|
_pick libblockdev-nvdimm usr/include/blockdev/nvdimm.h
|
||||||
|
_pick libblockdev-nvdimm usr/lib/libbd_nvdimm.*
|
||||||
|
|
||||||
|
# Move nvme files into split package
|
||||||
|
_pick libblockdev-nvme usr/include/blockdev/nvme.h
|
||||||
|
_pick libblockdev-nvme usr/lib/libbd_nvme.*
|
||||||
|
|
||||||
|
# Move part files into split package
|
||||||
|
_pick libblockdev-part usr/include/blockdev/part.h
|
||||||
|
_pick libblockdev-part usr/lib/libbd_part.*
|
||||||
|
|
||||||
|
# Move smart files into split package
|
||||||
|
_pick libblockdev-smart usr/include/blockdev/smart.h
|
||||||
|
_pick libblockdev-smart usr/lib/libbd_smart*
|
||||||
|
|
||||||
|
# Move swap files into split package
|
||||||
|
_pick libblockdev-swap usr/include/blockdev/swap.h
|
||||||
|
_pick libblockdev-swap usr/lib/libbd_swap.*
|
||||||
|
|
||||||
|
# Move python files into split package
|
||||||
|
_pick python-libblockdev usr/lib/python*
|
||||||
|
|
||||||
# Install package license
|
# Install package license
|
||||||
install -Dm644 "$BPM_SOURCE"/LICENSE "$BPM_OUTPUT"/usr/share/licenses/libblockdev/LICENSE
|
install -Dm644 "$BPM_SOURCE"/LICENSE "$BPM_OUTPUT"/usr/share/licenses/libblockdev/LICENSE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
package_libblockdev-btrfs() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-btrfs
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-crypto() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-crypto
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-dm() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-dm
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-fs() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-fs
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-loop() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-loop
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-lvm() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-lvm
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-mdraid() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-mdraid
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-mpath() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-mpath
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-nvdimm() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-nvdimm
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-nvme() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-nvme
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-part() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-part
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-smart() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-smart
|
||||||
|
}
|
||||||
|
|
||||||
|
package_libblockdev-swap() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/libblockdev-swap
|
||||||
|
}
|
||||||
|
|
||||||
|
package_python-libblockdev() {
|
||||||
|
# Install package license
|
||||||
|
install -d "$BPM_OUTPUT"/usr/share/licenses/
|
||||||
|
ln -sf libblockdev "$BPM_OUTPUT"/usr/share/licenses/python-libblockdev
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user