summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-11-26 19:51:25 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2010-11-26 19:51:25 +0100
commit75f4a97302c2f1070661e58936bba75250c9e445 (patch)
treebe3969b057bf1eae31f330c8008d8722de9ceeed
parent45b7d5e9b1b744b8f60ce252f5ea498cec979505 (diff)
add preliminary DRBD support for OpenADK
-rw-r--r--mk/modules.mk5
-rw-r--r--package/drbd/Makefile32
-rw-r--r--package/drbd/patches/patch-Makefile_in11
-rw-r--r--package/drbd/patches/patch-drbd_Makefile11
-rw-r--r--package/drbd/patches/patch-drbd_drbd_buildtag_c9
-rw-r--r--target/linux/config/Config.in.block20
6 files changed, 83 insertions, 5 deletions
diff --git a/mk/modules.mk b/mk/modules.mk
index ecec26b94..496b47503 100644
--- a/mk/modules.mk
+++ b/mk/modules.mk
@@ -678,6 +678,11 @@ $(eval $(call KMOD_template,IP_VS_FTP,ip-vs-ftp,\
# Block devices
#
+$(eval $(call KMOD_template,BLK_DEV_DRBD,blk-dev-drbd,\
+ $(MODULES_DIR)/kernel/lib/lru_cache \
+ $(MODULES_DIR)/kernel/drivers/block/drbd/drbd \
+,20))
+
$(eval $(call KMOD_template,BLK_DEV_LOOP,blk-dev-loop,\
$(MODULES_DIR)/kernel/drivers/block/loop \
,20))
diff --git a/package/drbd/Makefile b/package/drbd/Makefile
new file mode 100644
index 000000000..c8d69e2a0
--- /dev/null
+++ b/package/drbd/Makefile
@@ -0,0 +1,32 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:= drbd
+PKG_VERSION:= 8.3.8.1
+PKG_RELEASE:= 1
+PKG_MD5SUM:= 551dae488006af86a33eab1eba407f48
+PKG_DESCR:= DRBD admin tools
+PKG_SECTION:= fs
+PKG_URL:= http://www.drbd.org/
+PKG_SITES:= http://oss.linbit.com/drbd/8.3/
+
+include $(TOPDIR)/mk/package.mk
+
+$(eval $(call PKG_template,DRBD,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+
+CONFIGURE_ARGS+= --with-distro=generic \
+ --without-km \
+ --without-xen \
+ --without-udev
+
+post-install:
+ $(INSTALL_DIR) $(IDIR_DRBD)/usr/lib/drbd
+ $(INSTALL_DIR) $(IDIR_DRBD)/usr/sbin
+ $(CP) $(WRKINST)/usr/lib/drbd/* \
+ $(IDIR_DRBD)/usr/lib/drbd/
+ $(INSTALL_BIN) $(WRKINST)/sbin/drbd* \
+ $(IDIR_DRBD)/usr/sbin
+
+include ${TOPDIR}/mk/pkg-bottom.mk
diff --git a/package/drbd/patches/patch-Makefile_in b/package/drbd/patches/patch-Makefile_in
new file mode 100644
index 000000000..bce8496a1
--- /dev/null
+++ b/package/drbd/patches/patch-Makefile_in
@@ -0,0 +1,11 @@
+--- drbd-8.3.8.1.orig/Makefile.in 2010-07-09 10:13:59.000000000 +0200
++++ drbd-8.3.8.1/Makefile.in 2010-11-26 19:00:49.000000000 +0100
+@@ -47,7 +47,7 @@ WITH_BASHCOMPLETION = @WITH_BASHCOMPLETI
+ # and not in e.g. dash. I'm too lazy to fix it to be compatible.
+ SHELL=/bin/bash
+
+-SUBDIRS = user scripts documentation drbd
++SUBDIRS = user scripts drbd
+
+ REL_VERSION := $(shell $(SED) -ne '/^\#define REL_VERSION/{s/^[^"]*"\([^ "]*\).*/\1/;p;q;}' drbd/linux/drbd_config.h)
+ ifdef FORCE
diff --git a/package/drbd/patches/patch-drbd_Makefile b/package/drbd/patches/patch-drbd_Makefile
new file mode 100644
index 000000000..809caca26
--- /dev/null
+++ b/package/drbd/patches/patch-drbd_Makefile
@@ -0,0 +1,11 @@
+--- drbd-8.3.8.1.orig/drbd/Makefile 2010-07-06 09:47:59.000000000 +0200
++++ drbd-8.3.8.1/drbd/Makefile 2010-11-26 18:59:47.000000000 +0100
+@@ -132,7 +132,7 @@ else
+ echo -e "\treturn \"GIT-hash: $$GITHEAD$$GITDIFF\""; \
+ fi ; \
+ echo -e "\t\t\" build by $$USER@$$HOSTNAME, `date "+%F %T"`\";\n}"; \
+- mv --force $@.new $@
++ mv -f $@.new $@
+
+ kbuild: drbd_buildtag.c
+ @rm -f .drbd_kernelrelease*
diff --git a/package/drbd/patches/patch-drbd_drbd_buildtag_c b/package/drbd/patches/patch-drbd_drbd_buildtag_c
new file mode 100644
index 000000000..7a8358ea7
--- /dev/null
+++ b/package/drbd/patches/patch-drbd_drbd_buildtag_c
@@ -0,0 +1,9 @@
+--- drbd-8.3.8.1.orig/drbd/drbd_buildtag.c 2010-07-09 10:19:05.000000000 +0200
++++ drbd-8.3.8.1/drbd/drbd_buildtag.c 2010-11-26 18:59:58.000000000 +0100
+@@ -3,5 +3,5 @@
+ const char *drbd_buildtag(void)
+ {
+ return "GIT-hash: 0d8589fcc32c874df57c930ca1691399b55ec893"
+- " build by lars@soda, 2010-07-09 10:19:24";
++ " build by wbx@neon.lan, 2010-11-26 18:59:58";
+ }
diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block
index 3209dca1c..20e778314 100644
--- a/target/linux/config/Config.in.block
+++ b/target/linux/config/Config.in.block
@@ -47,6 +47,9 @@ config ADK_KERNEL_ATA
config ADK_KERNEL_ATA_SFF
boolean
+config ADK_KERNEL_CONNECTOR
+ boolean
+
config ADK_KERNEL_ATA_PIIX
boolean
select ADK_KERNEL_BLOCK
@@ -78,7 +81,7 @@ config ADK_KPACKAGE_KMOD_SATA_AHCI
Enables support for AHCI Serial ATA.
config ADK_KPACKAGE_KMOD_BLK_DEV_LOOP
- prompt "kmod-loop......................... Loop mount support"
+ prompt "kmod-blk-dev-loop................. Loop mount support"
tristate
default n
help
@@ -118,7 +121,7 @@ config ADK_KPACKAGE_KMOD_BLK_DEV_LOOP
device used for network connections from the machine to itself.
config ADK_KPACKAGE_KMOD_BLK_DEV_NBD
- prompt "kmod-nbd.......................... Network Block Device"
+ prompt "kmod-blk-dev-nbd.................. Network Block Device"
tristate
default n
help
@@ -241,7 +244,7 @@ config ADK_KPACKAGE_KMOD_BLK_DEV_DM
Higher level volume managers such as LVM2 use this driver.
config ADK_KPACKAGE_KMOD_DM_CRYPT
- prompt "kmod-dm-crypt................... Crypt target support"
+ prompt "kmod-dm-crypt..................... Crypt target support"
depends on !(ADK_KERNEL_DM_CRYPT || ADK_LINUX_CRIS_FOXBOARD)
select ADK_KPACKAGE_KMOD_BLK_DEV_DM
select ADK_KERNEL_MD
@@ -259,7 +262,7 @@ config ADK_KPACKAGE_KMOD_DM_CRYPT
<http://www.saout.de/misc/dm-crypt/>
config ADK_KPACKAGE_KMOD_DM_SNAPSHOT
- prompt "kmod-dm-snapshot................ Snapshot target"
+ prompt "kmod-dm-snapshot.................. Snapshot target"
select ADK_KPACKAGE_KMOD_BLK_DEV_DM
depends on !ADK_LINUX_CRIS_FOXBOARD
tristate
@@ -267,7 +270,7 @@ config ADK_KPACKAGE_KMOD_DM_SNAPSHOT
Allow volume managers to take writable snapshots of a device.
config ADK_KPACKAGE_KMOD_DM_MIRROR
- prompt "kmod-dm-mirror.................. Mirror target"
+ prompt "kmod-dm-mirror.................... Mirror target"
select ADK_KPACKAGE_KMOD_BLK_DEV_DM
depends on !ADK_LINUX_CRIS_FOXBOARD
tristate
@@ -275,4 +278,11 @@ config ADK_KPACKAGE_KMOD_DM_MIRROR
Allow volume managers to mirror logical volumes, also
needed for live data migration tools such as 'pvmove'.
+config ADK_KPACKAGE_KMOD_BLK_DEV_DRBD
+ prompt "kmod-blk-dev-drbd................. DRBD support (Network RAID 1)"
+ tristate
+ select ADK_KERNEL_CONNECTOR
+ help
+ DRBD - http://www.drbd.org
+
endmenu