/[packages]/cauldron/gettext/current/SPECS/gettext.spec
ViewVC logotype

Contents of /cauldron/gettext/current/SPECS/gettext.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 273158 - (show annotations) (download)
Sat Jul 21 17:42:31 2012 UTC (11 years, 8 months ago) by colin
File size: 9152 byte(s)
Update for usrmove
1 %define major 8
2 %define intllibname %mklibname intl %{major}
3 %define misclibname %mklibname gettextmisc
4
5 %define bootstrap 0
6 %{?_without_bootstrap: %global bootstrap 0}
7 %{?_with_bootstrap: %global bootstrap 1}
8
9 %define do_check 1
10 %{?_without_check: %global do_check 0}
11
12 %define enable_java 0
13 %{?_without_java: %global enable_java 0}
14
15 %define enable_csharp 0
16 %{?_with_csharp: %global enable_csharp 1}
17
18 Name: gettext
19 Summary: GNU libraries and utilities for producing multi-lingual messages
20 Version: 0.18.1.1
21 Release: %mkrel 3
22 License: GPLv3+ and LGPLv2+
23 Group: System/Internationalization
24 URL: http://www.gnu.org/software/gettext/
25 Source: ftp://ftp.gnu.org/pub/gnu/%{name}/%{name}-%{version}.tar.gz
26 Source1: %{SOURCE0}.sig
27 Source2: po-mode-init.el
28 Patch8: gettext-0.18.1-fix-str-fmt.patch
29 Patch9: gettext-0.18.1.1-linkage.patch
30 Patch10: libcroco-0.6.2-format-strings.patch
31 # (Abel) we pick mono here, though pnet can be used as well.
32 %if %enable_csharp
33 BuildRequires: mono
34 %endif
35 %if %enable_java
36 BuildRequires: eclipse-ecj
37 BuildRequires: gcc-java
38 BuildRequires: gcj-tools
39 BuildRequires: fastjar
40 %endif
41 BuildRequires: automake
42 BuildRequires: bison
43 BuildRequires: flex
44 BuildRequires: texinfo
45 BuildRequires: libgomp-devel
46 # not necessary best way to do it but without gettext-devel
47 # the bootstrap game is lost
48 %if !%bootstrap
49 BuildRequires: emacs-bin
50 BuildRequires: libcroco0.6-devel
51 %endif
52 BuildRequires: libunistring-devel
53 BuildRequires: ncurses-devel
54 BuildRequires: libxml2-devel
55 BuildRequires: acl-devel
56 # test suite
57 BuildRequires: locales-fa
58 BuildRequires: locales-fr
59 BuildRequires: locales-ja
60 BuildRequires: locales-zh
61
62 Requires: %{name}-base = %{version}
63 Requires: %{misclibname} = %{version}
64 # xgettext will dlopen() it when extracting strings from glade files
65 Requires: %mklibname expat 1
66 Requires(post): info-install
67 Requires(preun): info-install
68
69 %description
70 The GNU gettext package provides a set of tools and documentation for producing
71 multi-lingual messages in programs. Tools include a set of conventions about
72 how programs should be written to support message catalogs, a directory and
73 file naming organization for the message catalogs, a runtime library which
74 supports the retrieval of translated messages, and stand-alone programs for
75 handling the translatable and the already translated strings. Gettext provides
76 an easy to use library and tools for creating, using, and modifying natural
77 language catalogs and is a powerful and simple method for internationalizing
78 programs.
79
80 If you would like to internationalize or incorporate multi-lingual messages
81 into programs that you're developing, you should install gettext.
82
83 Build Option:
84 --with csharp Enables C# support in gettext
85 --without java Disables Java support in gettext
86
87 %package -n %{intllibname}
88 Summary: Basic libintl library for internationalization
89 Group: System/Libraries
90 License: LGPL
91 Requires(pre): filesystem >= 2.1.9-18
92 Provides: libintl = %{version}-%{release}
93
94 %description -n %{intllibname}
95 This package contains the libintl library, which is important for
96 system internationalization.
97
98 %package -n %{misclibname}
99 Summary: Other %{name} libraries needed by %{name} utilities
100 Group: System/Libraries
101 License: LGPL
102 Provides: libgettextmisc
103
104 %description -n %{misclibname}
105 This package contains all other libraries used by %{name} utilities,
106 and are not very widely used outside %{name}.
107
108 %package devel
109 Summary: Development files for %{name}
110 Group: Development/C
111 # autopoint is GPLv3+
112 # libasprintf is LGPLv2+
113 # libgettextpo is GPLv3+
114 License: LGPLv2+ and GPLv3+
115 Requires: %{name} = %{version}
116 # fwang: autopoint requires cvs to work
117 %if !%bootstrap
118 Requires: cvs
119 %endif
120 Requires(post): info-install
121 Requires(preun): info-install
122
123 %description devel
124 This package contains all development related files necessary for
125 developing or compiling applications/libraries that needs
126 internationalization capability. You also need this package if you
127 want to add gettext support for your project.
128
129 %package base
130 Summary: Basic binary for showing translation of textual messages
131 Group: System/Internationalization
132 Requires(pre): filesystem >= 2.1.9-18
133 Requires: %{intllibname} = %{version}
134
135 %description base
136 This package contains the basic binary from %{name}. It is splitted from
137 %{name} because initscript need it to show translated boot messages.
138
139 %if %enable_java
140 %package java
141 Summary: Java binding for GNU gettext
142 Group: System/Internationalization
143 Requires: %{name} = %{version}
144
145 %description java
146 This package contains class file that implements the main GNU libintl
147 functions in Java. This allows compiling GNU gettext message catalogs
148 into Java ResourceBundle classes.
149 %endif
150
151 %if %enable_csharp
152 %package csharp
153 Summary: C# binding for GNU gettext
154 Group: System/Internationalization
155 Requires: mono
156
157 %description csharp
158 This package contains class file that implements the main GNU libintl
159 functions in C#. This allows compiling GNU gettext message catalogs
160 into C# dll or resource files.
161 %endif
162
163 %prep
164 %setup -q
165 %patch8 -p0 -b .str
166 %patch9 -p1 -b .link
167 %patch10 -p1 -b .croco
168
169 %build
170
171 %if %enable_java
172 export GCJ="%{_bindir}/gcj"
173 export JAVAC="%{_bindir}/gcj -C"
174 export JAR="%{_bindir}/fastjar"
175 %endif
176
177 autoreconf -fi
178 for i in `find -name configure|sort`
179 do
180 pushd `dirname $i`
181 %configure2_5x \
182 --enable-shared \
183 --disable-static \
184 --disable-rpath \
185 --with-included-gettext \
186 %if %enable_csharp
187 --enable-csharp=mono \
188 %else
189 --disable-csharp \
190 %endif
191 %if ! %enable_java
192 --disable-java \
193 %endif
194
195 popd
196 done
197
198 %make
199
200 %if %do_check
201 %check
202 export JAVAC=ecj
203 LC_ALL=C make check
204 %endif
205
206 %install
207 rm -rf $RPM_BUILD_ROOT
208 %makeinstall_std
209
210 # remove unwanted files
211 rm -f $RPM_BUILD_ROOT%{_includedir}/libintl.h \
212 $RPM_BUILD_ROOT%{_datadir}/locale/locale.alias
213 rm -f gettext-runtime/intl-java/javadoc2/package-list
214
215 install -D -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/emacs/site-start.d/%{name}.el
216
217 # remove non-standard lc directories
218 for i in en@boldquot en@quot ; do rm -rf $RPM_BUILD_ROOT/%{_datadir}/locale/$i; done
219
220 # move installed doc back to %%doc
221 rm -rf htmldoc examples
222 mkdir htmldoc
223 for i in gettext-runtime/man/*.html; do
224 rm -f $RPM_BUILD_ROOT%{_datadir}/doc/gettext/`basename $i`
225 done
226 rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/gettext/javadoc*
227 mv $RPM_BUILD_ROOT%{_datadir}/doc/gettext/* $RPM_BUILD_ROOT/%{_datadir}/doc/libasprintf/* htmldoc
228 mv htmldoc/examples examples
229
230 # remove java stuff, otherwise rpm complains
231 %if !%enable_java
232 rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/gnu.gettext.* \
233 $RPM_BUILD_ROOT%{_datadir}/%{name}/*.jar
234 %endif
235
236 # don't ship .la
237 find %{buildroot} -name '*.la' -exec rm -f {} \;
238
239 %find_lang %{name} --all-name
240
241 %clean
242 rm -rf $RPM_BUILD_ROOT
243
244 %post
245 %_install_info %{name}.info
246
247 %preun
248 %_remove_install_info %{name}.info
249
250 %post devel
251 %_install_info autosprintf.info
252
253 %preun devel
254 %_remove_install_info autosprintf.info
255
256 %files
257 %defattr(-,root,root)
258 %doc AUTHORS README COPYING gettext-runtime/ABOUT-NLS gettext-runtime/BUGS NEWS THANKS
259 %config(noreplace) %{_sysconfdir}/emacs/site-start.d/*.el
260 %{_bindir}/envsubst
261 %{_bindir}/gettext.sh
262 %{_bindir}/msg*
263 %{_bindir}/recode-sr-latin
264 %{_bindir}/xgettext
265 %dir %{_datadir}/gettext
266 %{_datadir}/%{name}/msgunfmt.tcl
267 %{_datadir}/%{name}/projects
268 %{_datadir}/%{name}/javaversion.class
269 %{_datadir}/%{name}/styles
270 %dir %{_libdir}/%{name}
271 %{_libdir}/%{name}/hostname
272 %{_libdir}/%{name}/project-id
273 %{_libdir}/%{name}/urlget
274 %{_libdir}/%{name}/user-email
275 %if %enable_java
276 %exclude %{_libdir}/%{name}/gnu.gettext.*
277 %endif
278 %{_infodir}/gettext.*
279 %if !%bootstrap
280 %{_datadir}/emacs/site-lisp/*.el*
281 %endif
282 %{_mandir}/man1/envsubst.*
283 %{_mandir}/man1/msg*
284 %{_mandir}/man1/xgettext.*
285 %{_mandir}/man1/recode-sr-latin.*
286
287 %files base -f %{name}.lang
288 %defattr(-,root,root)
289 %doc gettext-runtime/man/*.1.html
290 %{_bindir}/gettext
291 %{_bindir}/ngettext
292 %{_mandir}/man1/gettext*
293 %{_mandir}/man1/ngettext*
294
295 %files -n %{intllibname}
296 %defattr(-,root,root)
297 %doc gettext-runtime/intl/COPYING*
298 %{_libdir}/libintl.so.*
299
300 %files -n %{misclibname}
301 %defattr(-,root,root)
302 %doc gettext-runtime/intl/COPYING*
303 %{_libdir}/libgettext*-*.*.so
304 %{_libdir}/libgettext*.so.*
305 %{_libdir}/libasprintf*.so.*
306
307 %files devel
308 %defattr(-,root,root)
309 %doc gettext-runtime/man/*.3.html examples htmldoc
310 %{_bindir}/autopoint
311 %{_bindir}/gettextize
312 %{_datadir}/%{name}/ABOUT-NLS
313 %{_datadir}/%{name}/archive*
314 %{_datadir}/%{name}/config.rpath
315 %{_datadir}/%{name}/*.h
316 %{_datadir}/%{name}/intl
317 %{_datadir}/%{name}/po
318 %{_datadir}/aclocal/*
319 %{_includedir}/*
320 %{_infodir}/autosprintf*
321 # "lib*.so" cannot be used (it should be 'lib[^\.]*\.so' regexp in fact
322 # but using regexp is not possible here; so we list all files manually
323 %{_libdir}/libasprintf.so
324 %{_libdir}/libgettextlib.so
325 %{_libdir}/libgettextpo.so
326 %{_libdir}/libgettextsrc.so
327 %{_libdir}/libintl.so
328 %{_mandir}/man1/autopoint.*
329 %{_mandir}/man3/*
330
331 %if %enable_java
332 %files java
333 %defattr(-,root,root)
334 %doc gettext-runtime/intl-java/javadoc*
335 %{_libdir}/%{name}/gnu.gettext.*
336 %{_datadir}/%{name}/*.jar
337 %endif
338
339 %if %enable_csharp
340 %files csharp
341 %defattr(-,root,root)
342 %doc gettext-runtime/intl-csharp/csharpdoc/*
343 %{_libdir}/*.dll
344 %{_libdir}/gettext/*.exe
345 %endif

  ViewVC Help
Powered by ViewVC 1.1.30