summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
Diffstat (limited to 'package')
-rw-r--r--package/Config.in1
-rw-r--r--package/ocf-linux/Config.in12
-rw-r--r--package/ocf-linux/ocf-linux-01-modules-cross.patch42
-rw-r--r--package/ocf-linux/ocf-linux.mk14
4 files changed, 52 insertions, 17 deletions
diff --git a/package/Config.in b/package/Config.in
index 0f8fe7f3e..62a97b426 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -394,7 +394,6 @@ source "package/libmhash/Config.in"
source "package/libnss/Config.in"
source "package/libsha1/Config.in"
source "package/nettle/Config.in"
-source "package/ocf-linux/Config.in"
source "package/openssl/Config.in"
source "package/polarssl/Config.in"
endmenu
diff --git a/package/ocf-linux/Config.in b/package/ocf-linux/Config.in
deleted file mode 100644
index 9dc576607..000000000
--- a/package/ocf-linux/Config.in
+++ /dev/null
@@ -1,12 +0,0 @@
-config BR2_PACKAGE_OCF_LINUX
- bool "ocf-linux"
- help
- OCF-Linux is a Linux port of the OpenBSD/FreeBSD Cryptographic
- Framework (OCF). This port aims to bring full asynchronous HW/SW
- crypto acceleration to the Linux kernel and applications
- running under Linux.
-
- You need to enable the OCF linux kernel extension or provide
- a prepatched kernel to make this option useful.
-
- http://ocf-linux.sourceforge.net/
diff --git a/package/ocf-linux/ocf-linux-01-modules-cross.patch b/package/ocf-linux/ocf-linux-01-modules-cross.patch
new file mode 100644
index 000000000..f80ef062c
--- /dev/null
+++ b/package/ocf-linux/ocf-linux-01-modules-cross.patch
@@ -0,0 +1,42 @@
+Remove the OCF linux kernel extension instead opting to build ocf-linux
+modules out of tree.
+This is easier for users since no kernel config tweaking is required.
+On the downside the OCF drivers can't be used, but then all of the
+kernel crypto drivers are available to users via cryptosoft which is
+preferred.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura ocf-linux-20120127.orig/ocf/Makefile ocf-linux-20120127/ocf/Makefile
+--- ocf-linux-20120127.orig/ocf/Makefile 2013-04-27 09:27:04.413911866 -0300
++++ ocf-linux-20120127/ocf/Makefile 2013-04-27 09:27:31.131775576 -0300
+@@ -2,6 +2,7 @@
+ -include $(ROOTDIR)/modules/.config
+
+ OCF_OBJS = crypto.o criov.o
++KDIR ?= /lib/modules/$(shell uname -r)/build
+
+ ifdef CONFIG_OCF_RANDOMHARVEST
+ OCF_OBJS += random.o
+@@ -78,20 +79,13 @@
+ #
+
+ ocf_make:
+- make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m
+- make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m
+- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_BENCH=m
+- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_OCFNULL=m
+- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_HIFN=m
++ make -C $(KDIR) M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m CONFIG_OCF_BENCH=m CONFIG_OCF_OCFNULL=m
+
+ ocf_modules:
+ $(MAKE) ocf_make OCF_TARGET=modules
+
+ ocf_install:
+ $(MAKE) ocf_make OCF_TARGET="modules modules_install"
+- depmod
+- mkdir -p /usr/include/crypto
+- cp cryptodev.h /usr/include/crypto/.
+
+ #
+ # generate full kernel patches for 2.4 and 2.6 kernels to make patching
diff --git a/package/ocf-linux/ocf-linux.mk b/package/ocf-linux/ocf-linux.mk
index fb5f7e8ff..1be3a3f4b 100644
--- a/package/ocf-linux/ocf-linux.mk
+++ b/package/ocf-linux/ocf-linux.mk
@@ -6,16 +6,22 @@
OCF_LINUX_VERSION = 20120127
OCF_LINUX_SITE = http://downloads.sourceforge.net/project/ocf-linux/ocf-linux/$(OCF_LINUX_VERSION)
+OCF_LINUX_DEPENDENCIES = linux
OCF_LINUX_INSTALL_STAGING = YES
-define OCF_LINUX_INSTALL_STAGING_CMDS
- $(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
- $(STAGING_DIR)/usr/include/crypto/cryptodev.h
+define OCF_LINUX_BUILD_CMDS
+ $(MAKE) -C $(@D)/ocf $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \
+ ocf_modules
endef
define OCF_LINUX_INSTALL_TARGET_CMDS
+ $(MAKE) -C $(@D)/ocf $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \
+ ocf_install
+endef
+
+define OCF_LINUX_INSTALL_STAGING_CMDS
$(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
- $(TARGET_DIR)/usr/include/crypto/cryptodev.h
+ $(STAGING_DIR)/usr/include/crypto/cryptodev.h
endef
$(eval $(generic-package))