File prjoxide.spec of Package prjoxide

#
# spec file for package prjoxide
#
# Copyright (c) 2024 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/
#


Name:           prjoxide
Version:        0.1 
Release:        0
Summary:        Project Oxide - documenting Lattice's 28nm "Nexus" FPGA parts
License:        Fair
URL:            https://github.com/gatecat/prjoxide
Source:         %{name}-%{version}.tar.bz2
Source1:        vendor.tar.bz2
BuildRequires:  rust
BuildRequires:  cargo
BuildRequires:  cargo-packaging
BuildRequires:  cargo-auditable

%description
A framework is in place to parse bitstreams and fuzz bitstream changes. Currently the logic tile (PLC) config and interconnect; basic IO and IOLOGIC config; EBR config; global routing ; DSP and PLL config have been fuzzed. Remaining work includes finishing IO, PCIe and SGMII fuzzing.

prjoxide may also need to be updated to support the production silicon. Most of the current testing has been done with LIFCL-40 devices, with limited testing on the LIFCL-17. There has also been some early investigations into Certus-Pro NX support.


%prep
%autosetup -p1

%build

pushd libprjoxide/prjoxide
    mkdir -p .cargo
    cat > .cargo/config.toml << EOF
[source.crates-io]
replace-with = "vendored-sources"

[source.vendored-sources]
directory = "vendor"
EOF
    tar xf %SOURCE1
    %cargo_build
popd

%install
pushd libprjoxide/prjoxide
    %cargo_install
popd

%files
%license COPYING
%{_bindir}/prjoxide
#%doc ChangeLog README

%changelog
* Fri Aug 9 2024 David Lanzendörfer <leviathan@libresilicon.com> - prjoxide
Initial
openSUSE Build Service is sponsored by