Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:marec2000:devel:languages:rust
cxx
cxx.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File cxx.spec of Package cxx
# # spec file for package cxx # # 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: cxx Version: 1.0.130 Release: 0 Summary: Safe FFI between Rust and C++ License: Apache-2.0 AND MIT Group: Development/Libraries/Rust URL: https://%{name}.rs/ Source0: %{name}-%{version}.tar.xz Source1: vendor.tar.xz ExclusiveArch: %{rust_tier1_arches} BuildRequires: cargo-packaging BuildRequires: gcc-c++ BuildRequires: rust+rustc >= 1.70.0 %define cargo_build_src gen/cmd %description This library provides a safe mechanism for calling C++ code from Rust and Rust code from C++, not subject to the many ways that things can go wrong when using bindgen or cbindgen to generate unsafe C-style bindings. This doesn't change the fact that 100% of C++ code is unsafe. When auditing a project, you would be on the hook for auditing all the unsafe Rust code and all the C++ code. The core safety claim under this new model is that auditing just the C++ side would be sufficient to catch all problems, i.e. the Rust side can be 100% safe. %package devel Summary: Development files for %{name} Group: Development/Libraries/C and C++ Requires: %{name} = %{version} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep %setup -q # setup rust vendored sources %setup -q -D -T -a 1 %build pushd . cd %{cargo_build_src} %{cargo_build} popd %{__strip} -s target/release/cxxbridge %install pushd . cd %{cargo_build_src} %{cargo_install} popd %{__install} -D -m 0644 -p include/cxx.h %{buildroot}%{_includedir}/rust/cxx.h %check cd %{cargo_build_src} %{cargo_test} %files %defattr(-,root,root,-) %attr(755,root,root) %{_bindir}/cxxbridge %license LICENSE-* %files devel %defattr(-,root,root,-) %dir %{_includedir}/rust %{_includedir}/rust/*.h %doc README.md %license LICENSE-* %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