[Buildroot] [PATCH 1/2] ocf: new package
Gustavo Zacarias
gustavo at zacarias.com.ar
Fri Jan 27 12:36:01 UTC 2012
Add the OCF package and linux kernel extension.
Signed-off-by: Gustavo Zacarias <gustavo at zacarias.com.ar>
---
linux/Config.ext.in | 7 +++++++
linux/linux-ext-ocf.mk | 21 +++++++++++++++++++++
package/Config.in | 1 +
package/ocf/Config.in | 12 ++++++++++++
package/ocf/ocf.mk | 30 ++++++++++++++++++++++++++++++
5 files changed, 71 insertions(+), 0 deletions(-)
create mode 100644 linux/linux-ext-ocf.mk
create mode 100644 package/ocf/Config.in
create mode 100644 package/ocf/ocf.mk
diff --git a/linux/Config.ext.in b/linux/Config.ext.in
index 172fa76..64c1476 100644
--- a/linux/Config.ext.in
+++ b/linux/Config.ext.in
@@ -23,6 +23,13 @@ config BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH
Download it at http://download.gna.org/adeos/patches/v2.6/$(ARCH)/
and verify that your kernel version in buildroot matches.
+# OCF
+config BR2_LINUX_KERNEL_EXT_OCF
+ bool "Open Cryptographic Framework (OCF)"
+ select BR2_PACKAGE_OCF
+ help
+ OCF Kernel part.
+
# RTAI
config BR2_LINUX_KERNEL_EXT_RTAI
bool "RTAI Real-time patch"
diff --git a/linux/linux-ext-ocf.mk b/linux/linux-ext-ocf.mk
new file mode 100644
index 0000000..af8b809
--- /dev/null
+++ b/linux/linux-ext-ocf.mk
@@ -0,0 +1,21 @@
+##################################################
+# Linux OCF extension
+#
+# Patch the linux kernel with OCF
+##################################################
+
+ifeq ($(BR2_LINUX_KERNEL_EXT_OCF),y)
+LINUX_DEPENDENCIES += ocf
+
+# Prepare kernel patch
+# The linux-3.2.1.patch is just the main inclusion, most of the code
+# resides in the ocf/ subdir.
+define OCF_PREPARE_KERNEL
+ support/scripts/apply-patches.sh $(LINUX_DIR) \
+ $(OCF_DIR)/patches/ linux-3.2.1-ocf.patch ; \
+ cp -rf $(OCF_DIR)/ocf $(LINUX_DIR)/crypto/ocf ;
+endef
+
+LINUX_PRE_PATCH_HOOKS += OCF_PREPARE_KERNEL
+
+endif #BR2_LINUX_EXT_OCF
diff --git a/package/Config.in b/package/Config.in
index e35c09a..6a74df1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -269,6 +269,7 @@ source "package/gnutls/Config.in"
source "package/libgcrypt/Config.in"
source "package/libgpg-error/Config.in"
source "package/libnss/Config.in"
+source "package/ocf/Config.in"
source "package/openssl/Config.in"
endmenu
diff --git a/package/ocf/Config.in b/package/ocf/Config.in
new file mode 100644
index 0000000..4cdb5c3
--- /dev/null
+++ b/package/ocf/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_OCF
+ bool "ocf"
+ 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/ocf.mk b/package/ocf/ocf.mk
new file mode 100644
index 0000000..c409464
--- /dev/null
+++ b/package/ocf/ocf.mk
@@ -0,0 +1,30 @@
+#############################################################
+#
+# ocf
+#
+#############################################################
+
+OCF_VERSION = 20120127
+OCF_SITE = http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/ocf-linux
+OCF_SOURCE = ocf-linux-$(OCF_VERSION).tar.gz
+OCF_INSTALL_STAGING = YES
+
+define OCF_INSTALL_STAGING_CMDS
+ $(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
+ $(STAGING_DIR)/usr/include/crypto/cryptodev.h
+endef
+
+define OCF_UNINSTALL_STAGING_CMDS
+ rm -f $(STAGING_DIR)/usr/include/crypto/cryptodev.h
+endef
+
+define OCF_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
+ $(TARGET_DIR)/usr/include/crypto/cryptodev.h
+endef
+
+define OCF_UNINSTALL_TARGET_CMDS
+ rm -f $(TARGET_DIR)/usr/include/crypto/cryptodev.h
+endef
+
+$(eval $(call GENTARGETS))
--
1.7.3.4
More information about the buildroot
mailing list