Mercurial > pidgin.yaz
annotate setup-gettext @ 5422:af62169c74fd
[gaim-migrate @ 5801]
Not to be too LSchieresque, but:
<SeanEgan> Which should I do? Finish writing sorting code or commit sorting code?
<Robot101> the latter, then the former.
This is my incomplete buddy list sorting code. Sorting methods are modular, a plugin
can add its own if it wanted to. Included are four sorting methods:
None - this will be perceived as no sorting. It sorts the list in the order specified
in blist.xml
Alphabetical - duh.
By status - this isn't really written yet, but I'm going to fix it right now. This will
sort using idle time, away status, and online status when it's written
By log file size - this puts the people you talk to the most at the top of your list. Pretty
keen, eh?
Of course this is replete with Sean Egan Hacks (TM).
Now I'm going to go eat some weird "golden crunch" cereal from nestle.
committer: Tailor Script <tailor@pidgin.im>
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Sun, 18 May 2003 03:41:31 +0000 |
parents | d6491dc2b7b2 |
children | c92584ee753d |
rev | line source |
---|---|
3414 | 1 #!/bin/sh |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
2 # |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
3 # setup-gettext - Provides compatibility with versions of gettext |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
4 # from the 0.10.x series and 0.11.x. |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
5 # |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
6 # Copyright (C) 2002 Christian Hammond. |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
7 # |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
8 # This program is free software; you can redistribute it and/or |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
9 # modify it under the terms of the GNU General Public License as |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
10 # published by the Free Software Foundation; either version 2 of |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
11 # the License, or (at your option) any later version. |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
12 # |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
13 # This program is distributed in the hope that it will be useful, |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
16 # GNU General Public License for more details. |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
17 # |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
18 # You should have received a copy of the GNU General Public |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
19 # License along with this program; if not, write to the Free |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
20 # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
21 # MA 02111-1307 USA |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
22 # |
3414 | 23 |
4563
d6491dc2b7b2
[gaim-migrate @ 4844]
Christian Hammond <chipx86@chipx86.com>
parents:
3422
diff
changeset
|
24 VERSION=0.1.4 |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
25 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
26 VERBOSE=0 |
3414 | 27 |
28 parse_gettext_version() { | |
29 GETTEXT_VERSION=`$GETTEXT_TOOL --version | sed -n 's/^.*\([0-9]\+\)\.\([0-9]\+\)\.\([0-9]\+\).*$/\1.\2.\3/p'` | |
30 GETTEXT_MAJOR_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^\([0-9]\+\).*/\1/p'` | |
31 GETTEXT_MINOR_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^[0-9]\+\.\([0-9]\+\).*/\1/p'` | |
32 GETTEXT_MICRO_VERSION=`echo $GETTEXT_VERSION | sed -n 's/^[0-9]\+\.[0-9]\+\.\([0-9]\+\).*/\1/p'` | |
33 } | |
34 | |
35 find_gettext() { | |
36 GETTEXT_TOOL=autopoint | |
37 | |
38 (autopoint --version) < /dev/null > /dev/null 2>&1 || { | |
39 GETTEXT_TOOL=gettextize | |
40 | |
41 (gettextize --version) < /dev/null > /dev/null 2>&1 || { | |
42 GETTEXT_TOOL= | |
43 } | |
44 } | |
45 } | |
46 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
47 install() { |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
48 [ -f configure.in ] && { |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
49 cp configure.in .tmp-configure.in |
3421
3efe967c8524
[gaim-migrate @ 3443]
Christian Hammond <chipx86@chipx86.com>
parents:
3420
diff
changeset
|
50 sed -e 's/^AM_GNU_GETTEXT\(.*\)$/AM_GNU_GETTEXT\1\ |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
51 AM_GNU_GETTEXT_VERSION(0.10.40)/' < .tmp-configure.in > configure.in |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
52 rm .tmp-configure.in |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
53 } |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
54 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
55 [ -f configure.ac ] && { |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
56 cp configure.ac .tmp-configure.ac |
3421
3efe967c8524
[gaim-migrate @ 3443]
Christian Hammond <chipx86@chipx86.com>
parents:
3420
diff
changeset
|
57 sed -e 's/^AM_GNU_GETTEXT\(.*\)$/AM_GNU_GETTEXT\1\ |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
58 AM_GNU_GETTEXT_VERSION(0.10.40)/' < .tmp-configure.ac > configure.ac |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
59 rm .tmp-configure.ac |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
60 } |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
61 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
62 [ -f autogen.sh ] && { |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
63 cp autogen.sh .tmp-autogen.sh |
3422
cd42bf49e2bb
[gaim-migrate @ 3444]
Christian Hammond <chipx86@chipx86.com>
parents:
3421
diff
changeset
|
64 sed -e 's/\(gettextize\|autopoint\) --version/.\/setup-gettext --gettext-tool/1' -e 's/^\(echo.*|[\t ]*\)\?\(gettextize\|autopoint\) -.*$/.\/setup-gettext/1' < .tmp-autogen.sh > autogen.sh |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
65 rm .tmp-autogen.sh |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
66 } |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
67 |
4563
d6491dc2b7b2
[gaim-migrate @ 4844]
Christian Hammond <chipx86@chipx86.com>
parents:
3422
diff
changeset
|
68 echo 'dnl Added by setup-gettext. Do not remove this' >> acinclude.m4 |
d6491dc2b7b2
[gaim-migrate @ 4844]
Christian Hammond <chipx86@chipx86.com>
parents:
3422
diff
changeset
|
69 echo 'dnl unless you know what you are doing.' >> acinclude.m4 |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
70 echo 'AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])' >> acinclude.m4 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
71 } |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
72 |
3414 | 73 backup_m4() { |
74 [ -d m4 ] && mv m4 m4~ | |
75 } | |
76 | |
77 restore_m4() { | |
78 [ -d m4~ ] && { | |
79 rm -rf m4 | |
80 mv m4~ m4 | |
81 } | |
82 } | |
83 | |
84 restore_files() { | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
85 [ -f configure.in~ ] && mv -f configure.in~ configure.in |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
86 [ -f configure.ac~ ] && mv -f configure.ac~ configure.ac |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
87 [ -f Makefile.am~ ] && mv -f Makefile.am~ Makefile.am |
3414 | 88 } |
89 | |
90 abort() { | |
91 restore_files | |
92 restore_m4 | |
93 | |
94 exit 1 | |
95 } | |
96 | |
97 # Main code | |
98 | |
99 find_gettext | |
100 | |
101 # See if a version of gettext and its tools are installed. | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
102 if [ x$GETTEXT_TOOL = x ]; then |
3414 | 103 echo |
104 echo "You do not have a version of gettext installed." | |
3415
d7c90e6ecc23
[gaim-migrate @ 3434]
Christian Hammond <chipx86@chipx86.com>
parents:
3414
diff
changeset
|
105 echo "Please download one from your local package repository or" |
3414 | 106 echo "from ftp://ftp.gnu.org/pub/gnu/gettext/" |
107 echo | |
108 exit 1 | |
109 fi | |
110 | |
111 parse_gettext_version | |
112 | |
113 NUMVAR=$# | |
114 | |
115 if [ $NUMVAR -gt 0 ]; then | |
116 if [ $NUMVAR -gt 1 ]; then | |
117 echo "Only one option at a time!" | |
118 exit 1 | |
119 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
120 elif [ $1 = "--gettext-tool" ]; then |
3414 | 121 echo $GETTEXT_TOOL |
122 exit 0 | |
123 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
124 elif [ $1 = "--help" ]; then |
3414 | 125 echo "setup-gettext v$VERSION" |
126 echo "Usage:" | |
127 echo " --gettext-tool Returns gettextize or autopoint, depending" | |
128 echo " on the version of gettext installed." | |
129 echo " --gettext-version Returns the version of gettext installed." | |
130 echo " --gettext-major-version Returns the major version of gettext installed." | |
131 echo " --gettext-minor-version Returns the minor version of gettext installed." | |
132 echo " --gettext-micro-version Returns the micro version of gettext installed." | |
133 echo " --help Displays this help screen." | |
134 echo | |
135 exit 0 | |
136 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
137 elif [ $1 = "--version" ]; then |
3414 | 138 echo $VERSION |
139 exit 0 | |
140 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
141 elif [ $1 = "--gettext-version" ]; then |
3414 | 142 echo $GETTEXT_VERSION |
143 exit 0 | |
144 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
145 elif [ $1 = "--gettext-major-version" ]; then |
3414 | 146 echo $GETTEXT_MAJOR_VERSION |
147 exit 0 | |
148 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
149 elif [ $1 = "--gettext-minor-version" ]; then |
3414 | 150 echo $GETTEXT_MINOR_VERSION |
151 exit 0 | |
152 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
153 elif [ $1 = "--gettext-micro-version" ]; then |
3414 | 154 echo $GETTEXT_MICRO_VERSION |
155 exit 0 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
156 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
157 elif [ $1 = "--install" ]; then |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
158 install |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
159 echo "setup-gettext installed." |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
160 exit 0 |
3414 | 161 |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
162 elif [ $1 = "--happy-url" ]; then |
3414 | 163 echo http://gaim.sf.net/forkgettext.jpg |
164 exit 0 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
165 |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
166 elif [ $1 = "--verbose" ]; then |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
167 VERBOSE=1 |
3414 | 168 |
169 else | |
170 echo "Invalid option '$1'" | |
171 exit 1 | |
172 fi | |
173 fi | |
174 | |
175 # Okay, run the main stuff | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
176 if [ "$GETTEXT_TOOL" = "autopoint" ]; then |
3414 | 177 backup_m4 |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
178 [ $VERBOSE -eq 1 ] && echo " autopoint --force" |
3414 | 179 echo n | autopoint --force || abort |
180 restore_m4 | |
181 else | |
182 if [ $GETTEXT_MINOR_VERSION -eq 11 ]; then | |
183 backup_m4 | |
184 | |
185 # Gettext is pure evil. It DEMANDS that we press Return no matter | |
186 # what. This gets rid of their happy "feature" of doom. | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
187 [ $VERBOSE -eq 1 ] && \ |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
188 echo " gettextize --copy --force --intl --no-changelog" |
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
189 |
3414 | 190 sed 's:read .*< /dev/tty::' `which gettextize` > .temp-gettextize |
191 chmod +x .temp-gettextize | |
192 echo n | ./.temp-gettextize --copy --force --intl --no-changelog || abort | |
193 rm .temp-gettextize | |
194 | |
195 restore_files | |
196 restore_m4 | |
197 | |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
198 [ -f po/Makevars.template ] && mv po/Makevars.template po/Makevars |
3414 | 199 else |
3420
bd05f8566531
[gaim-migrate @ 3442]
Christian Hammond <chipx86@chipx86.com>
parents:
3415
diff
changeset
|
200 [ $VERBOSE -eq 1 ] && echo " gettextize --copy --force" |
3414 | 201 echo n | gettextize --copy --force || exit; |
202 fi | |
203 fi | |
204 |