]> git.pld-linux.org Git - packages/ming.git/blob - ming.spec
ad3ec2e23aaaeb30da4f70d6f41d3b01689d5ad3
[packages/ming.git] / ming.spec
1 #
2 # Conditional build:
3 %bcond_with     php     # PHP binding
4 %bcond_with     java    # Java binding (native library build broken)
5 %bcond_with     ruby    # Ruby binding (unfinished)
6
7 Summary:        Ming - an SWF output library
8 Summary(pl.UTF-8):      Ming - biblioteka do produkcji plików SWF
9 Name:           ming
10 Version:        0.4.8
11 %define ver_tag %(echo %{version} | tr . _)
12 Release:        11
13 License:        LGPL v2.1+
14 Group:          Libraries
15 #Source0Download: https://github.com/libming/libming/releases
16 Source0:        https://github.com/libming/libming/archive/%{name}-%{ver_tag}.tar.gz
17 # Source0-md5:  70c28c1e41d5888aa158e6e15644b742
18 Patch0:         %{name}-perl-shared.patch
19 Patch1:         am.patch
20 Patch3:         tcl-libx32.patch
21 URL:            http://www.libming.net/
22 BuildRequires:  autoconf
23 BuildRequires:  automake
24 BuildRequires:  bison
25 BuildRequires:  flex
26 BuildRequires:  freetype-devel >= 2
27 BuildRequires:  giflib-devel >= 4.1
28 %{?with_java:BuildRequires:     jdk}
29 BuildRequires:  libpng-devel
30 BuildRequires:  libstdc++-devel
31 BuildRequires:  libtool >= 2:1.5
32 BuildRequires:  python-devel >= 1:2.4
33 BuildRequires:  rpm-perlprov >= 4.0.2-24
34 BuildRequires:  rpm-pythonprov
35 BuildRequires:  rpmbuild(macros) >= 1.344
36 %{?with_ruby:BuildRequires:     ruby-devel}
37 BuildRequires:  swig
38 BuildRequires:  swig-tcl
39 BuildRequires:  tcl
40 BuildRequires:  tcl-devel
41 BuildRequires:  zlib-devel
42 %if %{with php}
43 BuildRequires:  %{php_name}-program
44 BuildRequires:  %{php_name}-devel >= 4:5.3
45 %endif
46 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48 %description
49 Ming is a C library for generating SWF ("Flash") format movies, plus a
50 set of wrappers for using the library from c++ and popular scripting
51 languages like PHP, Python, and Ruby.
52
53 %description -l pl.UTF-8
54 Ming jest biblioteką w C do generowania animacji w formacie SWF
55 ("Flash") wraz z zestawem wrapperów do używania jej z C++ i
56 popularnymi językami skryptowymi, takimi jak PHP, Python i Ruby.
57
58 %package devel
59 Summary:        Ming development files
60 Summary(pl.UTF-8):      Pliki dla programistów Ming
61 Group:          Development/Libraries
62 Requires:       %{name} = %{version}-%{release}
63 Requires:       giflib-devel
64
65 %description devel
66 Header files for ming library (C and C++).
67
68 %description devel -l pl.UTF-8
69 Pliki nagłówkowe dla biblioteki ming (do C i C++).
70
71 %package static
72 Summary:        Ming static library
73 Summary(pl.UTF-8):      Statyczna biblioteka Ming
74 Group:          Development/Libraries
75 Requires:       %{name}-devel = %{version}-%{release}
76
77 %description static
78 Static Ming library.
79
80 %description static -l pl.UTF-8
81 Statyczna biblioteka Ming.
82
83 %package utils
84 Summary:        Ming utilities
85 Summary(pl.UTF-8):      Narzędzia Ming
86 Group:          Applications/File
87
88 %description utils
89 Ming utilities:
90 - listswf - swf format disassembler
91 - listfdb - show contents of fdb font file
92 - makefdb - rip fdb font definition files out of a generator template
93   file
94 - swftophp - attempt to make a php/ming script out of an swf file
95
96 %description utils -l pl.UTF-8
97 Narzędzia Ming:
98 - listswf - disasembler plików swf
99 - listfdb - pokazuje zawartość plików fontów fdb
100 - makefdb - wyciąga pliki definicji fontów fdb z pliku generatora
101 - swftophp - próbuje zrobić skrypt php/ming z pliku swf
102
103 %package -n java-ming
104 Summary:        Ming Java classes
105 Summary(pl.UTF-8):      Klasy Ming dla Javy
106 Group:          Libraries/Java
107 Requires:       %{name} = %{version}-%{release}
108
109 %description -n java-ming
110 Ming Java classes.
111
112 %description -n java-ming -l pl.UTF-8
113 Klasy Ming dla Javy.
114
115 %package -n perl-ming
116 Summary:        Ming Perl module
117 Summary(pl.UTF-8):      Moduł Perla Ming
118 Group:          Development/Languages/Perl
119 Requires:       %{name} = %{version}-%{release}
120 Obsoletes:      ming-perl
121
122 %description -n perl-ming
123 Ming perl module - perl wrapper for Ming library.
124
125 %description -n perl-ming -l pl.UTF-8
126 Moduł perla Ming - perlowy wrapper do biblioteki Ming.
127
128 %package -n %{php_name}-ming
129 Summary:        Ming module for PHP
130 Summary(pl.UTF-8):      Moduł Ming dla PHP
131 Group:          Development/Languages/PHP
132 Requires:       %{name} = %{version}-%{release}
133 %{?requires_php_extension}
134
135 %description -n %{php_name}-ming
136 PHP interface to Ming SWF generating library.
137
138 %description -n %{php_name}-ming -l pl.UTF-8
139 Interfejs PHP do biblioteki Ming generującej pliki SWF.
140
141 %package -n python-ming
142 Summary:        Ming Python module
143 Summary(pl.UTF-8):      Moduł biblioteki Ming dla języka Python
144 Group:          Development/Languages/Perl
145 Requires:       %{name} = %{version}-%{release}
146 Requires:       python-libs
147
148 %description -n python-ming
149 Ming Python module.
150
151 %description -n python-ming -l pl.UTF-8
152 Moduł biblioteki Ming dla języka Python.
153
154 %package -n tcl-ming
155 Summary:        Ming module for Tcl
156 Summary(pl.UTF-8):      Moduł Ming dla Tcl-a
157 Group:          Development/Languages/Tcl
158 Requires:       %{name} = %{version}-%{release}
159 Requires:       tcl
160
161 %description -n tcl-ming
162 Tcl interface to Ming SWF generating library.
163
164 %description -n tcl-ming -l pl.UTF-8
165 Interfejs Tcl do biblioteki Ming generującej pliki SWF.
166
167 %prep
168 %setup -q -n libming-%{name}-%{ver_tag}
169 %patch0 -p1
170 %patch1 -p1
171 %patch3 -p1
172
173 %build
174 %{__libtoolize}
175 %{__aclocal} -I macros
176 %{__autoconf}
177 %{__autoheader}
178 %{__automake}
179 %configure \
180         --enable-perl \
181         %{?with_php:--enable-php} \
182         --enable-python \
183         --enable-tcl \
184         --disable-silent-rules
185
186 %{__make} -j1 \
187         mingc_ladir=%{_libdir}/tclming
188
189 %if %{with java}
190 %{__make} -C java_ext
191 CXXFLAGS="%{rpmcxxflags} %{rpmcppflags}" \
192 %{__make} -C java_ext/native \
193         CXX="%{__cxx}" \
194         LDFLAGS="%{rpmldflags} -L../../src/.libs -lming" \
195         JAVADIR=%{_jvmdir}/java \
196         NOVAR_SHLIBEXT=".so"
197 %endif
198
199 %if %{with ruby}
200 cd rb_ext
201 ln -sf ../src/.libs/libming.so .
202 ruby extconf.rb \
203         --with-ming-include=../src \
204         --with-ming-lib=../src/.libs
205 %{__make} \
206         CC="%{__cc}" \
207         optflags="%{rpmcflags}"
208 cd ..
209 %endif
210
211 %install
212 rm -rf $RPM_BUILD_ROOT
213 %{__make} install \
214         DESTDIR=$RPM_BUILD_ROOT \
215         mingc_ladir=%{_libdir}/tclming
216
217 %if %{with php}
218 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
219 cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/ming.ini
220 ; Enable ming extension module
221 extension=ming.so
222 EOF
223 %endif
224
225 %if %{with java}
226 install -Dp java_ext/jswf.jar RPM_BUILD_ROOT%{_javadir}/jswf.jar
227 install java_ext/native/libjswf.so $RPM_BUILD_ROOT%{_libdir}
228 %endif
229
230 %if %{with ruby}
231 %{__make} -C rb_ext install \
232         DESTDIR=$RPM_BUILD_ROOT
233 %endif
234
235 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/SWF/.packlist
236 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
237 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/ming*.py
238 %{__rm} $RPM_BUILD_ROOT%{_libdir}/tclming/*.{la,a}
239
240 %clean
241 rm -rf $RPM_BUILD_ROOT
242
243 %post   -p /sbin/ldconfig
244 %postun -p /sbin/ldconfig
245
246 %files
247 %defattr(644,root,root,755)
248 %doc AUTHORS NEWS README TODO
249 %attr(755,root,root) %{_libdir}/libming.so.*.*.*
250 %attr(755,root,root) %ghost %{_libdir}/libming.so.1
251
252 %files devel
253 %defattr(644,root,root,755)
254 %attr(755,root,root) %{_libdir}/libming.so
255 %{_libdir}/libming.la
256 %{_includedir}/ming.h
257 %{_includedir}/mingpp.h
258 %{_pkgconfigdir}/libming.pc
259
260 %files static
261 %defattr(644,root,root,755)
262 %{_libdir}/libming.a
263
264 %files utils
265 %defattr(644,root,root,755)
266 %doc util/{README,TODO}
267 %attr(755,root,root) %{_bindir}/dbl2png
268 %attr(755,root,root) %{_bindir}/gif2dbl
269 %attr(755,root,root) %{_bindir}/gif2mask
270 %attr(755,root,root) %{_bindir}/listaction
271 %attr(755,root,root) %{_bindir}/listaction_d
272 %attr(755,root,root) %{_bindir}/listfdb
273 %attr(755,root,root) %{_bindir}/listjpeg
274 %attr(755,root,root) %{_bindir}/listmp3
275 %attr(755,root,root) %{_bindir}/listswf
276 %attr(755,root,root) %{_bindir}/listswf_d
277 %attr(755,root,root) %{_bindir}/makefdb
278 %attr(755,root,root) %{_bindir}/makeswf
279 %attr(755,root,root) %{_bindir}/ming-config
280 %attr(755,root,root) %{_bindir}/png2dbl
281 %attr(755,root,root) %{_bindir}/raw2adpcm
282 %attr(755,root,root) %{_bindir}/swftocxx
283 %attr(755,root,root) %{_bindir}/swftoperl
284 %attr(755,root,root) %{_bindir}/swftophp
285 %attr(755,root,root) %{_bindir}/swftopython
286 %attr(755,root,root) %{_bindir}/swftotcl
287
288 %if %{with java}
289 %files -n java-ming
290 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_libdir}/libjswf.so
292 %{_javadir}/jswf.jar
293 %endif
294
295 %files -n perl-ming
296 %defattr(644,root,root,755)
297 %doc perl_ext/{README,TODO}
298 %{perl_vendorarch}/SWF.pm
299 %{perl_vendorarch}/SWF
300 %dir %{perl_vendorarch}/auto/SWF
301 %attr(755,root,root) %{perl_vendorarch}/auto/SWF/SWF.so
302 %{_mandir}/man3/SWF*.3pm*
303
304 %if %{with php}
305 %files -n %{php_name}-ming
306 %defattr(644,root,root,755)
307 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/ming.ini
308 %attr(755,root,root) %{php_extensiondir}/ming.so
309 %endif
310
311 %files -n python-ming
312 %defattr(644,root,root,755)
313 %doc py_ext/{README,TODO}
314 %attr(755,root,root) %{py_sitedir}/_mingc.so
315 %{py_sitedir}/ming*.py[co]
316 %if "%{py_ver}" > "2.4"
317 %{py_sitedir}/mingc-%{version}-py*.egg-info
318 %endif
319
320 %files -n tcl-ming
321 %defattr(644,root,root,755)
322 %doc tcl_ext/README
323 %dir %{_libdir}/tclming
324 %attr(755,root,root) %{_libdir}/tclming/mingc.so
This page took 0.149559 seconds and 2 git commands to generate.