diff --git a/KAE-2.0.0.tar.gz b/KAE-2.0.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..e3e52a74e25a4a2f28633a2ae2028e7852cb3990 Binary files /dev/null and b/KAE-2.0.0.tar.gz differ diff --git a/kae.spec b/kae.spec new file mode 100644 index 0000000000000000000000000000000000000000..7cd90c7b1b3c898e3396e7956db55af8006e33d1 --- /dev/null +++ b/kae.spec @@ -0,0 +1,67 @@ +Name: kae_openssl +Summary: Huawei Kunpeng Accelerator Engine +Version: 2.0.0 +Release: 1%dist +License: Apache-2.0 +Source: KAE-%{version}.tar.gz +ExclusiveOS: linux +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Prefix: /usr/local/lib/engines-1.1 +Conflicts: %{name} < %{version}-%{release} +Provides: %{name} = %{version}-%{release} +Requires: libwd >= %{version} +Autoreq: no +Autoprov: no + +%description +This package contains the Huawei Kunpeng Accelerator Engine + +%prep +%global debug_package %{nil} +%setup -c -n %{name}-%{version} + +%build +cd KAEOpensslEngine +export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig +autoreconf -i +./configure --libdir=/usr/local/lib/engines-1.1/ +make -j + +%install +mkdir -p ${RPM_BUILD_ROOT}/usr/local/lib/engines-1.1 +install -b -m -755 KAEOpensslEngine/src/.libs/kae.so.1.1.0 ${RPM_BUILD_ROOT}/usr/local/lib/engines-1.1 + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(755,root,root) +/usr/local/lib/engines-1.1/kae.so.1.1.0 + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf $RPM_INSTALL_PREFIX/kae.so > /dev/null 2>&1 || true + rm -rf $RPM_INSTALL_PREFIX/kae.so.0 > /dev/null 2>&1 || true +fi + +%post +if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + ln -sf $RPM_INSTALL_PREFIX/libkae.so.%{version} $RPM_INSTALL_PREFIX/kae.so + ln -sf $RPM_INSTALL_PREFIX/libkae.so.%{version} $RPM_INSTALL_PREFIX/kae.so.0 +fi +/sbin/ldconfig + +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf $RPM_INSTALL_PREFIX/kae.so > /dev/null 2>&1 || true + rm -rf $RPM_INSTALL_PREFIX/kae.so.0 > /dev/null 2>&1 || true + rm -f /var/log/kae.log > /dev/null 2>&1 || true + rm -f /var/log/kae.log.old > /dev/null 2>&1 || true +fi + +%postun +/sbin/ldconfig + +%changelog +* Tue Jan 07 2020 jinbinhua 1.2.7-1 +- First Spec Version Include kunpeng accelerator engine Code diff --git a/kae_driver.spec b/kae_driver.spec index 7e9700f2e79534c012a88e5b54554aa965749141..8bfad446469e00142c32cd1048a91041c5508fc1 100644 --- a/kae_driver.spec +++ b/kae_driver.spec @@ -1,251 +1,307 @@ -%global debug_package %{nil} - Name: kae_driver Summary: Kunpeng Accelerator Engine Kernel Driver Version: 2.0.0 -Release: 2 +Release: 1%dist License: GPL-2.0 -Source: %{name}-%{version}.tar.gz -Vendor: Huawei Corporation +Source: KAE-%{version}.tar.gz ExclusiveOS: linux -URL: https://support.huawei.com BuildRoot: %{_tmppath}/%{name}-%{version}-root Conflicts: %{name} < %{version}-%{release} Provides: %{name} = %{version}-%{release} -BuildRequires: kernel-devel, gcc, make, uname-build-checks -ExclusiveArch: aarch64 -Patch0001: 0001-ci-kernel-version-patch.patch +BuildRequires: gcc, make %define kernel_version %(uname -r) -%define kae_driver_path %{_builddir}/%{name}-%{version} +%define kae_driver_path %{_builddir}/%{name}-%{version}/KAEKernelDriver +%define kae_uadk_path %{_builddir}/%{name}-%{version}/uadk %description -This package contains the Kunpeng Accelerator Engine Kernel Driver - -%package -n uacce -Summary: Unified/User-space-access-intended Accelerator Framework -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n uacce -This package contains the Unified/User-space-access-intended Accelerator Framework. - -%package -n hisi_sec2 -Summary: Huawei Hisilicon SEC Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_sec2 -This package contains the Huawei Hisilicon SEC Accelerator Driver. - -%package -n hisi_hpre -Summary: Huawei Hisilicon HPRE Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_hpre -This package contains the Huawei Hisilicon HPRE Accelerator Driver. - -%package -n hisi_zip -Summary: Huawei Hisilicon ZIP Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_zip -This package contains the Huawei Hisilicon ZIP Accelerator Driver. - -%package -n hisi_trng_v2 -Summary: Huawei Hisilicon TRNG Accelerator Driver -Requires: uacce >= %{version}-%{release} -Conflicts: %{name} < %{version}-%{release} -Provides: %{name} = %{version}-%{release} - -%description -n hisi_trng_v2 -This package contains the Huawei Hisilicon TRNG Accelerator Driver. - +This package contains the Kunpeng Accelerator Engine Driver %prep -%autosetup -n %{name}-%{version} -p1 +%global debug_package %{nil} +%setup -c -n %{name}-%{version} %build -make +cd KAEKernelDriver +make -j + +cd .. +cd uadk +sh autogen.sh +sh conf.sh +make -j %install mkdir -p ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra mkdir -p ${RPM_BUILD_ROOT}/etc/modprobe.d -install -b -m644 %{kae_driver_path}/uacce/uacce.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/hisilicon/hisi_qm.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/hisilicon/sec2/hisi_sec2.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_sec2.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_sec2.conf -install -b -m644 %{kae_driver_path}/hisilicon/hpre/hisi_hpre.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_hpre.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_hpre.conf -install -b -m644 %{kae_driver_path}/hisilicon/zip/hisi_zip.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_zip.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_zip.conf -install -b -m644 %{kae_driver_path}/hisilicon/trng/hisi-trng-v2.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra -install -b -m644 %{kae_driver_path}/conf/hisi_trng_v2.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_trng_v2.conf +install -b -m -644 %{kae_driver_path}/uacce/uacce.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +install -b -m -644 %{kae_driver_path}/hisilicon/hisi_qm.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +install -b -m -644 %{kae_driver_path}/hisilicon/sec2/hisi_sec2.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_sec2.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_sec2.conf +install -b -m -644 %{kae_driver_path}/hisilicon/hpre/hisi_hpre.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_hpre.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_hpre.conf +install -b -m -644 %{kae_driver_path}/hisilicon/zip/hisi_zip.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_zip.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_zip.conf +#install -b -m -644 %{kae_driver_path}/hisilicon/rde/hisi_rde.ko ${RPM_BUILD_ROOT}/lib/modules/%{kernel_version}/extra +#install -b -m -644 %{kae_driver_path}/conf/hisi_rde.conf ${RPM_BUILD_ROOT}/etc/modprobe.d/hisi_rde.conf + +mkdir -p ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd_comp.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd_crypto.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libwd.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_hpre.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_sec.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +install -b -m -755 %{kae_uadk_path}/.libs/libhisi_zip.so.2.4.0 ${RPM_BUILD_ROOT}/usr/lib64 +mkdir -p ${RPM_BUILD_ROOT}/usr/include/uadk +mkdir -p ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/hisi_qm_udrv.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_aead.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_alg_common.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_cipher.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_comp.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_dh.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_digest.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_ecc.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_ecc_curve.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_rsa.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_sched.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/wd_util.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/uacce.h ${RPM_BUILD_ROOT}/usr/include/uadk +install -b -m -755 %{kae_uadk_path}/include/drv/wd_aead_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_cipher_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_comp_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_dh_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_digest_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_ecc_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv +install -b -m -755 %{kae_uadk_path}/include/drv/wd_rsa_drv.h ${RPM_BUILD_ROOT}/usr/include/uadk/drv %clean rm -rf ${RPM_BUILD_ROOT} -%pre -n uacce +%files +%defattr(644,root,root) +/lib/modules/%{kernel_version}/extra/uacce.ko +/lib/modules/%{kernel_version}/extra/hisi_qm.ko +/lib/modules/%{kernel_version}/extra/hisi_sec2.ko +/lib/modules/%{kernel_version}/extra/hisi_hpre.ko +/lib/modules/%{kernel_version}/extra/hisi_zip.ko +%defattr(755,root,root) +/usr/lib64/libwd.so.2.4.0 +/usr/lib64/libwd_comp.so.2.4.0 +/usr/lib64/libwd_crypto.so.2.4.0 +/usr/lib64/libhisi_hpre.so.2.4.0 +/usr/lib64/libhisi_sec.so.2.4.0 +/usr/lib64/libhisi_zip.so.2.4.0 +/usr/lib64/libhisi_hpre.so.2 +/usr/lib64/libhisi_sec.so.2 +/usr/lib64/libhisi_zip.so.2 +/usr/lib64/libwd.so.2 +/usr/lib64/libwd_comp.so.2 +/usr/lib64/libwd_crypto.so.2 +%defattr(644,root,root) +/usr/include/uadk/hisi_qm_udrv.h +/usr/include/uadk/wd.h +/usr/include/uadk/wd_aead.h +/usr/include/uadk/wd_alg_common.h +/usr/include/uadk/wd_cipher.h +/usr/include/uadk/wd_comp.h +/usr/include/uadk/wd_dh.h +/usr/include/uadk/wd_digest.h +/usr/include/uadk/wd_ecc.h +/usr/include/uadk/wd_ecc_curve.h +/usr/include/uadk/wd_rsa.h +/usr/include/uadk/wd_sched.h +/usr/include/uadk/wd_util.h +/usr/include/uadk/uacce.h +/usr/include/uadk/drv/wd_aead_drv.h +/usr/include/uadk/drv/wd_cipher_drv.h +/usr/include/uadk/drv/wd_comp_drv.h +/usr/include/uadk/drv/wd_dh_drv.h +/usr/include/uadk/drv/wd_digest_drv.h +/usr/include/uadk/drv/wd_ecc_drv.h +/usr/include/uadk/drv/wd_rsa_drv.h + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_comp.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_crypto.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_hpre.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_hpre.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_sec.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_sec.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_zip.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_zip.so.1 > /dev/null 2>&1 || true +fi + echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "uacce modules start to install" fi -%pre -n hisi_sec2 echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_sec2 modules start to install" fi -%pre -n hisi_hpre echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_hpre modules start to install" fi -%pre -n hisi_zip echo "checking installed modules" if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update echo "hisi_zip modules start to install" fi -%pre -n hisi_trng_v2 -echo "checking installed modules" +%post if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update - echo "hisi_trng_v2 modules start to install" + cd /usr/lib64 + ln -sf libwd.so.2.4.0 libwd.so + ln -sf libwd.so.2.4.0 libwd.so.1 + + ln -sf libwd_comp.so.2.4.0 libwd_comp.so + ln -sf libwd_comp.so.2.4.0 libwd_comp.so.1 + + ln -sf libwd_crypto.so.2.4.0 libwd_crypto.so + ln -sf libwd_crypto.so.2.4.0 libwd_crypto.so.1 + + ln -sf libhisi_hpre.so.2.4.0 libhisi_hpre.so + ln -sf libhisi_hpre.so.2.4.0 libhisi_hpre.so.1 + + ln -sf libhisi_sec.so.2.4.0 libhisi_sec.so + ln -sf libhisi_sec.so.2.4.0 libhisi_sec.so.1 + + ln -sf libhisi_zip.so.2.4.0 libhisi_zip.so + ln -sf libhisi_zip.so.2.4.0 libhisi_zip.so.1 fi +/sbin/ldconfig -%post -n uacce if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/uacce.ko" | /sbin/weak-modules --add-module --no-initramfs + echo "/lib/modules/%{kernel_version}/extra/hisi_qm.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "uacce modules installed" -%post -n hisi_sec2 if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_sec2 modules installed" -%post -n hisi_hpre if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_hpre modules installed" -%post -n hisi_zip if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --add-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_zip modules installed" -%post -n hisi_trng_v2 -if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update - /sbin/depmod -a > /dev/null 2>&1 || true +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf /usr/lib64/libwd.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_comp.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_comp.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libwd_crypto.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libwd_crypto.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_hpre.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_hpre.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_sec.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_sec.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/lib64/libhisi_zip.so > /dev/null 2>&1 || true + rm -rf /usr/lib64/libhisi_zip.so.1 > /dev/null 2>&1 || true fi -echo "hisi_trng_v2 modules installed" -%preun -n uacce +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/uacce.ko" | /sbin/weak-modules --remove-module --no-initramfs + echo "/lib/modules/%{kernel_version}/extra/hisi_qm.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi +/sbin/depmod -a > /dev/null 2>&1 || true if [ "$1" = "0" ] ; then #0: uninstall echo "uacce modules uninstalling" fi -%preun -n hisi_sec2 +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_sec2 modules uninstalling" fi -%preun -n hisi_hpre +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_hpre modules uninstalling" fi -%preun -n hisi_zip +if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --remove-module --no-initramfs +fi if [ "$1" = "0" ] ; then #0: uninstall echo "hisi_zip modules uninstalling" fi -%preun -n hisi_trng_v2 -if [ "$1" = "0" ] ; then #0: uninstall - echo "hisi_trng_v2 modules uninstalling" -fi +%postun +/sbin/ldconfig -%postun -n uacce if [ "$1" = "0" ] ; then #0: uninstall /sbin/depmod -a > /dev/null 2>&1 || true fi echo "uacce modules uninstalled" -%postun -n hisi_sec2 if [ "$1" = "0" ] ; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_sec2.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_sec2 modules uninstalled" -%postun -n hisi_hpre if [ "$1" = "0" ] ; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_hpre.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_hpre modules uninstalled" -%postun -n hisi_zip -if [ "$1" = "0" ] ; then #0: uninstall +if [ "$1" = "0" ]; then #0: uninstall + if [ -e /sbin/weak-modules ]; then + echo "/lib/modules/%{kernel_version}/extra/hisi_zip.ko" | /sbin/weak-modules --remove-module --no-initramfs + fi /sbin/depmod -a > /dev/null 2>&1 || true fi echo "hisi_zip modules uninstalled" -%postun -n hisi_trng_v2 -if [ "$1" = "0" ] ; then #0: uninstall - /sbin/depmod -a > /dev/null 2>&1 || true -fi -echo "hisi_trng_v2 modules uninstalled" - -%files -n uacce -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/uacce.ko -/lib/modules/%{kernel_version}/extra/hisi_qm.ko - - -%files -n hisi_sec2 -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_sec2.ko -%config(noreplace) /etc/modprobe.d/hisi_sec2.conf - -%files -n hisi_hpre -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_hpre.ko -%config(noreplace) /etc/modprobe.d/hisi_hpre.conf - -%files -n hisi_zip -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi_zip.ko -%config(noreplace) /etc/modprobe.d/hisi_zip.conf - -%files -n hisi_trng_v2 -%defattr(644,root,root) -/lib/modules/%{kernel_version}/extra/hisi-trng-v2.ko -%config(noreplace) /etc/modprobe.d/hisi_trng_v2.conf - %changelog -* Fri Mar 10 2023 panxiaohe - 2.0.1-2 -- Add BuildRequires uname-build-checks to get correct kernel_version - -* Tue Feb 7 2023 mayunhui - 2.0.1 -- Fix kae_driver build error in the patch file - -* Wed Nov 11 2020 wangyue - 1.3.9-1 -- Fix kae_driver build error on kernel 5.10 - -* Sun Mar 15 2020 zhangtao 1.2.10-3 -- specify aarch64 compilation - -* Tue Mar 03 2020 catastrowings 1.2.10-2 -- openEuler init - * Tue Jan 07 2020 jinbinhua 1.2.7-1 - First Spec Version Include all Kunpeng Accelerator Engine Kernel Driver Code diff --git a/kaezip.spec b/kaezip.spec new file mode 100644 index 0000000000000000000000000000000000000000..048ae13fab658acb78656062c29371d4a06323e8 --- /dev/null +++ b/kaezip.spec @@ -0,0 +1,135 @@ +Name: kae_zip +Summary: Huawei Kunpeng Accelerator Engine Zip +Version: 2.0.0 +Release: 1%dist +License: Apache-2.0 +Source: KAE-%{version}.tar.gz +ExclusiveOS: linux +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Conflicts: %{name} < %{version}-%{release} +Provides: %{name} = %{version}-%{release} +Requires: libwd >= %{version} +Autoreq: no +Autoprov: no + +%define zlib_version 1.2.11 +%define zstd_version 1.5.2 + +%description +This package contains the Huawei Hisilicon Zip Accelerator Engine. + +%prep +%global debug_package %{nil} +%setup -c -n %{name}-%{version} + +%build +cd KAEZstd +sh build.sh install + +cd .. +cd KAEZlib +sh setup.sh build + +%install +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib/pkgconfig +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZlib/share/man/man3 +install -b -m -755 KAEZlib/libkaezip.so.1.3.11 ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -755 KAEZlib/include/kaezip.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +install -b -m -755 KAEZlib/open_source/zlib-%{zlib_version}/libz.so.%{zlib_version} ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/libz.a ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.pc ${RPM_BUILD_ROOT}/usr/local/KAEZlib/lib/pkgconfig +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.3 ${RPM_BUILD_ROOT}/usr/local/KAEZlib/share/man/man3 +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zlib.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include +install -b -m -644 KAEZlib/open_source/zlib-%{zlib_version}/zconf.h ${RPM_BUILD_ROOT}/usr/local/KAEZlib/include + +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib/pkgconfig +mkdir -p ${RPM_BUILD_ROOT}/usr/local/KAEZstd/share/man/man3 +install -b -m -755 KAEZstd/libkaezstd.so.0.0.1 ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -755 KAEZstd/include/kaezstd.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -755 KAEZstd/open_source/zstd/lib/libzstd.so.%{zstd_version} ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -644 KAEZstd/open_source/zstd/lib/libzstd.a ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib +install -b -m -644 KAEZstd/open_source/zstd/lib/libzstd.pc ${RPM_BUILD_ROOT}/usr/local/KAEZstd/lib/pkgconfig +#install -b -m -644 KAEZstd/open_source/zstd/lib/zlib.3 ${RPM_BUILD_ROOT}/usr/local/KAEZstd/share/man/man3 +install -b -m -644 KAEZstd/open_source/zstd/lib/zstd.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -644 KAEZstd/open_source/zstd/lib/zdict.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include +install -b -m -644 KAEZstd/open_source/zstd/lib/zstd_errors.h ${RPM_BUILD_ROOT}/usr/local/KAEZstd/include + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(755,root,root) +/usr/local/KAEZlib/lib/libkaezip.so.1.3.11 +/usr/local/KAEZlib/include/kaezip.h +/usr/local/KAEZlib/lib/libz.so.%{zlib_version} +%defattr(644,root,root) +/usr/local/KAEZlib/lib/libz.a +/usr/local/KAEZlib/lib/pkgconfig/zlib.pc +/usr/local/KAEZlib/share/man/man3/zlib.3 +/usr/local/KAEZlib/include/zlib.h +/usr/local/KAEZlib/include/zconf.h + +%defattr(755,root,root) +/usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 +/usr/local/KAEZstd/include/kaezstd.h +/usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} +%defattr(644,root,root) +/usr/local/KAEZstd/lib/libzstd.a +/usr/local/KAEZstd/lib/pkgconfig/libzstd.pc +#/usr/local/KAEZstd/share/man/man3/zlib.3 +/usr/local/KAEZstd/include/zstd.h +/usr/local/KAEZstd/include/zdict.h +/usr/local/KAEZstd/include/zstd_errors.h + +%pre +if [ "$1" = "2" ] ; then #2: update + rm -rf /usr/local/KAEZlib/lib/libkaezip.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so.0 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so.1 > /dev/null 2>&1 || true + + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so.0 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so.1 > /dev/null 2>&1 || true +fi + +%post +if [[ "$1" = "1" || "$1" = "2" ]] ; then #1: install 2: update + ln -sf /usr/local/KAEZlib/lib/libkaezip.so.1.3.11 /usr/local/KAEZlib/lib/libkaezip.so + ln -sf /usr/local/KAEZlib/lib/libkaezip.so.1.3.11 /usr/local/KAEZlib/lib/libkaezip.so.0 + ln -sf /usr/local/KAEZlib/lib/libz.so.%{zlib_version} /usr/local/KAEZlib/lib/libz.so + ln -sf /usr/local/KAEZlib/lib/libz.so.%{zlib_version} /usr/local/KAEZlib/lib/libz.so.1 + + ln -sf /usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 /usr/local/KAEZstd/lib/libkaezstd.so + ln -sf /usr/local/KAEZstd/lib/libkaezstd.so.0.0.1 /usr/local/KAEZstd/lib/libkaezstd.so.0 + ln -sf /usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} /usr/local/KAEZstd/lib/libzstd.so + ln -sf /usr/local/KAEZstd/lib/libzstd.so.%{zstd_version} /usr/local/KAEZstd/lib/libzstd.so.1 +fi +/sbin/ldconfig + +%preun +if [ "$1" = "0" ] ; then #0: uninstall + rm -rf /usr/local/KAEZlib/lib/libz.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libz.so.1 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZlib/lib/libkaezip.so.0 > /dev/null 2>&1 || true + + rm -rf /usr/local/KAEZstd/lib/libzstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libzstd.so.1 > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so > /dev/null 2>&1 || true + rm -rf /usr/local/KAEZstd/lib/libkaezstd.so.0 > /dev/null 2>&1 || true + rm -f /var/log/kaezip.log > /dev/null 2>&1 || true + rm -f /var/log/kaezip.log.old > /dev/null 2>&1 || true +fi + +%postun +/sbin/ldconfig + +%changelog +* Tue Jan 07 2020 jinbinhua 1.2.7-1 +- First Spec Version Include kunpeng accelerator engine Code