From 20af76a681620c4b26cb592c4fa0890fd6ca4f68 Mon Sep 17 00:00:00 2001 From: byeX012 Date: Tue, 18 Feb 2020 09:23:56 +0800 Subject: [PATCH] Package init --- python-threadpoolctl.spec | 58 +++++++++++++++++++++++++++++++++++++ threadpoolctl-1.1.0.tar.gz | Bin 0 -> 18910 bytes 2 files changed, 58 insertions(+) create mode 100644 python-threadpoolctl.spec create mode 100644 threadpoolctl-1.1.0.tar.gz diff --git a/python-threadpoolctl.spec b/python-threadpoolctl.spec new file mode 100644 index 0000000..74cdb0e --- /dev/null +++ b/python-threadpoolctl.spec @@ -0,0 +1,58 @@ +%global pypi_name threadpoolctl +%bcond_with test + +Name: python-%{pypi_name} +Version: 1.1.0 +Release: 2 +Summary: Python helpers to limit the number of threads +License: BSD 3-Clause +URL: https://github.com/joblib/threadpoolctl/ +Source0: https://github.com/joblib/threadpoolctl/archive/%{version}/%{pypi_name}-%{version}.tar.gz +BuildArch: noarch +BuildRequires: python3-devel python3-flit python3-pip + +%if %{with test} +BuildRequires: python3-pytest +%endif + +%global _description \ +Python helpers to limit the number of threads used in\ +the threadpool-backed of common native libraries used for\ +scientific computing and data science (e.g. BLAS and OpenMP).\ +\ +Fine control of the underlying thread-pool size can be useful in\ +workloads that involve nested parallelism so as to mitigate oversubscription issues. + +%description %{_description} + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} %{_description} + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +FLIT_NO_NETWORK=1 FLIT_ROOT_INSTALL=1 flit build --format=wheel + +%install +%py3_install_wheel threadpoolctl-*.whl + +%if %{with test} +%check +py.test-%{python3_version} +%endif + +%files -n python3-%{pypi_name} +%license LICENSE +%doc README.md CHANGES.md +%{python3_sitelib}/threadpoolctl.py +%{python3_sitelib}/%{pypi_name}-*.dist-info/ +%{python3_sitelib}/__pycache__/%{pypi_name}.* + + +%changelog +* Mon Feb 10 2020 Jiangping Hu - 1.1.0-2 +- Init package diff --git a/threadpoolctl-1.1.0.tar.gz b/threadpoolctl-1.1.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..bb70c424056d1d77b15323bb96f46333104989b3 GIT binary patch literal 18910 zcmV(`K-0e;iwFP!000001MEEebJ|9?{aJs-7T;VTwZzNd#2xo5#w5`#24BEQGntIM zNDHXeD|*=G>-2xW=j^UPyo{Z?&fG8F85^Npo!6c{uU!$)TVvw*BkCAaMlBZp@c69^ zt;d*ub*A6Q`)E}FWP3=2h|C{DtqyJ7qW(0P? z9NS~s%ys@24q^Wfw$1}tj6>fg(>M;Iqf%*N z$J1n_fomuQ)U#-$TI^b0mPQaSlw2CcEG%(VQBzfkP*)UXkG$m}1-Yi7O-Bxk$k-1F zbsX}CKZ=z3?IVSd_j-SL(d@Ll?~h16W>I|2yz4x4{Le*KAO3#Uk+)Tg##Fm?9qeoM zPTQ^Cdt=!9t=)wICSzq*FV|JGQf2BvrS@8-^q{6Ts+IAm(xBDa!C_ue6hwcdC@P7W z8#pv(N8tXv*!B`Xi45C|*(9W~?R%vg+q3)|!4M$<4XMk3VNNn39(+3@AH*1b=i1d> zI)R(lQMFt-RN;B}Z16sp#-V*Ho&;F4+MxkhEt=i|A+-Agz1KC)KMvpZkfEA(n4kBa zH(S3o-?sb6C_a~8Kx*6rQsZ8b>bT(Vgj3%L2cAO7-b18;AKABe3bX@H-7bqW86{qv zsFj9RKG-14J@E_yov}mT!$5|_K0$>c@s!4Z$h-nTk@yA*4VO2d-Q5r4j> zj%dV4`jvmf^|rVJU-I{ynO4i_T@2fOqtol1LnqL+)Twv78#}XH`2q7re~+;g#GJMH zjVItGRf?a;`7ECL9)UGLU=qpHcl`qJ{yQwuSe4)rGD|3*

>kBuTU&HyG3*a6K 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 literal 0 HcmV?d00001 -- Gitee