summaryrefslogtreecommitdiff
path: root/python-tokenizers.spec
blob: f3289037671338ade8795e250eff848aac94ae95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
%global pkg_name tokenizers
%global pkg_version 0.15.0
%global pkg_summary Fast State-of-the-Art Tokenizers optimized for Research and Production
%global pkg_description %{expand:
%{pkg_summary}}
%global _empty_manifest_terminate_build 0

Name:           python-%{pkg_name}
Version:        %{pkg_version}
Release:        1
Summary:        %{pkg_summary}

License:        Apache-2.0
URL:            https://github.com/huggingface/tokenizers
Source0:        %{url}/archive/refs/tags/v%{version}.tar.gz#/tokenizers-%{version}.tar.gz

BuildRequires: rust
BuildRequires: cargo

BuildRequires:  python3-devel
BuildRequires:  python3-setuptools
BuildRequires:  python3-setuptools_scm
BuildRequires:  python3-pbr
BuildRequires:  python3-pip
BuildRequires:  python3-wheel
BuildRequires:  python3-hatchling

BuildRequires: python3-maturin

%description
%{pkg_description}

%package -n     python3-%{pkg_name}
Summary:        %{pkg_summary}

%description -n python3-%{pkg_name}
%{pkg_description}

%package help
Summary: the documents and examples for %{pkg_name}

%description help
This package contains the documents and examples for %{pkg_name}

%prep
# 设置 cargo 镜像源
mkdir -vp ${CARGO_HOME:-$HOME/.cargo}

cat << EOF | tee -a ${CARGO_HOME:-$HOME/.cargo}/config
[source.crates-io]
replace-with = 'rsproxy-sparse'
[source.rsproxy]
registry = "https://rsproxy.cn/crates.io-index"
[source.rsproxy-sparse]
registry = "sparse+https://rsproxy.cn/index/"
[registries.rsproxy]
index = "https://rsproxy.cn/crates.io-index"
[net]
git-fetch-with-cli = true
EOF

%autosetup -p1 -n %{pkg_name}-%{pkg_version}

%build
cd ./bindings/python
%pyproject_build

%install
cd ./bindings/python
%pyproject_install
# help pkg files:
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/doclist.lst .

%files -n python3-%{pkg_name}
%license LICENSE
%doc README.md
%{python3_sitearch}/%{pypi_name}*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Mon Apr 15 2024 YunShu
- add help subpackage
* Sun Mar 31 2024 YunShu
- add tokenizers 0.15.0