packages: amsn/amsn.spec, amsn/find-lang.sh (NEW) - handle languages via fi...

glen glen at pld-linux.org
Thu Feb 25 22:23:50 CET 2010


Author: glen                         Date: Thu Feb 25 21:23:50 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- handle languages via find-lang.sh
- drop epoch 0

---- Files affected:
packages/amsn:
   amsn.spec (1.32 -> 1.33) , find-lang.sh (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/amsn/amsn.spec
diff -u packages/amsn/amsn.spec:1.32 packages/amsn/amsn.spec:1.33
--- packages/amsn/amsn.spec:1.32	Sat Feb  6 22:58:48 2010
+++ packages/amsn/amsn.spec	Thu Feb 25 22:23:44 2010
@@ -1,4 +1,10 @@
 # $Revision$, $Date$
+# TODO
+# - farsight.so in %{_datadir}!
+# - asyncresolver.so in %{_datadir}!
+# - tclISF.so in %{_datadir}!
+# - Requires: /bin/bash /bin/sh /usr/bin/env /usr/bin/perl
+# - mv languages instead handling specially in find-lang.sh, send to upstream
 Summary:	MSN Messenger clone for Linux
 Summary(de.UTF-8):	MSN Messenger-Klon für Linux
 Summary(fr.UTF-8):	Clône MSN Messenger pour Linux
@@ -6,11 +12,11 @@
 Name:		amsn
 Version:	0.98.1
 Release:	2
-Epoch:		0
 License:	GPL
 Group:		Applications/Communications
 Source0:	http://dl.sourceforge.net/amsn/%{name}-%{version}.tar.gz
 # Source0-md5:	8c608673a4e920b83cc9f41c2cb837dc
+Source1:	find-lang.sh
 Patch0:		%{name}-desktop.patch
 Patch1:		%{name}-paths.patch
 Patch2:		%{name}-libpng.patch
@@ -39,6 +45,8 @@
 Requires:	tk >= 8.4
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define		find_lang 	%{SOURCE1} %{buildroot}
+
 %description
 This is Tcl/Tk clone that implements the Microsoft Messenger (MSN) for
 Unix, Windows, or Macintosh platforms. It supports file transfers,
@@ -142,6 +150,11 @@
 # docs in docs
 rm -r $RPM_BUILD_ROOT%{_datadir}/%{name}/utils/*/test.tcl
 
+%find_lang %{name}
+
+grep /plugins/ %{name}.lang > %{name}-plugins.lang
+sed -i -e '/plugins/d' %{name}.lang
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -151,7 +164,7 @@
 %postun
 %update_icon_cache hicolor
 
-%files
+%files -f %{name}.lang
 %defattr(644,root,root,755)
 %doc FAQ HELP README TODO CREDITS
 %attr(755,root,root) %{_bindir}/amsn
@@ -164,54 +177,6 @@
 
 # langlist explains the language codes used
 %{_datadir}/%{name}/langlist
-%dir %{_datadir}/%{name}/lang
-%{_datadir}/%{name}/lang/langen
-%lang(sq) %{_datadir}/%{name}/lang/langal
-%lang(ca) %{_datadir}/%{name}/lang/langca
-%lang(ca) %{_datadir}/%{name}/lang/langca_VC
-%lang(cs) %{_datadir}/%{name}/lang/langcs
-%lang(cy) %{_datadir}/%{name}/lang/langcy
-%lang(da) %{_datadir}/%{name}/lang/langda
-%lang(de) %{_datadir}/%{name}/lang/langde
-%lang(et) %{_datadir}/%{name}/lang/langee
-%lang(el) %{_datadir}/%{name}/lang/langel
-%lang(es) %{_datadir}/%{name}/lang/langes
-%lang(eu) %{_datadir}/%{name}/lang/langeu
-%lang(fi) %{_datadir}/%{name}/lang/langfi
-%lang(fr) %{_datadir}/%{name}/lang/langfr
-%lang(fr_CA) %{_datadir}/%{name}/lang/langfr_CA
-%lang(fy) %{_datadir}/%{name}/lang/langfri
-%lang(gl) %{_datadir}/%{name}/lang/langglg
-%lang(el) %{_datadir}/%{name}/lang/langgr2
-%lang(hu) %{_datadir}/%{name}/lang/langhu
-%lang(id) %{_datadir}/%{name}/lang/langid
-%lang(is) %{_datadir}/%{name}/lang/langis
-%lang(it) %{_datadir}/%{name}/lang/langit
-%lang(ja) %{_datadir}/%{name}/lang/langja
-%lang(ko) %{_datadir}/%{name}/lang/langko
-%lang(ku) %{_datadir}/%{name}/lang/langku
-%lang(lt) %{_datadir}/%{name}/lang/langlt
-%lang(mk) %{_datadir}/%{name}/lang/langmk
-%lang(mt) %{_datadir}/%{name}/lang/langmt
-%lang(nl) %{_datadir}/%{name}/lang/langnl
-%lang(nb) %{_datadir}/%{name}/lang/langno
-%lang(oc) %{_datadir}/%{name}/lang/langoc
-%lang(pl) %{_datadir}/%{name}/lang/langpl
-%lang(pt) %{_datadir}/%{name}/lang/langpt
-%lang(pt_BR) %{_datadir}/%{name}/lang/langpt_BR
-%lang(ro) %{_datadir}/%{name}/lang/langro
-%lang(ru) %{_datadir}/%{name}/lang/langru
-%lang(sk) %{_datadir}/%{name}/lang/langsk
-%lang(sl) %{_datadir}/%{name}/lang/langsl
-%lang(sr) %{_datadir}/%{name}/lang/langsr
-%lang(sv) %{_datadir}/%{name}/lang/langsv
-%lang(tr) %{_datadir}/%{name}/lang/langtr
-%lang(vn) %{_datadir}/%{name}/lang/langvn
-%lang(zh_CN) %{_datadir}/%{name}/lang/langzh-CN
-%lang(zh_TW) %{_datadir}/%{name}/lang/langzh-TW
-
-# no ISO 639-1 code present
-%lang(NONE) %{_datadir}/%{name}/lang/langast
 
 %dir %{_datadir}/%{name}/plugins
 %{_datadir}/%{name}/skins
@@ -228,7 +193,7 @@
 %dir %{tcl_sitearch}/capture/libng/plugins
 %attr(755,root,root) %{tcl_sitearch}/capture/libng/plugins/*.so
 
-%files plugins
+%files plugins -f %{name}.lang
 %defattr(644,root,root,755)
 %{_datadir}/%{name}/plugins/*
 
@@ -238,6 +203,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.33  2010/02/25 21:23:44  glen
+- handle languages via find-lang.sh
+- drop epoch 0
+
 Revision 1.32  2010/02/06 21:58:48  sparky
 - BR: libpng-devel >= 2:1.4 because of libpng patch
 

================================================================
Index: packages/amsn/find-lang.sh
diff -u /dev/null packages/amsn/find-lang.sh:1.1
--- /dev/null	Thu Feb 25 22:23:50 2010
+++ packages/amsn/find-lang.sh	Thu Feb 25 22:23:44 2010
@@ -0,0 +1,68 @@
+#!/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/share/amsn
+langfile=$1.lang
+tmp=$(mktemp) || exit 1
+rc=0
+
+find $dir -type d -name lang > $tmp
+
+echo '%defattr(644,root,root,755)' > $langfile
+while read dir; do
+	echo "%dir ${dir#$RPM_BUILD_ROOT}" >> $langfile
+	for dir in $dir/*; do
+		dir=${dir#$RPM_BUILD_ROOT}
+		lang=${dir##*/lang}
+		case "$lang" in
+		zh-TW)
+			lang=zh_TW
+			;;
+		zh-CN)
+			lang=zh_CN
+			;;
+		al)
+			lang=sq
+			;;
+		ca_VC)
+			lang=ca
+			;;
+		ee)
+			lang=et
+			;;
+		fri)
+			lang=fy
+			;;
+		glg)
+			lang=gl
+			;;
+		gr2)
+			lang=el
+			;;
+		no)
+			lang=nb
+			;;
+		ast)
+			# no ISO 639-1 code present
+			lang=NONE
+			;;
+		*-*)
+			echo >&2 "ERROR: Need mapping for $lang!"
+			rc=1
+		;;
+		esac
+		echo "%lang($lang) ${dir#$RPM_BUILD_ROOT}" >> $langfile
+	done
+done < $tmp
+
+if [ "$(egrep -v '(^%defattr|^$)' $langfile | wc -l)" -le 0 ]; then
+	echo >&2 "$PROG: Error: international files not found!"
+	rc=1
+fi
+
+rm -f $tmp
+exit $rc
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/amsn/amsn.spec?r1=1.32&r2=1.33&f=u



More information about the pld-cvs-commit mailing list