Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:alveus:main:amd
amd-opencl
amd-opencl.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File amd-opencl.spec of Package amd-opencl
# # spec file for package aomp # # Copyright (c) 2021 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 real_version 17.0-2 %define aomp_prefix %{_prefix}/lib %define aomp_install %{aomp_prefix}/aomp_%{real_version} %define aomp_builddir %{_builddir}/aomp_%{real_version} Name: amd-opencl Version: 17.0.2 Release: 0 Summary: AMD OpenMP ROCm stack License: Apache-2.0 AND MIT AND NCSA URL: https://github.com/ROCm-Developer-Tools/aomp/ Source0: https://github.com/ROCm-Developer-Tools/aomp/releases/download/rel_%{real_version}/aomp-%{real_version}.tar.gz Patch0: Add-variable-for-controlling-which-components-to-bui.patch Patch1: Don-t-build-prerequisite-components.patch Patch2: Fix-missing-cstdint-when-compiling-with-gcc13.patch Patch3: Get-rid-of-warning-when-compiling-hipamd.patch Patch4: Don-t-build-with-RPATHs.patch BuildRequires: Mesa-libGL-devel BuildRequires: cmake >= 3.13.4 BuildRequires: execstack BuildRequires: fdupes BuildRequires: python311-CppHeaderParser BuildRequires: python311-ply BuildRequires: gcc-c++ BuildRequires: gcc BuildRequires: libdrm-devel BuildRequires: libX11-devel BuildRequires: libelf-devel BuildRequires: libnuma-devel BuildRequires: ninja BuildRequires: lld BuildRequires: xxd Requires: libOpenCL1 ExclusiveArch: x86_64 %description AOMP is a scripted build of LLVM and supporting software. It has support for OpenMP target offload on AMD GPUs. Since AOMP is a clang/llvm compiler, it also supports GPU offloading with HIP, CUDA, and OpenCL. %package -n libhsa-runtime64-1 Summary: ROCm Platform Runtime %description -n libhsa-runtime64-1 This repository includes the user-mode API interfaces and libraries necessary for host applications to launch compute kernels to available HSA ROCm kernel agents. %package -n libhsa-runtime64-devel Summary: Development files for the ROCr libraries Requires: libhsa-runtime64-1 = %{version} %description -n libhsa-runtime64-devel This package contains development files for the ROCr runtime library. %package -n rocm-device-libs Summary: AMD specific device-side language runtime libraries %description -n rocm-device-libs This package contains the sources and CMake build system for a set of AMD specific device-side language runtime libraries. %package -n libamd_comgr2 Summary: Code Object Manager library for the AMD ROCm stack %description -n libamd_comgr2 The Code Object Manager is a shared library which provides operations for creating and inspecting code objects. %package -n libamd_comgr2-devel Summary: Development files for the AMD comgr library Requires: libamd_comgr2 = %{version} %description -n libamd_comgr2-devel This package contains development files for the AMD comgr library. %package -n libamdhip64-5 Summary: AMD HIP runtime library Requires: libamd_comgr2 = %{version} %description -n libamdhip64-5 The HIP runtime implements HIP streams, events, and memory APIs, and is a object library that is linked with the application. %package -n libamdhip64-devel Summary: Development files for the AMD HIP runtime library Requires: libamdhip64-5 = %{version} %description -n libamdhip64-devel This package contains development files for the AMD HIP runtime library. %package -n hip-examples Summary: Sample programs for HIP BuildArch: noarch %description -n hip-examples This package contains examples on how to write HIP programs. %package -n libhiprtc-5 Summary: HIP runtime compilation support %description -n libhiprtc-5 This package provides the libraries needed for HIP runtime compilation support. %package -n libhiprtc-devel Summary: Development files for HIP runtime compilation support Requires: libhiprtc-5 = %{version} %description -n libhiprtc-devel This package provides the development files needed for HIP runtime compilation support. %package -n hip Summary: AMD Heterogeneous Interface for Portability %description -n hip The Heterogeneous Interface for Portability (HIP) is AMD’s dedicated GPU programming environment for designing high performance kernels on GPU hardware. %package -n rocminfo Summary: ROCm Application for Reporting System Info %description -n rocminfo This package prints the list of available AMD GCN ISA or architecture names and gives information about the HSA system attributes and agents. %prep %setup -q -n aomp17.0 %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %build export AOMP=%{_builddir}/aomp export AOMP_CMAKE=/usr/bin/cmake export AOMP_USE_NINJA BUILD_TYPE=Release \ AOMP_COMPONENTS="rocm-cmake project roct rocr libdevice comgr rocminfo hipamd" \ make %install install -d %{buildroot}%{_prefix} mv %{aomp_builddir}/* %{buildroot}%{_prefix} install -d %{buildroot}%{_prefix}/lib64 mv %{buildroot}%{_prefix}/lib/* %{buildroot}%{_prefix}/lib64/ # This is for backwards hip compatibility. I don't think we need it. rm -R %{buildroot}%{_prefix}/hip/bin rm -R %{buildroot}%{_prefix}/hip/cmake rm -R %{buildroot}%{_prefix}/hip/lib/ rm -R %{buildroot}%{_prefix}/hip/include/ rm %{buildroot}%{_prefix}/hsa/lib/libhsa-runtime64.so* rm -R %{buildroot}%{_prefix}/hsa/include/hsa/ # hsakmt fixes install -d %{buildroot}%{_docdir}/hsakmt mv %{buildroot}%{_datadir}/doc/hsakmt/* %{buildroot}%{_docdir}/hsakmt/ sed -i 's+prefix=%{aomp_builddir}+prefix=%{_prefix}+g' %{buildroot}%{_datadir}/pkgconfig/libhsakmt.pc sed -i 's+%{aomp_builddir}/++g' %{buildroot}%{_datadir}/pkgconfig/libhsakmt.pc # libhsa-runtime fixes install -d %{buildroot}%{_docdir}/hsa-runtime64 mv %{buildroot}%{_datadir}/doc/hsa-runtime64/* %{buildroot}%{_docdir}/hsa-runtime64/ # amd-device-libs fixes mv %{buildroot}%{_prefix}/amdgcn %{buildroot}%{_datadir} install -d %{buildroot}%{_docdir}/ROCm-Device-Libs mv %{buildroot}%{_datadir}/doc/ROCm-Device-Libs/* %{buildroot}%{_docdir}/ROCm-Device-Libs/ # libamd_comgr2 fixes rm -R %{buildroot}%{_datadir}/doc/amd_comgr-asan install -d %{buildroot}%{_docdir}/amd_comgr mv %{buildroot}%{_datadir}/doc/amd_comgr/* %{buildroot}%{_docdir}/amd_comgr # hip fixes mv %{buildroot}%{_prefix}/lib/.hipInfo %{buildroot}%{_libdir}/ install -d %{buildroot}%{_docdir}/hip mv %{buildroot}%{_datadir}/doc/hip/* %{buildroot}%{_docdir}/hip %fdupes -s %{buildroot}%{_includedir} execstack -c %{buildroot}%{_libdir}/libamdhip64.so.5.4.* execstack -c %{buildroot}%{_libdir}/libhiprtc-builtins.so.5.4.* execstack -c %{buildroot}%{_libdir}/libhiprtc.so.5.4.* chmod +x %{buildroot}%{_libdir}/libamdhip64.so.5.4.* chmod +x %{buildroot}%{_libdir}/libhiprtc-builtins.so.5.4.* chmod +x %{buildroot}%{_libdir}/libhiprtc.so.5.4.* # hip-examples fixes %fdupes -s %{buildroot}%{_datadir} # rocminfo fixes install -d %{buildroot}%{_docdir}/rocminfo mv %{buildroot}%{_datadir}/doc/rocminfo/* %{buildroot}%{_docdir}/rocminfo # Create an OpenCL ICD Loader config # install -d %{buildroot}%{_datadir}/OpenCL/vendors/ # echo %{_libdir}/libamdocl64.so > %{buildroot}%{_datadir}/OpenCL/vendors/amdocl64.icd %post -p /usr/sbin/ldconfig %postun -p /usr/sbin/ldconfig %post -n libhsa-runtime64-1 -p /usr/sbin/ldconfig %postun -n libhsa-runtime64-1 -p /usr/sbin/ldconfig %post -n libhsa-runtime64-devel -p /usr/sbin/ldconfig %postun -n libhsa-runtime64-devel -p /usr/sbin/ldconfig %post -n libamd_comgr2 -p /usr/sbin/ldconfig %postun -n libamd_comgr2 -p /usr/sbin/ldconfig %post -n libamdhip64-5 -p /usr/sbin/ldconfig %postun -n libamdhip64-5 -p /usr/sbin/ldconfig %post -n libhiprtc-5 -p /usr/sbin/ldconfig %postun -n libhiprtc-5 -p /usr/sbin/ldconfig %files # Don't package rocm-cmake %exclude %{_datadir}/doc/rocm-cmake/LICENSE %exclude %{_datadir}/rocm/cmake/ROCM*.cmake %exclude %{_datadir}/rocm/cmake/header_template.h.in # Don't package rocm-llvm %exclude %{_bindir}/FileCheck %exclude %{_bindir}/amdclang* %exclude %{_bindir}/amdflang %exclude %{_bindir}/amdflang %exclude %{_bindir}/amdgpu-arch %exclude %{_bindir}/amdgpu-offload-arch %exclude %{_bindir}/amdlld %exclude %{_bindir}/amdllvm %exclude %{_bindir}/analyze-build %exclude %{_bindir}/bugpoint %exclude %{_bindir}/c-index-test %exclude %{_bindir}/clang* %exclude %{_bindir}/count %exclude %{_bindir}/diagtool %exclude %{_bindir}/dsymutil %exclude %{_bindir}/find-all-symbols %exclude %{_bindir}/flang %exclude %{_bindir}/git-clang-format %exclude %{_bindir}/hmaptool %exclude %{_bindir}/intercept-build %exclude %{_bindir}/ld.lld %exclude %{_bindir}/ld64.lld %exclude %{_bindir}/llc %exclude %{_bindir}/lld %exclude %{_bindir}/lld-link %exclude %{_bindir}/lli %exclude %{_bindir}/llvm-* %exclude %{_bindir}/modularize %exclude %{_bindir}/not %exclude %{_bindir}/nvidia-arch %exclude %{_bindir}/nvptx-arch %exclude %{_bindir}/offload-arch %exclude %{_bindir}/opt %exclude %{_bindir}/pp-trace %exclude %{_bindir}/run-clang-tidy %exclude %{_bindir}/sancov %exclude %{_bindir}/sanstats %exclude %{_bindir}/scan-build %exclude %{_bindir}/scan-build-py %exclude %{_bindir}/scan-view %exclude %{_bindir}/verify-uselistorder %exclude %{_bindir}/wasm-ld %exclude %{_bindir}/yaml-bench %exclude %{_includedir}/c++/v1/ %exclude %{_includedir}/clang-c/ %exclude %{_includedir}/clang-tidy/ %exclude %{_includedir}/clang/ %exclude %{_includedir}/lld/ %exclude %{_includedir}/llvm-c/ %exclude %{_includedir}/llvm/ %exclude %{_libdir}/clang/ %exclude %{_libdir}/cmake/clang/ %exclude %{_libdir}/cmake/lld/ %exclude %{_libdir}/cmake/llvm/ %exclude %{_libdir}/libLLVM* %exclude %{_libdir}/libLTO* %exclude %{_libdir}/libRemarks* %exclude %{_libdir}/libc++* %exclude %{_libdir}/libclang* %exclude %{_libdir}/libear/ %exclude %{_libdir}/libfindAllSymbols* %exclude %{_libdir}/liblld* %exclude %{_libdir}/libscanbuild/ %exclude %{_prefix}/libexec/analyze-c++ %exclude %{_prefix}/libexec/analyze-cc %exclude %{_prefix}/libexec/c++-analyzer %exclude %{_prefix}/libexec/ccc-analyzer %exclude %{_prefix}/libexec/intercept-c++ %exclude %{_prefix}/libexec/intercept-cc %exclude %{_datadir}/clang/ %exclude %{_datadir}/man/man1/scan-build.1.gz %exclude %{_datadir}/opt-viewer/ %exclude %{_datadir}/scan-build/ %exclude %{_datadir}/scan-view/ # libhsakmt is linked statically so we don't package it %exclude %{_docdir}/hsakmt/LICENSE.md %exclude %dir %{_docdir}/hsakmt %exclude %{_libdir}/libhsakmt.a %exclude %{_libdir}/cmake/hsakmt/ %exclude %{_includedir}/hsakmt*.h %exclude %{_includedir}/hsakmt/ %exclude %{_datadir}/pkgconfig/libhsakmt.pc %files -n libhsa-runtime64-1 %{_libdir}/libhsa-runtime64.so.* %dir %{_docdir}/hsa-runtime64 %license %{_docdir}/hsa-runtime64/LICENSE.md %files -n libhsa-runtime64-devel %{_libdir}/libhsa-runtime64.so %{_libdir}/cmake/hsa-runtime64 %{_includedir}/hsa %files -n rocm-device-libs %dir %{_datadir}/amdgcn/ %dir %{_datadir}/amdgcn/bitcode %{_datadir}/amdgcn/bitcode/*.bc %{_libdir}/cmake/AMDDeviceLibs/AMDDeviceLibsConfig.cmake %dir %{_libdir}/cmake/AMDDeviceLibs %dir %{_docdir}/ROCm-Device-Libs %license %{_docdir}/ROCm-Device-Libs/LICENSE.TXT %files -n libamd_comgr2 %{_libdir}/libamd_comgr.so.2* %license %{_docdir}/amd_comgr/LICENSE.txt %doc %{_docdir}/amd_comgr/README.md %doc %{_docdir}/amd_comgr/NOTICES.txt %dir %{_docdir}/amd_comgr %files -n libamd_comgr2-devel %{_includedir}/amd_comgr/amd_comgr.h %dir %{_includedir}/amd_comgr %{_libdir}/cmake/amd_comgr/ %{_libdir}/libamd_comgr.so %files -n libamdhip64-5 %{_libdir}/libamdhip64.so %{_libdir}/libamdhip64.so.* %files -n libamdhip64-devel %{_includedir}/hip %{_includedir}/hip_prof_str.h %{_libdir}/cmake/hip-lang %{_libdir}/cmake/hip %files -n hip-examples %{_datadir}/hip/ %files -n libhiprtc-5 %{_libdir}/libhiprtc.so.* %{_libdir}/libhiprtc-builtins.so.* %files -n libhiprtc-devel %{_libdir}/libhiprtc.so %{_libdir}/libhiprtc-builtins.so %{_libdir}/cmake/hiprtc %files -n hip %{_bindir}/.hipVersion %{_bindir}/hipcc %{_bindir}/hipcc.pl %{_bindir}/hipcc_cmake_linker_helper %{_bindir}/hipconfig %{_bindir}/hipconfig.pl %{_bindir}/hipdemangleatp %{_bindir}/hipvars.pm %{_bindir}/roc-obj %{_bindir}/roc-obj-extract %{_bindir}/roc-obj-ls %{_libdir}/.hipInfo %dir %{_docdir}/hip/ %license %{_docdir}/hip/LICENSE.txt %files -n rocminfo %{_bindir}/rocm_agent_enumerator %{_bindir}/rocminfo %dir %{_docdir}/rocminfo %license %{_docdir}/rocminfo/License.txt %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor