]> git.pld-linux.org Git - packages/gitlab-ce.git/commitdiff
use find lang to package locales
authorElan Ruusamäe <glen@pld-linux.org>
Tue, 7 Nov 2017 07:23:46 +0000 (09:23 +0200)
committerElan Ruusamäe <glen@pld-linux.org>
Tue, 7 Nov 2017 07:23:46 +0000 (09:23 +0200)
clean-vendor.sh
find-lang.sh [new file with mode: 0755]
gitlab-ce.spec

index f1cd3d119c855d8ce747d20db1087c2703801d40..092d40b25c660d2c264785fc30266fd0da328060 100755 (executable)
@@ -115,6 +115,7 @@ clean_log() {
 clean_locale() {
        cd $root
 
+       rm locale/gitlab.pot
        rm locale/*/gitlab.po.time_stamp
 }
 
diff --git a/find-lang.sh b/find-lang.sh
new file mode 100755 (executable)
index 0000000..824d1d3
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/sh
+PROG=${0##*/}
+if [ $# = 2 ]; then
+       # for using same syntax as rpm own find-lang
+       RPM_BUILD_ROOT=$1
+       shift
+fi
+dir=$RPM_BUILD_ROOT/usr/lib/gitlab/locale
+langfile=$1
+tmp=$(mktemp) || exit 1
+rc=0
+
+find $dir -name '*.po' > $tmp
+
+echo '%defattr(644,root,root,755)' > $langfile
+while read file; do
+       lang=${file##*/}
+       lang=${lang%.po}
+       case "$lang" in
+       *-*)
+               echo >&2 "ERROR: Need mapping for $lang!"
+               rc=1
+       ;;
+       esac
+       echo "%lang($lang) ${file#$RPM_BUILD_ROOT}" >> $langfile
+done < $tmp
+
+if [ "$(grep -Ev '(^%defattr|^$)' $langfile | wc -l)" -le 0 ]; then
+       echo >&2 "$PROG: Error: international files not found!"
+       rc=1
+fi
+
+rm -f $tmp
+exit $rc
index bc5068f8f62ccde14936d57b5b3a60037b776e59..ddcf1c4f2f27f93f09429990a6a5821fe2a50fc9 100644 (file)
@@ -21,7 +21,7 @@
 Summary:       A Web interface to create projects and repositories, manage access and do code reviews
 Name:          gitlab-ce
 Version:       10.1.1
-Release:       0.104
+Release:       0.105
 License:       MIT
 Group:         Applications/WWW
 # md5 deliberately omitted until this package is useful
@@ -40,6 +40,7 @@ Source11:     gitlab-ctl.sh
 Source12:      clean-vendor.sh
 Source13:      nginx.conf
 Source14:      gitconfig
+Source15:      find-lang.sh
 Patch1:                pld.patch
 URL:           https://www.gitlab.com/gitlab-ce/
 BuildRequires: cmake
@@ -72,6 +73,8 @@ Suggests:     redis-server
 Obsoletes:     gitlab <= 8.1.4
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define        find_lang       sh %{SOURCE15} %{buildroot}
+
 %define        _noautoreqfiles redcloth_scan.jar primitives.jar
 
 %define uname    git
@@ -191,6 +194,8 @@ cp -a$l . $RPM_BUILD_ROOT%{appdir}
 # cleanup unneccessary cruft (gem build files, etc)
 sh -x %{SOURCE12} $RPM_BUILD_ROOT%{appdir}
 
+%find_lang %{name}.lang
+
 # rpm cruft from repackaging
 rm -f $RPM_BUILD_ROOT%{appdir}/debug*.list
 
@@ -298,7 +303,7 @@ fi
 %triggerun -- apache < 2.2.0, apache-base
 %webapp_unregister httpd %{_webapp}
 
-%files
+%files -f %{name}.lang
 %defattr(644,root,root,755)
 %doc LICENSE
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gitlab/database.yml
This page took 0.034182 seconds and 4 git commands to generate.