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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 335311 - (hide annotations) (download)
Wed Dec 26 05:11:40 2012 UTC (11 years, 4 months ago) by fwang
File size: 9197 byte(s)
new version 0.18.2
1 blino 367 %define major 8
2     %define intllibname %mklibname intl %{major}
3     %define misclibname %mklibname gettextmisc
4    
5 rtp 48592 %define bootstrap 0
6     %{?_without_bootstrap: %global bootstrap 0}
7     %{?_with_bootstrap: %global bootstrap 1}
8    
9 blino 367 %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 fwang 335311 Version: 0.18.2
21     Release: %mkrel 1
22 ahmad 95178 License: GPLv3+ and LGPLv2+
23 blino 367 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 fwang 335311 Source1: ftp://ftp.gnu.org/pub/gnu/%{name}/%{name}-%{version}.tar.gz.sig
27 blino 367 Source2: po-mode-init.el
28 fwang 335311 Patch8: gettext-0.18.2-fix-str-fmt.patch
29     Patch9: gettext-0.18.2-linkage.patch
30 rtp 48592 Patch10: libcroco-0.6.2-format-strings.patch
31 blino 367 # (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 rtp 48592 # 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 blino 367 BuildRequires: libcroco0.6-devel
51 rtp 48592 %endif
52 blino 367 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 colin 273158 Requires(pre): filesystem >= 2.1.9-18
92 blino 367 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 ahmad 95178 # autopoint is GPLv3+
112     # libasprintf is LGPLv2+
113     # libgettextpo is GPLv3+
114     License: LGPLv2+ and GPLv3+
115 blino 367 Requires: %{name} = %{version}
116     # fwang: autopoint requires cvs to work
117 rtp 48592 %if !%bootstrap
118 blino 367 Requires: cvs
119 rtp 48592 %endif
120 blino 367 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 colin 273158 Requires(pre): filesystem >= 2.1.9-18
133 blino 367 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 rtp 48592 %patch10 -p1 -b .croco
168 blino 367
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 ahmad 95178 --disable-static \
184     --disable-rpath \
185 blino 367 --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 ahmad 95178 # don't ship .la
237     find %{buildroot} -name '*.la' -exec rm -f {} \;
238    
239 blino 367 %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 rtp 48592 %if !%bootstrap
280 blino 367 %{_datadir}/emacs/site-lisp/*.el*
281 rtp 48592 %endif
282 blino 367 %{_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 colin 273158 %{_libdir}/libintl.so.*
299 blino 367
300     %files -n %{misclibname}
301     %defattr(-,root,root)
302     %doc gettext-runtime/intl/COPYING*
303 colin 273158 %{_libdir}/libgettext*-*.*.so
304     %{_libdir}/libgettext*.so.*
305     %{_libdir}/libasprintf*.so.*
306 blino 367
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