%if 0%{?fedora} %global with_python3 1 %endif # fedora %define unicode_version 6.2.0 %define srcdir emptypage-uniseg-python-8fed7c16392f Name: python-uniseg Version: 0.7.0 Release: 1%{?snapshot}%{?dist} Summary: A pure Python module to determine Unicode text segmentation Group: Applications/System License: MIT URL: https://bitbucket.org/emptypage/uniseg-python Source0: https://bitbucket.org/emptypage/uniseg-python/get/rel-%{version}.tar.gz # Unicode files from http://www.unicode.org/Public/6.2.0/ucd/auxiliary/ Source1001: GraphemeBreakProperty.txt Source1002: GraphemeBreakTest.txt Source1003: LineBreak.txt Source1004: LineBreakTest.txt Source1005: SentenceBreakProperty.txt Source1006: SentenceBreakTest.txt Source1007: WordBreakProperty.txt Source1008: WordBreakTest.txt BuildArch: noarch BuildRequires: curl BuildRequires: sqlite BuildRequires: python-setuptools BuildRequires: python-devel %global pkgdesc Uniseg is a Python module that provides functions to wrap words based on \ Unicode Character Database (UCD) version %{unicode_version}. %description %{pkgdesc} %if 0%{?with_python3} %package -n python3-uniseg Summary: A pure Python module to determine Unicode text segmentation BuildRequires: python3-devel %description -n python3-uniseg %{pkgdesc} %endif # with_python3 %prep %setup -q -n %{srcdir} %build # copy unicode files to the right place %{__mkdir_p} data/%{unicode_version}/auxiliary %{__cp} %{SOURCE1001} %{SOURCE1002} %{SOURCE1003} %{SOURCE1004} \ %{SOURCE1005} %{SOURCE1006} %{SOURCE1007} %{SOURCE1008} \ data/%{unicode_version}/auxiliary/ # prepare unicode files %{__mkdir_p} csv %{__python} tools/prop2csv.py -o csv/GraphemeClusterBreak.csv data/%{unicode_version}/auxiliary/GraphemeBreakProperty.txt %{__python} tools/test2csv.py -p GB -o csv/GraphemeClusterBreakTest.csv data/%{unicode_version}/auxiliary/GraphemeBreakTest.txt %{__python} tools/prop2csv.py -o csv/WordBreak.csv data/%{unicode_version}/auxiliary/WordBreakProperty.txt %{__python} tools/test2csv.py -p WB -o csv/WordBreakTest.csv data/%{unicode_version}/auxiliary/WordBreakTest.txt %{__python} tools/prop2csv.py -o csv/SentenceBreak.csv data/%{unicode_version}/auxiliary/SentenceBreakProperty.txt %{__python} tools/test2csv.py -p SB -o csv/SentenceBreakTest.csv data/%{unicode_version}/auxiliary/SentenceBreakTest.txt %{__python} tools/prop2csv.py -o csv/LineBreak.csv data/%{unicode_version}/auxiliary/LineBreak.txt %{__python} tools/test2csv.py -p LB -o csv/LineBreakTest.csv data/%{unicode_version}/auxiliary/LineBreakTest.txt # create unicode database sqlite3 uniseg/ucd.sqlite3 < schema.sql ||: sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/GraphemeClusterBreak.csv GraphemeClusterBreak" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/GraphemeClusterBreakTest.csv GraphemeClusterBreakTest" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/WordBreak.csv WordBreak" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/WordBreakTest.csv WordBreakTest" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/SentenceBreak.csv SentenceBreak" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/SentenceBreakTest.csv SentenceBreakTest" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/LineBreak.csv LineBreak" sqlite3 -csv uniseg/ucd.sqlite3 ".import csv/LineBreakTest.csv LineBreakTest" sqlite3 uniseg/ucd.sqlite3 "vacuum" %install %{__rm} -rf %{buildroot} %{__python2} setup.py install --root %{buildroot} %if 0%{?with_python3} %{__python3} setup.py install --root %{buildroot} # strip python3 from shebang line sed -i'' -e 's,^.*#!/usr/bin/python3.*$,#!/usr/bin/python,g' %{buildroot}%{_bindir}/uniseg-dbpath %endif # with_python3 %files %{python2_sitelib}/*egg-info/ %{python2_sitelib}/uniseg/ %attr(0755,root,root) %{_bindir}/uniseg-dbpath %if 0%{?with_python3} %files -n python3-uniseg %{python3_sitelib}/*egg-info/ %{python3_sitelib}/uniseg/ %attr(0755,root,root) %{_bindir}/uniseg-dbpath %endif # with_python3 %changelog * Mon Apr 27 2015 Murilo Opsfelder Araújo 0.7.0-1 - Initial build