Blob Blame History Raw
Summary:        Open Programmable Acceleration Engine (OPAE) SDK
Name:           opae
Version:        1.4.1
Release:        10%{?dist}
License:        BSD and MIT
ExclusiveArch:  x86_64
URL:  {name}-sdk
Patch01:        0001-Do-not-install-static-libraries.patch
Patch02:        improve-library-link.patch
Patch03:        0001-python-3.9-deprecates-PyEval_InitThreads.patch

BuildRequires:  gcc, gcc-c++
BuildRequires:  cmake, make
BuildRequires:  python3-devel
BuildRequires:  json-c-devel
BuildRequires:  libuuid-devel
BuildRequires:  rpm-build
BuildRequires:  hwloc-devel
BuildRequires:  doxygen
BuildRequires:  python3-setuptools

Open Programmable Acceleration Engine (OPAE) is a software framework
for managing and accessing programmable accelerators (FPGAs).
Its main parts are:

* OPAE Software Development Kit (OPAE SDK) (this package)
* OPAE Linux driver for Intel(R) Xeon(R) CPU with
  Integrated FPGAs and Intel(R) PAC with Arria(R) 10 GX FPGA
* Basic Building Block (BBB) library for accelerating AFU

OPAE SDK is a collection of libraries and tools to facilitate the
development of software applications and accelerators using OPAE.
It provides a library implementing the OPAE C API for presenting a
streamlined and easy-to-use interface for software applications to
discover, access, and manage FPGA devices and accelerators using
the OPAE software stack.

%package devel
Summary:    OPAE headers, sample source, and documentation
Requires:   libuuid-devel, %{name}%{?_isa} = %{version}-%{release}

%description devel
OPAE headers, tools, sample source, and documentation

%setup -q -n %{name}-%{version}-1
%patch01 -p1
%patch02 -p1
%patch03 -p1

# Remove hidden .clang-format
rm opae-libs/tests/xfpga/.clang-format
rm tests/.clang-format
rm tools/argsfilter/.clang-format

mkdir -p _build
cd _build

mkdir -p %{buildroot}%{_datadir}/opae
cp ./ %{buildroot}%{_datadir}/opae/
cp ./LICENSE %{buildroot}%{_datadir}/opae/LICENSE
cp ./COPYING %{buildroot}%{_datadir}/opae/COPYING

# cmake modules
mkdir -p %{buildroot}%{_usr}/src/opae/cmake/modules
for s in FindSphinx.cmake
  cp "cmake/${s}" %{buildroot}%{_usr}/src/opae/cmake/
mkdir -p %{buildroot}%{_usr}/src/opae/opae-libs/cmake/modules
for s in FindHwloc.cmake \
         OPAE.cmake \
         FindUUID.cmake \
         Findjson-c.cmake \
         OPAECompiler.cmake \
         OPAEGit.cmake \
  cp "opae-libs/cmake/modules/${s}" %{buildroot}%{_usr}/src/opae/opae-libs/cmake/modules

# Samples
mkdir -p %{buildroot}%{_usr}/src/opae/samples
mkdir -p %{buildroot}%{_usr}/src/opae/samples/hello_fpga/
cp samples/hello_fpga/hello_fpga.c %{buildroot}%{_usr}/src/opae/samples/hello_fpga/

%make_install -C _build

%dir %{_datadir}/opae
%doc %{_datadir}/opae/
%license %{_datadir}/opae/LICENSE
%license %{_datadir}/opae/COPYING

%files devel
%dir %{_includedir}/opae
%dir %{_libdir}/opae
%dir %{_usr}/src/opae
%dir %{_usr}/src/opae/cmake/
%dir %{_usr}/src/opae/opae-libs/cmake/modules/
%dir %{_usr}/src/opae/samples

* Sat Aug 01 2020 Fedora Release Engineering <> - 1.4.1-10
- Second attempt - Rebuilt for

* Tue Jul 28 2020 Fedora Release Engineering <> - 1.4.1-9
- Rebuilt for

* Fri Jun 26 2020 Tom Rix <> 1.4.1-8
- Fix py 3.9 patch

* Fri Jun 26 2020 Tom Rix <> 1.4.1-7
- Fix py 3.9 issue with pybind11

* Wed Jun 24 2020 Tom Rix <> 1.4.1-6
- Add python3-setuptools to BuildRequires

* Tue Apr 21 2020 Björn Esser <> - 1.4.1-5
- Rebuild (json-c)

* Tue Apr 21 2020 Tom Rix <> 1.4.1-4
- Update the sources file

* Tue Apr 21 2020 Tom Rix <> 1.4.1-3
- Update the sources file

* Mon Apr 20 2020 Tom Rix <> 1.4.1-2
- Disable broken documents
- Do not install static libs
- Improve linking of libopae-cxx-core

* Fri Apr 17 2020 Korde Nakul <> 1.4.1-1
- OPAE git repository layout changes.
- Removed Safe String module dependency.
- Various bug fixes.
- Ported python tools to python3.6.
- Various Static code scan bug fixes.
- Removed pybind11 3rd component from OPAE source repository.

* Tue Mar 10 2020 Tom Rix <> 1.4.0-6
- Add make as a dependency

* Fri Mar 6 2020 Tom Rix <> 1.4.0-5
- Use make_install macro
- Use license tag correctly

* Tue Mar 3 2020 Tom Rix <> 1.4.0-4
- Add libraries to link of libopae-cxx-core libopae-c++-utils
- Remove unneeded build flag _smp_mflags

* Thu Feb 27 2020 Tom Rix <> 1.4.0-3
- Remove ldconfig from post and postun
- Append dist tag to release tag
- Change libsafestr to shared library
- Set license tag to location of license files
- Remove phython3-sphnix build dependency.
- Consolidate samples,tools,tools-extra pkgs into devel
- Improve pkg created dir specification
- Set x86_64 as ExclusiveArch
- Change to runtime to implicit dependency on build *-devel
- Remove preun rm of opae-c.conf
- Use systemd rpm macros
- Add _smp_mflags to build
- Use unitdir for fpgad.service path
- Distribute the license and copying files

* Mon Feb 24 2020 Tom Rix <> 1.4.0-2
- Change to python3
- Remove release tag from upstream Source0 definition.
- Improve requires tag for subpackages
- Remove explicit root owner
- Remove vendor tag
- Remove group tag
- Remove clean section

* Tue Dec 17 2019 Korde Nakul <> 1.4.0-1
- Added support to FPGA Linux kernel Device Feature List (DFL) driver patch set2.
- Increased test cases and test coverage
- Various bug fixes
- Various compiler warning fixes
- Various memory leak fixes
- Various Static code scan bug fixes
- Added new FPGA MMIO API to write 512 bits