From c9b6b7822d5f37505efcc1b80f0e4ae7b8062973 Mon Sep 17 00:00:00 2001 From: VaiTon Date: Mon, 6 Jan 2025 22:23:36 +0100 Subject: [PATCH] Initial packaging --- .gitattributes | 23 ++++++++++++ .gitignore | 1 + _service | 17 +++++++++ oneCCL-2021.14.obscpio | 3 ++ oneCCL.obsinfo | 4 ++ oneccl.changes | 4 ++ oneccl.spec | 84 ++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 136 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _service create mode 100644 oneCCL-2021.14.obscpio create mode 100644 oneCCL.obsinfo create mode 100644 oneccl.changes create mode 100644 oneccl.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2cdd401 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..0d70ea4 --- /dev/null +++ b/_service @@ -0,0 +1,17 @@ + + + + https://github.com/oneapi-src/oneCCL.git + git + 2021.14 + @PARENT_TAG@ + + + + + + gz + oneCCL-*.tar + + + diff --git a/oneCCL-2021.14.obscpio b/oneCCL-2021.14.obscpio new file mode 100644 index 0000000..e2e1e44 --- /dev/null +++ b/oneCCL-2021.14.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:880b98eaf0840c6164a6e05dd9653a63c363188e39614d7a563037e66e8416c1 +size 143686158 diff --git a/oneCCL.obsinfo b/oneCCL.obsinfo new file mode 100644 index 0000000..bbe29c1 --- /dev/null +++ b/oneCCL.obsinfo @@ -0,0 +1,4 @@ +name: oneCCL +version: 2021.14 +mtime: 1730889732 +commit: 3afa1bb7936f57683a2503c34b29c0daca6a9ccb diff --git a/oneccl.changes b/oneccl.changes new file mode 100644 index 0000000..5438189 --- /dev/null +++ b/oneccl.changes @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Sat Jan 4 00:20:22 UTC 2025 - Eyad Issa + +- Initial packaging at version 2021.14 diff --git a/oneccl.spec b/oneccl.spec new file mode 100644 index 0000000..06c966a --- /dev/null +++ b/oneccl.spec @@ -0,0 +1,84 @@ +# +# spec file for package oneccl +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define _openmpi_version 4 +Name: oneccl +Version: 2021.14 +Release: 0 +Summary: oneAPI Collective Communications Library (oneCCL) +License: Apache-2.0 +URL: https://github.com/oneapi-src/oneCCL +Source0: oneCCL-%{version}.tar.gz +BuildRequires: clang +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: libfabric-devel +BuildRequires: llvm-gold +BuildRequires: mpi-selector +BuildRequires: ninja +BuildRequires: openmpi%{_openmpi_version}-devel + +%description +oneAPI Collective Communications Library (oneCCL) provides an efficient +implementation of communication patterns used in deep learning. + +oneCCL is governed by the UXL Foundation and is an implementation of +the oneAPI specification. + +%package devel +Summary: Development files for oneCCL + +%description devel +oneAPI Collective Communications Library (oneCCL) provides an efficient +implementation of communication patterns used in deep learning. + +This package contains the development files for oneCCL. + +%prep +%autosetup -p1 -n oneCCL-%{version} + +%build +source /etc/mpi-selector/data/openmpi%{_openmpi_version}.sh + +# it can't build with gcc because of an intrinsic error +export CXX=mpic++ +export CC=mpicc + +%define __builder ninja +%cmake \ + -DUSE_SECURITY_FLAGS=OFF \ + -DBUILD_EXAMPLES=OFF \ + -DBUILD_FT=OFF \ + -DMPI_DIR=%{_prefix} \ + -DLIBFABRIC_DIR=%{_prefix} + +%cmake_build + +%install +%cmake_install + + +%files devel +%dir %{_includedir}/oneapi +%{_includedir}/oneapi/ccl.hpp +%{_includedir}/oneapi/ccl/ + +%{_prefix}/lib/cmake/oneCCL/oneCCLConfig.cmake +%{_prefix}/lib/cmake/oneCCL/oneCCLConfigVersion.cmake + +%changelog