[packages/python-django] %lang tag language resources

glen glen at pld-linux.org
Sun Apr 23 22:51:47 CEST 2017


commit dd1957b51108273483f086b3a79f4f2bb5f66585
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Sun Apr 23 23:51:30 2017 +0300

    %lang tag language resources

 python-django.spec | 261 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 254 insertions(+), 7 deletions(-)
---
diff --git a/python-django.spec b/python-django.spec
index cae96a0..71de762 100644
--- a/python-django.spec
+++ b/python-django.spec
@@ -3,7 +3,8 @@
 %bcond_without  python2 # CPython 2.x module
 %bcond_without  python3 # CPython 3.x module
 
-%define		module	django
+%define		module		django
+%define		egg_name	Django
 Summary:	The web framework for perfectionists with deadlines
 Summary(pl.UTF-8):	Szkielet WWW dla perfekcjonistów z ograniczeniami czasowymi
 Name:		python-%{module}
@@ -119,22 +120,162 @@ ln -sf py3-django-admin $RPM_BUILD_ROOT%{_bindir}/django-admin
 install -d $RPM_BUILD_ROOT%{_docdir}
 ln -sf python-django-doc-%{version} $RPM_BUILD_ROOT%{_docdir}/python-django-doc
 
+# don't package .po sources
+find \
+	%{?with_python2:$RPM_BUILD_ROOT%{py_sitescriptdir}/%{module}} \
+	%{?with_python3:$RPM_BUILD_ROOT%{py3_sitescriptdir}/%{module}} \
+	-name django.po -o \
+	-name djangojs.po | xargs rm -v
+
+%find_lang django --all-name
+
+# create %dir directives
+# FIXME: move this to find-lang.sh?
+sed -rne 's,.* (/.*)/LC_MESSAGES/.*,\1,p' django.lang | sort -u > dirs
+>localedirs
+while read dir; do
+	lang=${dir##*/}
+	echo "%lang($lang) %dir $dir/LC_MESSAGES"
+done < dirs >> django.lang
+
+find \
+	%{?with_python2:$RPM_BUILD_ROOT%{py_sitescriptdir}/%{module}} \
+	%{?with_python3:$RPM_BUILD_ROOT%{py3_sitescriptdir}/%{module}} \
+	-type d -name locale > localedirs
+while read ldir; do
+	ldir=${ldir#$RPM_BUILD_ROOT}
+	echo "%dir $ldir"
+	if [ "$(ls $RPM_BUILD_ROOT$ldir/*.py* 2>/dev/null)" ]; then
+		echo "$ldir/*.py*"
+	fi
+	for dir in $RPM_BUILD_ROOT$ldir/*; do
+		test -d "$dir" || continue
+		dir=${dir#$RPM_BUILD_ROOT}
+		lang=${dir##*/}
+		echo "%lang($lang) %dir $dir"
+		if [ "$(ls $RPM_BUILD_ROOT$dir/*.py* 2>/dev/null)" ]; then
+			echo "%lang($lang) $dir/*.py*"
+		fi
+		if [ "$(ls $RPM_BUILD_ROOT$dir/__pycache__ 2>/dev/null)" ]; then
+			echo "%lang($lang) $dir/__pycache__"
+		fi
+	done
+done < localedirs >> django.lang
+
+# separate lang to Python 2 and Python 3 files
+%if %{with python2}
+grep python2 django.lang > python2-django.lang
+%endif
+%if %{with python3}
+grep python3 django.lang > python3-django.lang
+%endif
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %if %{with python2}
-%files
+%files -f python2-django.lang
 %defattr(644,root,root,755)
 %doc README.rst
 %attr(755,root,root) %{_bindir}/django-admin
 %attr(755,root,root) %{_bindir}/py2-django-admin
 %attr(755,root,root) %{_bindir}/django-admin-2
-%{py_sitescriptdir}/%{module}*
-%{py_sitescriptdir}/Django-*.egg-info
+%{py_sitescriptdir}/%{module}/*.py[co]
+%{py_sitescriptdir}/%{module}/apps
+%{py_sitescriptdir}/%{module}/bin
+%{py_sitescriptdir}/%{module}/core
+%{py_sitescriptdir}/%{module}/db
+%{py_sitescriptdir}/%{module}/dispatch
+%{py_sitescriptdir}/%{module}/forms
+%{py_sitescriptdir}/%{module}/http
+%{py_sitescriptdir}/%{module}/middleware
+%{py_sitescriptdir}/%{module}/template
+%{py_sitescriptdir}/%{module}/templatetags
+%{py_sitescriptdir}/%{module}/test
+%{py_sitescriptdir}/%{module}/urls
+%{py_sitescriptdir}/%{module}/utils
+%{py_sitescriptdir}/%{module}/views
+
+%dir %{py_sitescriptdir}/%{module}/conf
+%{py_sitescriptdir}/%{module}/conf/*.py[co]
+%{py_sitescriptdir}/%{module}/conf/app_template
+%{py_sitescriptdir}/%{module}/conf/project_template
+%{py_sitescriptdir}/%{module}/conf/urls
+
+%dir %{py_sitescriptdir}/%{module}/contrib
+%dir %{py_sitescriptdir}/%{module}/contrib/admin
+%dir %{py_sitescriptdir}/%{module}/contrib/admindocs
+%dir %{py_sitescriptdir}/%{module}/contrib/auth
+%dir %{py_sitescriptdir}/%{module}/contrib/contenttypes
+%dir %{py_sitescriptdir}/%{module}/contrib/flatpages
+%dir %{py_sitescriptdir}/%{module}/contrib/gis
+%dir %{py_sitescriptdir}/%{module}/contrib/humanize
+%dir %{py_sitescriptdir}/%{module}/contrib/messages
+%dir %{py_sitescriptdir}/%{module}/contrib/postgres
+%dir %{py_sitescriptdir}/%{module}/contrib/redirects
+%dir %{py_sitescriptdir}/%{module}/contrib/sessions
+%dir %{py_sitescriptdir}/%{module}/contrib/sites
+%{py_sitescriptdir}/%{module}/contrib/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/admin/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/admin/migrations
+%{py_sitescriptdir}/%{module}/contrib/admin/static
+%{py_sitescriptdir}/%{module}/contrib/admin/templates
+%{py_sitescriptdir}/%{module}/contrib/admin/templatetags
+%{py_sitescriptdir}/%{module}/contrib/admin/views
+%{py_sitescriptdir}/%{module}/contrib/admindocs/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/admindocs/templates
+%{py_sitescriptdir}/%{module}/contrib/auth/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/auth/common-passwords.txt.gz
+%{py_sitescriptdir}/%{module}/contrib/auth/handlers
+%{py_sitescriptdir}/%{module}/contrib/auth/management
+%{py_sitescriptdir}/%{module}/contrib/auth/migrations
+%{py_sitescriptdir}/%{module}/contrib/auth/templates
+%{py_sitescriptdir}/%{module}/contrib/auth/tests
+%{py_sitescriptdir}/%{module}/contrib/contenttypes/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/contenttypes/management
+%{py_sitescriptdir}/%{module}/contrib/contenttypes/migrations
+%{py_sitescriptdir}/%{module}/contrib/flatpages/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/flatpages/migrations
+%{py_sitescriptdir}/%{module}/contrib/flatpages/templatetags
+%{py_sitescriptdir}/%{module}/contrib/gis/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/gis/admin
+%{py_sitescriptdir}/%{module}/contrib/gis/db
+%{py_sitescriptdir}/%{module}/contrib/gis/forms
+%{py_sitescriptdir}/%{module}/contrib/gis/gdal
+%{py_sitescriptdir}/%{module}/contrib/gis/geoip
+%{py_sitescriptdir}/%{module}/contrib/gis/geoip2
+%{py_sitescriptdir}/%{module}/contrib/gis/geometry
+%{py_sitescriptdir}/%{module}/contrib/gis/geos
+%{py_sitescriptdir}/%{module}/contrib/gis/management
+%{py_sitescriptdir}/%{module}/contrib/gis/serializers
+%{py_sitescriptdir}/%{module}/contrib/gis/sitemaps
+%{py_sitescriptdir}/%{module}/contrib/gis/static
+%{py_sitescriptdir}/%{module}/contrib/gis/templates
+%{py_sitescriptdir}/%{module}/contrib/gis/utils
+%{py_sitescriptdir}/%{module}/contrib/humanize/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/humanize/templatetags
+%{py_sitescriptdir}/%{module}/contrib/messages/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/messages/storage
+%{py_sitescriptdir}/%{module}/contrib/postgres/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/postgres/aggregates
+%{py_sitescriptdir}/%{module}/contrib/postgres/fields
+%{py_sitescriptdir}/%{module}/contrib/postgres/forms
+%{py_sitescriptdir}/%{module}/contrib/redirects/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/redirects/migrations
+%{py_sitescriptdir}/%{module}/contrib/sessions/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/sessions/backends
+%{py_sitescriptdir}/%{module}/contrib/sessions/management
+%{py_sitescriptdir}/%{module}/contrib/sessions/migrations
+%{py_sitescriptdir}/%{module}/contrib/sitemaps
+%{py_sitescriptdir}/%{module}/contrib/sites/*.py[co]
+%{py_sitescriptdir}/%{module}/contrib/sites/migrations
+%{py_sitescriptdir}/%{module}/contrib/staticfiles
+%{py_sitescriptdir}/%{module}/contrib/syndication
+%{py_sitescriptdir}/%{egg_name}-%{version}-py*.egg-info
 %endif
 
 %if %{with python3}
-%files -n python3-%{module}
+%files -n python3-%{module} -f python3-django.lang
 %defattr(644,root,root,755)
 %doc README.rst
 %if %{without python2}
@@ -142,8 +283,114 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %attr(755,root,root) %{_bindir}/py3-django-admin
 %attr(755,root,root) %{_bindir}/django-admin-3
-%{py3_sitescriptdir}/%{module}*
-%{py3_sitescriptdir}/Django-*.egg-info
+%{py3_sitescriptdir}/%{module}/*.py
+%{py3_sitescriptdir}/%{module}/__pycache__
+%{py3_sitescriptdir}/%{module}/apps
+%{py3_sitescriptdir}/%{module}/bin
+%{py3_sitescriptdir}/%{module}/core
+%{py3_sitescriptdir}/%{module}/db
+%{py3_sitescriptdir}/%{module}/dispatch
+%{py3_sitescriptdir}/%{module}/forms
+%{py3_sitescriptdir}/%{module}/http
+%{py3_sitescriptdir}/%{module}/middleware
+%{py3_sitescriptdir}/%{module}/template
+%{py3_sitescriptdir}/%{module}/templatetags
+%{py3_sitescriptdir}/%{module}/test
+%{py3_sitescriptdir}/%{module}/urls
+%{py3_sitescriptdir}/%{module}/utils
+%{py3_sitescriptdir}/%{module}/views
+
+%dir %{py3_sitescriptdir}/%{module}/conf
+%{py3_sitescriptdir}/%{module}/conf/*.py
+%{py3_sitescriptdir}/%{module}/conf/__pycache__
+%{py3_sitescriptdir}/%{module}/conf/app_template
+%{py3_sitescriptdir}/%{module}/conf/project_template
+%{py3_sitescriptdir}/%{module}/conf/urls
+
+%dir %{py3_sitescriptdir}/%{module}/contrib
+%dir %{py3_sitescriptdir}/%{module}/contrib/admin
+%dir %{py3_sitescriptdir}/%{module}/contrib/admindocs
+%dir %{py3_sitescriptdir}/%{module}/contrib/auth
+%dir %{py3_sitescriptdir}/%{module}/contrib/contenttypes
+%dir %{py3_sitescriptdir}/%{module}/contrib/flatpages
+%dir %{py3_sitescriptdir}/%{module}/contrib/gis
+%dir %{py3_sitescriptdir}/%{module}/contrib/humanize
+%dir %{py3_sitescriptdir}/%{module}/contrib/messages
+%dir %{py3_sitescriptdir}/%{module}/contrib/postgres
+%dir %{py3_sitescriptdir}/%{module}/contrib/redirects
+%dir %{py3_sitescriptdir}/%{module}/contrib/sessions
+%dir %{py3_sitescriptdir}/%{module}/contrib/sites
+%{py3_sitescriptdir}/%{module}/contrib/*.py
+%{py3_sitescriptdir}/%{module}/contrib/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/admin/*.py
+%{py3_sitescriptdir}/%{module}/contrib/admin/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/admin/migrations
+%{py3_sitescriptdir}/%{module}/contrib/admin/static
+%{py3_sitescriptdir}/%{module}/contrib/admin/templates
+%{py3_sitescriptdir}/%{module}/contrib/admin/templatetags
+%{py3_sitescriptdir}/%{module}/contrib/admin/views
+%{py3_sitescriptdir}/%{module}/contrib/admindocs/*.py
+%{py3_sitescriptdir}/%{module}/contrib/admindocs/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/admindocs/templates
+%{py3_sitescriptdir}/%{module}/contrib/auth/*.py
+%{py3_sitescriptdir}/%{module}/contrib/auth/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/auth/common-passwords.txt.gz
+%{py3_sitescriptdir}/%{module}/contrib/auth/handlers
+%{py3_sitescriptdir}/%{module}/contrib/auth/management
+%{py3_sitescriptdir}/%{module}/contrib/auth/migrations
+%{py3_sitescriptdir}/%{module}/contrib/auth/templates
+%{py3_sitescriptdir}/%{module}/contrib/auth/tests
+%{py3_sitescriptdir}/%{module}/contrib/contenttypes/*.py
+%{py3_sitescriptdir}/%{module}/contrib/contenttypes/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/contenttypes/management
+%{py3_sitescriptdir}/%{module}/contrib/contenttypes/migrations
+%{py3_sitescriptdir}/%{module}/contrib/flatpages/*.py
+%{py3_sitescriptdir}/%{module}/contrib/flatpages/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/flatpages/migrations
+%{py3_sitescriptdir}/%{module}/contrib/flatpages/templatetags
+%{py3_sitescriptdir}/%{module}/contrib/gis/*.py
+%{py3_sitescriptdir}/%{module}/contrib/gis/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/gis/admin
+%{py3_sitescriptdir}/%{module}/contrib/gis/db
+%{py3_sitescriptdir}/%{module}/contrib/gis/forms
+%{py3_sitescriptdir}/%{module}/contrib/gis/gdal
+%{py3_sitescriptdir}/%{module}/contrib/gis/geoip
+%{py3_sitescriptdir}/%{module}/contrib/gis/geoip2
+%{py3_sitescriptdir}/%{module}/contrib/gis/geometry
+%{py3_sitescriptdir}/%{module}/contrib/gis/geos
+%{py3_sitescriptdir}/%{module}/contrib/gis/management
+%{py3_sitescriptdir}/%{module}/contrib/gis/serializers
+%{py3_sitescriptdir}/%{module}/contrib/gis/sitemaps
+%{py3_sitescriptdir}/%{module}/contrib/gis/static
+%{py3_sitescriptdir}/%{module}/contrib/gis/templates
+%{py3_sitescriptdir}/%{module}/contrib/gis/utils
+%{py3_sitescriptdir}/%{module}/contrib/humanize/*.py
+%{py3_sitescriptdir}/%{module}/contrib/humanize/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/humanize/templatetags
+%{py3_sitescriptdir}/%{module}/contrib/messages/*.py
+%{py3_sitescriptdir}/%{module}/contrib/messages/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/messages/storage
+%{py3_sitescriptdir}/%{module}/contrib/postgres/*.py
+%{py3_sitescriptdir}/%{module}/contrib/postgres/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/postgres/aggregates
+%{py3_sitescriptdir}/%{module}/contrib/postgres/fields
+%{py3_sitescriptdir}/%{module}/contrib/postgres/forms
+%{py3_sitescriptdir}/%{module}/contrib/redirects/*.py
+%{py3_sitescriptdir}/%{module}/contrib/redirects/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/redirects/migrations
+%{py3_sitescriptdir}/%{module}/contrib/sessions/*.py
+%{py3_sitescriptdir}/%{module}/contrib/sessions/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/sessions/backends
+%{py3_sitescriptdir}/%{module}/contrib/sessions/management
+%{py3_sitescriptdir}/%{module}/contrib/sessions/migrations
+%{py3_sitescriptdir}/%{module}/contrib/sitemaps
+%{py3_sitescriptdir}/%{module}/contrib/sites/*.py
+%{py3_sitescriptdir}/%{module}/contrib/sites/__pycache__
+%{py3_sitescriptdir}/%{module}/contrib/sites/migrations
+%{py3_sitescriptdir}/%{module}/contrib/staticfiles
+%{py3_sitescriptdir}/%{module}/contrib/syndication
+
+%{py3_sitescriptdir}/%{egg_name}-%{version}-py*.egg-info
 %endif
 
 %files doc
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/python-django.git/commitdiff/dd1957b51108273483f086b3a79f4f2bb5f66585



More information about the pld-cvs-commit mailing list