]> git.pld-linux.org Git - packages/python3-django.git/blob - python3-django.spec
rebuild with tests and docs
[packages/python3-django.git] / python3-django.spec
1 #
2 # Conditional build:
3 %bcond_without  doc     # Sphinx documentation
4 %bcond_with     tests   # unit tests [1 failure as of 2.2.17]
5
6 %define         module          django
7 %define         egg_name        Django
8 Summary:        The web framework for perfectionists with deadlines
9 Summary(pl.UTF-8):      Szkielet WWW dla perfekcjonistów z ograniczeniami czasowymi
10 Name:           python3-%{module}
11 # stay on LTS line
12 # https://www.djangoproject.com/download/#supported-versions
13 Version:        2.2.17
14 Release:        4
15 License:        BSD
16 Group:          Libraries/Python
17 Source0:        https://www.djangoproject.com/m/releases/2.2/Django-%{version}.tar.gz
18 # Source0-md5:  832805a3fdf817d4546609df1ed2a174
19 URL:            https://www.djangoproject.com/
20 %if %(locale -a | grep -q '^C\.utf8$'; echo $?)
21 BuildRequires:  glibc-localedb-all
22 %endif
23 BuildRequires:  rpm-pythonprov
24 BuildRequires:  rpmbuild(find_lang) >= 1.40
25 BuildRequires:  rpmbuild(macros) >= 1.714
26 %{?with_doc:BuildRequires:      sphinx-pdg}
27 BuildRequires:  python3-devel >= 1:3.5
28 BuildRequires:  python3-setuptools
29 %if %{with tests}
30 BuildRequires:  python3-pytz
31 BuildRequires:  python3-selenium
32 BuildRequires:  python3-sqlparse >= 0.2.2
33 %endif
34 %if %{with doc}
35 BuildRequires:  sphinx-pdg >= 1.6.0
36 %endif
37 Suggests:       python3-MySQLdb
38 Suggests:       python3-PyGreSQL
39 Suggests:       python3-devel-tools
40 Conflicts:      python-django < 1.11.29
41 BuildArch:      noarch
42 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44 %description
45 Django is a high-level Python Web framework that encourages rapid
46 development and clean, pragmatic design.
47
48 %description -l pl.UTF-8
49 Django to wysokopoziomowy szkielet dla serwisów WWW w Pythonie
50 wspierający szybkie tworzenie i czysty, pragmatyczny projekt.
51
52 %package doc
53 Summary:        Documentation on Django
54 Summary(de.UTF-8):      Dokumentation zu Django
55 Summary(es.UTF-8):      Documentación para Django
56 Summary(fr.UTF-8):      Documentation sur Django
57 Summary(pl.UTF-8):      Dokumentacja do Django
58 Group:          Documentation
59
60 %description doc
61 Documentation on Django.
62
63 %description doc -l pl.UTF-8
64 Dokumentacja do Django.
65
66 %prep
67 %setup -q -n Django-%{version}
68
69 %build
70 %py3_build
71
72 %if %{with tests}
73 LC_ALL=C.UTF-8 \
74 PYTHONPATH=$(pwd)/build-3/lib:$(pwd) \
75 %{__python3} tests/runtests.py --parallel 1
76 %endif
77
78 %if %{with doc}
79 %{__make} -C docs html
80 %endif
81
82 %install
83 rm -rf $RPM_BUILD_ROOT
84
85 %py3_install
86
87 %{__mv} $RPM_BUILD_ROOT%{_bindir}/{django-admin.py,django-admin-3}
88 ln -s django-admin-3 $RPM_BUILD_ROOT%{_bindir}/py3-django-admin
89
90 %{__sed} -i -e '1s,/usr/bin/env python$,%{__python3},' $RPM_BUILD_ROOT%{py3_sitescriptdir}/django/conf/project_template/manage.py-tpl
91 %{__sed} -i -e '1s,/usr/bin/env python$,%{__python3},' $RPM_BUILD_ROOT%{py3_sitescriptdir}/django/bin/django-admin.py
92
93 # setup "django-admin" global alias
94 ln -sf py3-django-admin $RPM_BUILD_ROOT%{_bindir}/django-admin
95
96 %if %{with doc}
97 install -d $RPM_BUILD_ROOT%{_docdir}
98 ln -sf python-django-doc-%{version} $RPM_BUILD_ROOT%{_docdir}/python-django-doc
99 %endif
100
101 # don't package .po sources
102 find \
103         %{?with_python2:$RPM_BUILD_ROOT%{py_sitescriptdir}/%{module}} \
104         %{?with_python3:$RPM_BUILD_ROOT%{py3_sitescriptdir}/%{module}} \
105         -name django.po -o \
106         -name djangojs.po | xargs %{__rm} -v
107
108 %find_lang django --with-django --all-name
109
110 # fix after find-lang:
111 # - remove __pycache__ "language"
112 # - drop charsets from lang names (django uses non-standard _Charset instead of @charset)
113 grep -v __pycache__ <django.lang | \
114         sed -e 's/lang(sr_Latn)/lang(sr)/;s/lang(zh_Hans)/lang(zh_CN)/;s/lang(zh_Hant)/lang(zh_TW)/' > %{name}.lang
115
116 %clean
117 rm -rf $RPM_BUILD_ROOT
118
119 %files -f %{name}.lang
120 %defattr(644,root,root,755)
121 %doc AUTHORS LICENSE README.rst
122 %attr(755,root,root) %{_bindir}/django-admin
123 %attr(755,root,root) %{_bindir}/py3-django-admin
124 %attr(755,root,root) %{_bindir}/django-admin-3
125 %dir %{py3_sitescriptdir}/%{module}
126 %{py3_sitescriptdir}/%{module}/*.py
127 %{py3_sitescriptdir}/%{module}/__pycache__
128 %{py3_sitescriptdir}/%{module}/apps
129 %{py3_sitescriptdir}/%{module}/bin
130 %{py3_sitescriptdir}/%{module}/core
131 %{py3_sitescriptdir}/%{module}/db
132 %{py3_sitescriptdir}/%{module}/dispatch
133 %{py3_sitescriptdir}/%{module}/forms
134 %{py3_sitescriptdir}/%{module}/http
135 %{py3_sitescriptdir}/%{module}/middleware
136 %{py3_sitescriptdir}/%{module}/template
137 %{py3_sitescriptdir}/%{module}/templatetags
138 %{py3_sitescriptdir}/%{module}/test
139 %{py3_sitescriptdir}/%{module}/urls
140 %{py3_sitescriptdir}/%{module}/utils
141 %{py3_sitescriptdir}/%{module}/views
142
143 %dir %{py3_sitescriptdir}/%{module}/conf
144 %{py3_sitescriptdir}/%{module}/conf/*.py
145 %{py3_sitescriptdir}/%{module}/conf/__pycache__
146 %{py3_sitescriptdir}/%{module}/conf/app_template
147 %dir %{py3_sitescriptdir}/%{module}/conf/locale
148 %{py3_sitescriptdir}/%{module}/conf/locale/__init__.py
149 %{py3_sitescriptdir}/%{module}/conf/locale/__pycache__
150 %{py3_sitescriptdir}/%{module}/conf/project_template
151 %{py3_sitescriptdir}/%{module}/conf/urls
152
153 %dir %{py3_sitescriptdir}/%{module}/contrib
154 %{py3_sitescriptdir}/%{module}/contrib/*.py
155 %{py3_sitescriptdir}/%{module}/contrib/__pycache__
156 %dir %{py3_sitescriptdir}/%{module}/contrib/admin
157 %{py3_sitescriptdir}/%{module}/contrib/admin/*.py
158 %{py3_sitescriptdir}/%{module}/contrib/admin/__pycache__
159 %dir %{py3_sitescriptdir}/%{module}/contrib/admin/locale
160 %{py3_sitescriptdir}/%{module}/contrib/admin/migrations
161 %{py3_sitescriptdir}/%{module}/contrib/admin/static
162 %{py3_sitescriptdir}/%{module}/contrib/admin/templates
163 %{py3_sitescriptdir}/%{module}/contrib/admin/templatetags
164 %{py3_sitescriptdir}/%{module}/contrib/admin/views
165 %dir %{py3_sitescriptdir}/%{module}/contrib/admindocs
166 %{py3_sitescriptdir}/%{module}/contrib/admindocs/*.py
167 %{py3_sitescriptdir}/%{module}/contrib/admindocs/__pycache__
168 %dir %{py3_sitescriptdir}/%{module}/contrib/admindocs/locale
169 %{py3_sitescriptdir}/%{module}/contrib/admindocs/templates
170 %dir %{py3_sitescriptdir}/%{module}/contrib/auth
171 %{py3_sitescriptdir}/%{module}/contrib/auth/*.py
172 %{py3_sitescriptdir}/%{module}/contrib/auth/__pycache__
173 %{py3_sitescriptdir}/%{module}/contrib/auth/common-passwords.txt.gz
174 %{py3_sitescriptdir}/%{module}/contrib/auth/handlers
175 %dir %{py3_sitescriptdir}/%{module}/contrib/auth/locale
176 %{py3_sitescriptdir}/%{module}/contrib/auth/management
177 %{py3_sitescriptdir}/%{module}/contrib/auth/migrations
178 %{py3_sitescriptdir}/%{module}/contrib/auth/templates
179 %dir %{py3_sitescriptdir}/%{module}/contrib/contenttypes
180 %{py3_sitescriptdir}/%{module}/contrib/contenttypes/*.py
181 %{py3_sitescriptdir}/%{module}/contrib/contenttypes/__pycache__
182 %dir %{py3_sitescriptdir}/%{module}/contrib/contenttypes/locale
183 %{py3_sitescriptdir}/%{module}/contrib/contenttypes/management
184 %{py3_sitescriptdir}/%{module}/contrib/contenttypes/migrations
185 %dir %{py3_sitescriptdir}/%{module}/contrib/flatpages
186 %{py3_sitescriptdir}/%{module}/contrib/flatpages/*.py
187 %{py3_sitescriptdir}/%{module}/contrib/flatpages/__pycache__
188 %dir %{py3_sitescriptdir}/%{module}/contrib/flatpages/locale
189 %{py3_sitescriptdir}/%{module}/contrib/flatpages/migrations
190 %{py3_sitescriptdir}/%{module}/contrib/flatpages/templatetags
191 %dir %{py3_sitescriptdir}/%{module}/contrib/gis
192 %{py3_sitescriptdir}/%{module}/contrib/gis/*.py
193 %{py3_sitescriptdir}/%{module}/contrib/gis/__pycache__
194 %{py3_sitescriptdir}/%{module}/contrib/gis/admin
195 %{py3_sitescriptdir}/%{module}/contrib/gis/db
196 %{py3_sitescriptdir}/%{module}/contrib/gis/forms
197 %{py3_sitescriptdir}/%{module}/contrib/gis/gdal
198 %{py3_sitescriptdir}/%{module}/contrib/gis/geoip2
199 %{py3_sitescriptdir}/%{module}/contrib/gis/geos
200 %dir %{py3_sitescriptdir}/%{module}/contrib/gis/locale
201 %{py3_sitescriptdir}/%{module}/contrib/gis/management
202 %{py3_sitescriptdir}/%{module}/contrib/gis/serializers
203 %{py3_sitescriptdir}/%{module}/contrib/gis/sitemaps
204 %{py3_sitescriptdir}/%{module}/contrib/gis/static
205 %{py3_sitescriptdir}/%{module}/contrib/gis/templates
206 %{py3_sitescriptdir}/%{module}/contrib/gis/utils
207 %dir %{py3_sitescriptdir}/%{module}/contrib/humanize
208 %{py3_sitescriptdir}/%{module}/contrib/humanize/*.py
209 %{py3_sitescriptdir}/%{module}/contrib/humanize/__pycache__
210 %dir %{py3_sitescriptdir}/%{module}/contrib/humanize/locale
211 %{py3_sitescriptdir}/%{module}/contrib/humanize/templatetags
212 %dir %{py3_sitescriptdir}/%{module}/contrib/messages
213 %{py3_sitescriptdir}/%{module}/contrib/messages/*.py
214 %{py3_sitescriptdir}/%{module}/contrib/messages/__pycache__
215 %{py3_sitescriptdir}/%{module}/contrib/messages/storage
216 %dir %{py3_sitescriptdir}/%{module}/contrib/postgres
217 %{py3_sitescriptdir}/%{module}/contrib/postgres/*.py
218 %{py3_sitescriptdir}/%{module}/contrib/postgres/__pycache__
219 %{py3_sitescriptdir}/%{module}/contrib/postgres/aggregates
220 %{py3_sitescriptdir}/%{module}/contrib/postgres/fields
221 %{py3_sitescriptdir}/%{module}/contrib/postgres/forms
222 %{py3_sitescriptdir}/%{module}/contrib/postgres/jinja2
223 %dir %{py3_sitescriptdir}/%{module}/contrib/postgres/locale
224 %{py3_sitescriptdir}/%{module}/contrib/postgres/templates
225 %dir %{py3_sitescriptdir}/%{module}/contrib/redirects
226 %{py3_sitescriptdir}/%{module}/contrib/redirects/*.py
227 %{py3_sitescriptdir}/%{module}/contrib/redirects/__pycache__
228 %dir %{py3_sitescriptdir}/%{module}/contrib/redirects/locale
229 %{py3_sitescriptdir}/%{module}/contrib/redirects/migrations
230 %dir %{py3_sitescriptdir}/%{module}/contrib/sessions
231 %{py3_sitescriptdir}/%{module}/contrib/sessions/*.py
232 %{py3_sitescriptdir}/%{module}/contrib/sessions/__pycache__
233 %{py3_sitescriptdir}/%{module}/contrib/sessions/backends
234 %dir %{py3_sitescriptdir}/%{module}/contrib/sessions/locale
235 %{py3_sitescriptdir}/%{module}/contrib/sessions/management
236 %{py3_sitescriptdir}/%{module}/contrib/sessions/migrations
237 %{py3_sitescriptdir}/%{module}/contrib/sitemaps
238 %dir %{py3_sitescriptdir}/%{module}/contrib/sites
239 %{py3_sitescriptdir}/%{module}/contrib/sites/*.py
240 %{py3_sitescriptdir}/%{module}/contrib/sites/__pycache__
241 %dir %{py3_sitescriptdir}/%{module}/contrib/sites/locale
242 %{py3_sitescriptdir}/%{module}/contrib/sites/migrations
243 %{py3_sitescriptdir}/%{module}/contrib/staticfiles
244 %{py3_sitescriptdir}/%{module}/contrib/syndication
245
246 %{py3_sitescriptdir}/%{egg_name}-%{version}-py*.egg-info
247
248 %if %{with doc}
249 %files doc
250 %defattr(644,root,root,755)
251 %doc docs/_build/html/{_images,_modules,_static,faq,howto,internals,intro,misc,ref,releases,topics,*.html,*.js}
252 %{_docdir}/python-django-doc
253 %endif
This page took 0.111869 seconds and 3 git commands to generate.