diff options
author | Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> | 2017-07-28 01:01:15 +0530 |
---|---|---|
committer | Joe MacDonald <joe_macdonald@mentor.com> | 2017-09-08 16:39:10 -0400 |
commit | 4437e03095cf8207fd8be50cbf1b5ab67b455e2d (patch) | |
tree | e03aa664c07cdd000470a28a3d1e5cca260ad0a5 /meta-networking | |
parent | 64e1ba5bf78debdbb16b02b2f4909a1d4806022f (diff) | |
download | meta-openembedded-contrib-4437e03095cf8207fd8be50cbf1b5ab67b455e2d.tar.gz |
drbd: Add recipe
DRBD is a block device which is designed to build high availability
clusters. This is done by mirroring a whole block device via (a dedicated)
network. You could see it as a "network RAID-1".
This recipe provides DRBD9 kernel modules drbd.ko and
drbd_transport_tcp.ko.
Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
Diffstat (limited to 'meta-networking')
-rw-r--r-- | meta-networking/recipes-support/drbd/drbd/check_existence_of_modules_before_installing.patch | 24 | ||||
-rw-r--r-- | meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb | 22 |
2 files changed, 46 insertions, 0 deletions
diff --git a/meta-networking/recipes-support/drbd/drbd/check_existence_of_modules_before_installing.patch b/meta-networking/recipes-support/drbd/drbd/check_existence_of_modules_before_installing.patch new file mode 100644 index 0000000000..6414f7305a --- /dev/null +++ b/meta-networking/recipes-support/drbd/drbd/check_existence_of_modules_before_installing.patch @@ -0,0 +1,24 @@ +If CONFIG_BLK_DEV_DRBD kernel config is enabled, then DRBD +does not build drbd.ko here. Under this circumstance do_install +task is going to fail with a below error: +-- snip -- +| install: cannot stat ‘drbd.ko’: No such file or directory +| make[1]: *** [install] Error 1 +-- snip -- + +So, check for kernel module existence before installing. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> +--- drbd-9.0.1-1/drbd/Makefile 2016-07-03 06:54:19.421538690 -0700 ++++ drbd-9.0.1-1/drbd/Makefile_mod 2016-07-03 06:53:18.938801628 -0700 +@@ -158,7 +158,7 @@ else + fi + install -d $(DESTDIR)/lib/modules/$(KERNELRELEASE)/$(MODSUBDIR) + set -e ; for ko in $(MODOBJS); do \ +- install -m 644 $$ko $(DESTDIR)/lib/modules/$(KERNELRELEASE)/$(MODSUBDIR); \ ++ [ -e $$ko ] && install -m 644 $$ko $(DESTDIR)/lib/modules/$(KERNELRELEASE)/$(MODSUBDIR); \ + done + ifeq ($(DESTDIR),/) + ifeq ($(shell uname -r),$(KERNELRELEASE)) diff --git a/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb b/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb new file mode 100644 index 0000000000..e943f2464a --- /dev/null +++ b/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb @@ -0,0 +1,22 @@ +SUMMARY = "Distributed block device driver for Linux" +DESCRIPTION = "DRBD is a block device which is designed to build high \ + availability clusters. This is done by mirroring a whole \ + block device via (a dedicated) network. You could see \ + it as a network raid-1." +HOMEPAGE = "http://oss.linbit.com/drbd/" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018" +DEPENDS = "virtual/kernel" + +SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \ + file://check_existence_of_modules_before_installing.patch" + +SRC_URI[md5sum] = "c1dd58043f46e9926b579aa65d4ea980" +SRC_URI[sha256sum] = "87f72d46db9bad926415b3ab9f5f1397de8c581d2e2ec1addbdd5ce2604e6123" +inherit module + +EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}'" + +do_install () { + oe_runmake install DESTDIR="${D}" +} |