diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7174db7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/libmimalloc-sys-0.1.28.crate diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..9a3377d --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,25 @@ +Copyright 2019 Octavian Oncescu + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/rust-libmimalloc-sys.spec b/rust-libmimalloc-sys.spec new file mode 100644 index 0000000..4d1f79f --- /dev/null +++ b/rust-libmimalloc-sys.spec @@ -0,0 +1,163 @@ +# Generated by rust2rpm 23 +%bcond_without check +%global debug_package %{nil} + +%global crate libmimalloc-sys + +Name: rust-libmimalloc-sys +Version: 0.1.28 +Release: %autorelease +Summary: Sys crate wrapping the mimalloc allocator + +License: MIT +URL: https://crates.io/crates/libmimalloc-sys +Source: %{crates_source} +# PR to add license text: https://github.com/purpleprotocol/mimalloc_rust/pull/88 +Source1: https://raw.githubusercontent.com/purpleprotocol/mimalloc_rust/master/LICENSE.txt + +BuildRequires: rust-packaging >= 21 + +# TODO: get this to build against system mimalloc +# or ask mimalloc dev to switch to mimalloc-sys +Provides: bundled(mimalloc) = 2.0.7 + +%global _description %{expand: +Sys crate wrapping the mimalloc allocator.} + +%description %{_description} + +%package devel +Summary: %{summary} +BuildArch: noarch + +%description devel %{_description} + +This package contains library source intended for building other packages which +use the "%{crate}" crate. + +%files devel +%license %{crate_instdir}/LICENSE.txt +%license %{crate_instdir}/c_src/mimalloc/LICENSE +%{crate_instdir}/ + +%package -n %{name}+default-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+default-devel %{_description} + +This package contains library source intended for building other packages which +use the "default" feature of the "%{crate}" crate. + +%files -n %{name}+default-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+cty-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cty-devel %{_description} + +This package contains library source intended for building other packages which +use the "cty" feature of the "%{crate}" crate. + +%files -n %{name}+cty-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+debug-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+debug-devel %{_description} + +This package contains library source intended for building other packages which +use the "debug" feature of the "%{crate}" crate. + +%files -n %{name}+debug-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+debug_in_debug-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+debug_in_debug-devel %{_description} + +This package contains library source intended for building other packages which +use the "debug_in_debug" feature of the "%{crate}" crate. + +%files -n %{name}+debug_in_debug-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+extended-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+extended-devel %{_description} + +This package contains library source intended for building other packages which +use the "extended" feature of the "%{crate}" crate. + +%files -n %{name}+extended-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+local_dynamic_tls-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+local_dynamic_tls-devel %{_description} + +This package contains library source intended for building other packages which +use the "local_dynamic_tls" feature of the "%{crate}" crate. + +%files -n %{name}+local_dynamic_tls-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+override-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+override-devel %{_description} + +This package contains library source intended for building other packages which +use the "override" feature of the "%{crate}" crate. + +%files -n %{name}+override-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+secure-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+secure-devel %{_description} + +This package contains library source intended for building other packages which +use the "secure" feature of the "%{crate}" crate. + +%files -n %{name}+secure-devel +%ghost %{crate_instdir}/Cargo.toml + +%prep +%autosetup -n %{crate}-%{version_no_tilde} -p1 +# copy license text in +cp -p %{SOURCE1} . +# these are Windows .exe and .dlls, and unneeded +# see build.rs for the ones that are actually referenced +rm -rf c_src/mimalloc/bin +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires + +%build +%cargo_build + +%install +%cargo_install + +%if %{with check} +%check +%cargo_test +%endif + +%changelog +%autochangelog diff --git a/sources b/sources new file mode 100644 index 0000000..005f199 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (libmimalloc-sys-0.1.28.crate) = e3f1ebe2a87af1f6fa52222d4f3441a632bdba0698afcb1fbbb8e353ff01aab79497e1204fe0edca305119695a30b39c34f9a12846cd523cce9d747dd5a9212c