%global pkgvers 0 %global scdate0 20231117 %global sctags0 v3.3.1 %global source0 https://github.com/oneapi-src/oneDNN.git Name: onednn Version: 3.3.1 Release: %{scdate0}.%{pkgvers}%{?dist} Summary: Deep Neural Network Library License: Apache URL: https://github.com/oneapi-src/oneDNN BuildRequires: cmake gcc-c++ doxygen git python3 BuildRequires: python3-sphinx openblas-devel ocl-icd-devel opencl-headers %ifarch aarch64 BuildRequires: arm-compute-library-devel %endif %define is_native 0 %global _lto_cflags %{nil} %global __cmake_in_source_build 1 %description Deep Neural Network Library %package devel Summary: Development files Requires: %{name} = %{version}-%{release} %description devel This package contains development files for %{name} %prep %setup -T -c -n %{name} git clone --depth 1 -n -b %{sctags0} %{source0} . git reset --hard %{sctags0} git log --format=fuller # openmp version of openblas sed -i 's|"openblas"|"openblaso"|g' cmake/FindBLAS.cmake # relay on builtins sed -i '/immintrin.h/d' src/gpu/jit/ngen/ngen_utils.hpp %ifarch aarch64 sed -i '1i #include ' src/cpu/aarch64/xbyak_aarch64/xbyak_aarch64/xbyak_aarch64.h sed -i '1i #include ' src/cpu/aarch64/xbyak_aarch64/xbyak_aarch64/xbyak_aarch64_reg.h sed -i '1i #include ' src/cpu/aarch64/xbyak_aarch64/xbyak_aarch64/xbyak_aarch64_gen.h sed -i '1i #include ' src/cpu/aarch64/xbyak_aarch64/xbyak_aarch64/xbyak_aarch64_mnemonic_def.h sed -i 's|set_default_formats_common()|(set_default_formats() == status::success)|' src/cpu/aarch64/jit_uni_softmax.hpp %endif %build mkdir build pushd build %cmake .. -Wno-dev \ -DCMAKE_SKIP_RPATH=ON \ -DCMAKE_VERBOSE_MAKEFILE=OFF \ -DCMAKE_BUILD_TYPE=RelWithDebug \ -DBUILD_SHARED_LIBS=ON \ -DPYTHON_EXECUTABLE=%{python3} \ -DDNNL_EXPERIMENTAL=ON \ -DDNNL_BUILD_TESTS=OFF \ -DDNNL_BUILD_EXAMPLES=OFF \ -DDNNL_BLAS_VENDOR=OPENBLAS \ -DDNNL_GPU_RUNTIME=NONE \ -DDNNL_CPU_RUNTIME=OMP \ -DBLAS_INCLUDE_DIR=%{_includedir}/openblas \ %ifarch aarch64 -DDNNL_AARCH64_USE_ACL=ON \ -DACL_LIBRARY=%{_libdir} \ -DACL_INCLUDE_DIR=%{_includedir}/arm-compute-library \ -DACL_EXTRA_INCLUDE_DIR=%{_includedir}/arm-compute-library/include \ %endif %if %{is_native} -DDNNL_ARCH_OPT_FLAGS="-O3 -march=native" %else -DDNNL_ARCH_OPT_FLAGS="-O3" %endif make %{?_smp_mflags} popd %install pushd build make install DESTDIR=%{buildroot} popd rm -rf %{buildroot}/usr/share/doc/dnnl/README rm -rf %{buildroot}/usr/share/doc/dnnl/LICENSE rm -rf %{buildroot}/usr/share/doc/dnnl/THIRD-PARTY-PROGRAMS rm -rf %{buildroot}/usr/share/doc/dnnl/reference/html/assets/mathjax/config/dnnl.js mkdir -p %{buildroot}%{_includedir}/dnnl/common mkdir -p %{buildroot}%{_includedir}/dnnl/cpu/jit_utils mkdir -p %{buildroot}%{_includedir}/dnnl/cpu/x64/xbyak mkdir -p %{buildroot}%{_includedir}/dnnl/cpu/jit_utils install -p -m 0644 src/common/*.hpp %{buildroot}%{_includedir}/dnnl/common/ install -p -m 0644 src/cpu/x64/*.hpp %{buildroot}%{_includedir}/dnnl/cpu/x64/ install -p -m 0644 src/cpu/x64/xbyak/*.h %{buildroot}%{_includedir}/dnnl/cpu/x64/xbyak/ install -p -m 0644 src/cpu/jit_utils/*.hpp %{buildroot}%{_includedir}/dnnl/cpu/jit_utils/ %files %license LICENSE %doc README.md doc %{_libdir}/*.so.* %files devel %doc examples %{_includedir}/* %{_libdir}/cmake/* %{_libdir}/*.so %{_datadir}/doc/* %changelog * Sat Dec 14 2019 Balint Cristian - github upstream releases