From b7747142dc46c14ced422d992d38c612a54b765c Mon Sep 17 00:00:00 2001 From: Rahul Kumar Gupta Date: Tue, 18 Oct 2016 23:22:32 +0800 Subject: zlib-qat: move zlib-qat from meta-isg to common Since there is plan to merge meta-isg layer to common meta-intel layer. So relocate zlib-qat v0.4.7-002 recipe from meta-isg layer to meta-intel/common layer. Signed-off-by: Rahul Kumar Gupta Signed-off-by: Saul Wold --- ...build-qat_mem-ko-against-yocto-kernel-src.patch | 51 +++++++++ ....4.7-002-zlib-Remove-rpaths-from-makefile.patch | 52 +++++++++ ...zlib-qat-add-a-install-target-to-makefile.patch | 46 ++++++++ .../zlib-qat/zlib-qat_0.4.7-002.bb | 127 +++++++++++++++++++++ 4 files changed, 276 insertions(+) create mode 100644 common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch create mode 100644 common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch create mode 100644 common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch create mode 100644 common/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb (limited to 'common') diff --git a/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch new file mode 100644 index 00000000..9e774db2 --- /dev/null +++ b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch @@ -0,0 +1,51 @@ +From aa65d69632142d24ec44ed4c2d66371e1a1be7b4 Mon Sep 17 00:00:00 2001 +From: Anuj Mittal +Date: Thu, 18 Jun 2015 11:56:08 +0800 +Subject: [PATCH] qat_mem: build qat_mem ko against yocto kernel src + +Upstream-Status: Inappropriate [Configuration] + +This tweaks the kernel source and build path in the makefile +to make sure the module is built against the right source. + +Signed-off-by: Anuj Mittal +--- + contrib/qat/qat_mem/Makefile | 13 +++++-------- + 1 file changed, 5 insertions(+), 8 deletions(-) + +diff --git a/contrib/qat/qat_mem/Makefile b/contrib/qat/qat_mem/Makefile +index ddf5b59..ad6d4a4 100644 +--- a/contrib/qat/qat_mem/Makefile ++++ b/contrib/qat/qat_mem/Makefile +@@ -61,16 +61,10 @@ + ######################################################################### + + MODULENAME := qat_mem +-KDIR := /lib/modules/$(shell uname -r)/build ++KDIR := $(KERNEL_SOURCE_ROOT) + PWD := $(shell pwd) + +-ifeq ($(shell uname -r|grep -c grsec-WR), 1) +-AUTO_CONF=/lib/modules/$(shell uname -r)/build/include/generated/autoconf.h +-else +-AUTO_CONF=/usr/src/kernels/$(shell uname -r)/include/linux/autoconf.h +-endif +- +-CC := gcc -Wall -imacros $(AUTO_CONF) ++CC := ${CC} -Wall -imacros $(KERNEL_BUILDDIR)/include/generated/autoconf.h + + ifeq ($(KERNELRELEASE),) + all: $(MODULENAME)_test +@@ -80,6 +74,9 @@ else + obj-m := $(MODULENAME).o + endif + ++modules_install: ++ $(MAKE) -C $(KDIR) M=$(PWD) modules_install ++ + $(MODULENAME)_test: $(MODULENAME)_test.c + $(CC) -g -o $(MODULENAME)_test $(MODULENAME)_test.c + +-- +1.7.9.5 + diff --git a/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch new file mode 100644 index 00000000..c3605112 --- /dev/null +++ b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch @@ -0,0 +1,52 @@ +From aad2675c7bb635d8b7be47fa89a3ee87ba19d2e8 Mon Sep 17 00:00:00 2001 +From: Anuj Mittal +Date: Thu, 18 Jun 2015 11:46:17 +0800 +Subject: [PATCH] zlib: Remove rpaths from makefile + +Upstream-Status: Inappropriate [configuration] + +This removes references to RPATHS that are no longer +necesary when building using bitbake. + +Signed-off-by: Anuj Mittal +--- + Makefile.in | 4 ++-- + contrib/qat/qat_zlib_test/Makefile | 3 --- + 2 files changed, 2 insertions(+), 5 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index 94d8a80..cba5291 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -59,12 +59,12 @@ ICP_LAC_API_DIR=$(ICP_API_DIR)/lac/ + ICP_DC_API_DIR=$(ICP_API_DIR)/dc/ + CFLAGS+=-D_GNU_SOURCE -I$(ICP_API_DIR) -I$(ICP_DC_API_DIR) -I$(ICP_LAC_API_DIR) -I$(ICP_SAL_API_DIR) + SFLAGS+=-D_GNU_SOURCE -I$(ICP_API_DIR) -I$(ICP_DC_API_DIR) -I$(ICP_LAC_API_DIR) -I$(ICP_SAL_API_DIR) +-ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ZLIB_ROOT) -lz ++#ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ZLIB_ROOT) -lz + SHARED_APP_FLAGS=-Wl,-rpath,$(ZLIB_ROOT) -L$(ZLIB_ROOT) -lz + + ifdef ICP_BUILD_OUTPUT + TEST_LDFLAGS+=-L$(ICP_BUILD_OUTPUT) +- ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT) ++# ADDITIONAL_LDFLAGS+=-Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT) + endif + + ifdef ZLIB_DH895XCC +diff --git a/contrib/qat/qat_zlib_test/Makefile b/contrib/qat/qat_zlib_test/Makefile +index 8a29a92..ca31dd2 100644 +--- a/contrib/qat/qat_zlib_test/Makefile ++++ b/contrib/qat/qat_zlib_test/Makefile +@@ -84,9 +84,6 @@ OBJS = $(SRCS:%.c=%.o) + COVERAGE_OBJS = + EXE= + LIBQAT= +-ifdef ICP_BUILD_OUTPUT +- LIBQAT+= -Wl,-rpath,$(ICP_BUILD_OUTPUT) -L$(ICP_BUILD_OUTPUT) +-endif + + DRIVER=icp_qa_al + ifdef WITH_CPA_MUX +-- +1.7.9.5 + diff --git a/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch new file mode 100644 index 00000000..c7aec55a --- /dev/null +++ b/common/recipes-extended/zlib-qat/zlib-qat/zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch @@ -0,0 +1,46 @@ +From d78121d790c4a248bc47d1c662791fe57ac4af38 Mon Sep 17 00:00:00 2001 +From: Anuj Mittal +Date: Thu, 18 Jun 2015 11:53:23 +0800 +Subject: [PATCH] zlib-qat: add a install target to makefile + +Upstream-Status: Inappropriate [Configuration] + +This adds an install target to qat_zlib_test and qat_mem makefiles +to facilitate the installation of test binaries to {D}. + +Signed-off-by: Anuj Mittal +--- + contrib/qat/qat_mem/Makefile | 3 +++ + contrib/qat/qat_zlib_test/Makefile | 3 +++ + 2 files changed, 6 insertions(+) + +diff --git a/contrib/qat/qat_mem/Makefile b/contrib/qat/qat_mem/Makefile +index ad6d4a4..e4d77b6 100644 +--- a/contrib/qat/qat_mem/Makefile ++++ b/contrib/qat/qat_mem/Makefile +@@ -74,6 +74,9 @@ else + obj-m := $(MODULENAME).o + endif + ++install: modules_install ++ cp qat_mem_test $(INSTALL_MOD_PATH)$(bindir) ++ + modules_install: + $(MAKE) -C $(KDIR) M=$(PWD) modules_install + +diff --git a/contrib/qat/qat_zlib_test/Makefile b/contrib/qat/qat_zlib_test/Makefile +index ca31dd2..7da5ddd 100644 +--- a/contrib/qat/qat_zlib_test/Makefile ++++ b/contrib/qat/qat_zlib_test/Makefile +@@ -112,5 +112,8 @@ comptestappsh$(EXE): $(OBJS) Makefile + $(CC) -o comptestappsh $(OBJS) $(COVERAGE) \ + $(SHAREDLIBQAT) + ++install: ++ cp comptestapp $(DESTDIR)$(bindir) ++ + clean: + rm -f $(OBJS) $(COVERAGE_OBJS) comptestapp comptestappsh +-- +1.7.9.5 + diff --git a/common/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb b/common/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb new file mode 100644 index 00000000..825fbfa7 --- /dev/null +++ b/common/recipes-extended/zlib-qat/zlib-qat_0.4.7-002.bb @@ -0,0 +1,127 @@ +SUMMARY = "Zlib QAT_MEM Memory Management Module for Intel Quick Assist \ +Technology" + +DESCRIPTION = "This software acelerates the data compression algorithm \ +in the zlib software library via the Intel QuickAssist Technology \ +implemented on Intel Communications Chipset 89xx and 895x Series based platforms." + +HOMEPAGE = "http://zlib.net/" +SECTION = "libs" +LICENSE = "Zlib & GPLv2 & BSD" +LIC_FILES_CHKSUM = "file://${WORKDIR}/zlib-${ZLIB_VERSION}/zlib.h;beginline=4;endline=23;md5=fde612df1e5933c428b73844a0c494fd \ + file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \ + file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb" + +# For target side versions of openssl enable support for OCF Linux driver +# if they are available. +DEPENDS += "cryptodev-linux pkgconfig virtual/qat" + +SRC_URI = "http://www.zlib.net/zlib-${ZLIB_VERSION}.tar.gz;name=zlib \ + https://01.org/sites/default/files/page/zlib_shim_0.4.7-002_withdocumentation.zip;name=zlibqat \ + file://zlib-qat-0.4.7-002-qat_mem-build-qat_mem-ko-against-yocto-kernel-src.patch \ + file://zlib-qat-0.4.7-002-zlib-qat-add-a-install-target-to-makefile.patch \ + file://zlib-qat-0.4.7-002-zlib-Remove-rpaths-from-makefile.patch \ + " + +SRC_URI[zlib.md5sum] = "44d667c142d7cda120332623eab69f40" +SRC_URI[zlib.sha256sum] = "36658cb768a54c1d4dec43c3116c27ed893e88b02ecfcb44f2166f9c0b7f2a0d" + +SRC_URI[zlibqat.md5sum] = "dfde8618198aa8d35ecc00d10dcc7000" +SRC_URI[zlibqat.sha256sum] = "8e5786400bbc2a879ae705c864ec63b53ae019b4f2d1c94524a97223847b6e46" + +COMPATIBLE_MACHINE = "crystalforest|intel-corei7-64" + +ZLIB_VERSION = "1.2.8" +ZLIB_QAT_VERSION = "0.4.7-002" +QAT_PATCH_VERSION = "l.0.4.7_002" + +S = "${WORKDIR}/zlib-${ZLIB_VERSION}" + +export ICP_ROOT = "${S}" +export ZLIB_ROOT = "${S}" +export KERNEL_SOURCE_ROOT = "${STAGING_KERNEL_DIR}" +export KERNEL_BUILDDIR = "${STAGING_KERNEL_BUILDDIR}" +export ICP_LAC_API_DIR = "${STAGING_DIR_TARGET}${includedir}/lac" +export ICP_DC_API_DIR = "${STAGING_DIR_TARGET}${includedir}/dc" +export ZLIB_DH895XCC = "1" +export ZLIB_MEMORY_DRIVER = "qat_mem" +export ICP_BUILD_OUTPUT = "${STAGING_DIR_TARGET}" +EXTRA_OEMAKE = "-e MAKEFLAGS=" +TARGET_CC_ARCH += "${LDFLAGS}" + +inherit module +MEM_PATH = "${S}/contrib/qat" + +zlibqat_do_patch() { + cd ${WORKDIR} + unzip -q -o zlib_quickassist_patch_${QAT_PATCH_VERSION}_stable.zip + cd zlib_quickassist_patch_${QAT_PATCH_VERSION}_devbranch + tar -xvzf zlib-${ZLIB_VERSION}-qat.L.${ZLIB_QAT_VERSION}.tar.gz + cp -f zlib-${ZLIB_VERSION}-qat.patch ${WORKDIR} + cd ${S} + if [ ! -d ${S}/debian/patches ]; then + mkdir -p ${S}/debian/patches + cp -f ${WORKDIR}/zlib-${ZLIB_VERSION}-qat.patch ${S}/debian/patches + echo "zlib-${ZLIB_VERSION}-qat.patch -p1" > ${S}/debian/patches/series + fi + quilt pop -a || true + if [ -d ${S}/.pc-zlibqat ]; then + rm -rf ${S}/.pc + mv ${S}/.pc-zlibqat ${S}/.pc + QUILT_PATCHES=${S}/debian/patches quilt pop -a + rm -rf ${S}/.pc + fi + QUILT_PATCHES=${S}/debian/patches quilt push -a + mv ${S}/.pc ${S}/.pc-zlibqat +} + +# We invoke base do_patch at end, to incorporate any local patch +python do_patch() { + bb.build.exec_func('zlibqat_do_patch', d) + bb.build.exec_func('patch_do_patch', d) +} + +do_configure() { + ./configure --prefix=${prefix} --shared --libdir=${libdir} +} + +do_compile() { + unset CFLAGS CXXFLAGS + oe_runmake + + cd ${S}/contrib/qat/qat_mem + oe_runmake + + cd ${S}/contrib/qat/qat_zlib_test + oe_runmake +} + +do_install() { + install -m 0755 -d ${D}${bindir}/ + install -m 0755 -d ${D}${sysconfdir}/zlib_conf/ + + install -m 0755 zpipe ${D}${bindir} + install -m 0755 minigzip ${D}${bindir} + + cd ${MEM_PATH}/qat_mem + oe_runmake INSTALL_MOD_PATH=${D} INSTALL_MOD_DIR="kernel/drivers" install + + cd ${S}/contrib/qat/qat_zlib_test + oe_runmake DESTDIR=${D} install + + install -m 660 ${MEM_PATH}/config/dh895xcc/multi_thread_optimized/* ${D}${sysconfdir}/zlib_conf/ +} + +PACKAGES += "${PN}-app" + +FILES_${PN} += " \ + ${sysconfdir}/zlib_conf/ \ + " + +FILES_${PN}-app += " \ + ${bindir}/* \ + " + +FILES_${PN}-dbg += " \ + ${bindir}/.debug \ + " -- cgit v1.2.3-54-g00ecf