3 %bcond_without guile # disable guile support
4 %bcond_without ocaml # disable ocaml support
5 %bcond_without perl # disable perl support
6 %bcond_without php # disable php support
7 %bcond_without ruby # disable ruby support
8 %bcond_without tcl # disable tcl support
10 Summary: Interface generator for Perl, Tcl, Guile and Python
11 Summary(pl): Generator interfejsów do Perla, Tcl-a, Guile'a i Pythona
12 Summary(pt_BR): Gerador de Interfaces e "Wrappers" Simplificado (SWIG)
16 License: distributable
17 Group: Development/Languages
18 Source0: http://dl.sourceforge.net/swig/%{name}-%{version}.tar.gz
19 # Source0-md5: 44c6f6d8d724cf7fa4a5109e6f63c9b1
20 Patch0: %{name}-format.patch
21 Patch1: %{name}-php.patch
22 Patch2: %{name}-php-freearg.patch
23 Patch3: %{name}-php-vdecl.patch
24 Patch4: %{name}-python25.patch
25 URL: http://www.swig.org/
26 BuildRequires: autoconf
27 BuildRequires: automake
28 %{?with_guile:BuildRequires: guile-devel}
29 BuildRequires: libstdc++-devel
30 BuildRequires: libtool
31 %{?with_ocaml:BuildRequires: ocaml}
32 %{?with_perl:BuildRequires: perl-devel >= 1:5.6.1}
33 %{?with_php:BuildRequires: php-cli}
34 %{?with_php:BuildRequires: php-devel >= 4.1.0}
35 BuildRequires: python-devel >= 1:2.3.2
37 BuildRequires: rpmbuild(macros) >= 1.277
38 BuildRequires: ruby-devel >= 1:1.6.3
40 %{?with_tcl:BuildRequires: tcl-devel >= 8.3.3}
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45 SWIG is a compiler that attempts to make it easy to integrate C, C++,
46 or Objective-C code with scripting languages including Perl, Tcl, and
47 Python. In a nutshell, you give it a bunch of ANSI C/C++ declarations
48 and it generates an interface between C and your favorite scripting
49 language. However, this is only scratching the surface of what SWIG
50 can do--some of its more advanced features include automatic
51 documentation generation, module and library management, extensive
52 customization options, and more.
54 SWIG is entirely the product of users who have used the system and
55 suggested new idea. There are far too many people to thank
56 individually, but without this support, SWIG would be not be nearly as
57 powerful or fun to use as it is now. Many thanks!
60 SWIG jesk kompilatorem, który próbuje u³atwiæ integrowanie kodu
61 napisanego w C, C++ lub Objective-C z jêzykami skryptowymi, takimi jak
62 Perl, Tcl i Python. Mówi±c najpro¶ciej, je¶li dostarczysz mu zestaw
63 zadeklarowanych w ANSI C/C++ funkcji, SWIG wygeneruje Ci interfejs
64 pomiêdzy C a Twoim ulubionym jêzykiem skryptowym. To tylko drobna
65 czê¶æ tego co SWIG potrafi robiæ, bardziej zaawansowane zastosowania
66 to automatyczne generowanie dokumentacji, zarz±dzanie bibliotekami i
67 modu³ami i wiele innych.
69 SWIG jest w ca³o¶ci dzie³em ludzi, którzy go u¿ywali i wprowadzali
70 nowe pomys³y. Zbyt wielu ich jest, aby dziêkowaæ ka¿demu z nich
71 osobno, ale bez ich wsparcia SWIG nie by³by ani tak potê¿nym
72 narzêdziem, ani tak fajnym w u¿yciu jak jest teraz. Wiekie dziêki!
75 O SWIG gera interfaces para perl, python e Tcl a partir de uma arquivo
76 com uma interface de descrição que consiste de uma combinação de C/C++
77 e diretivas especiais. Permite que linguagens tipo script usem C/C++
78 com um mínimo de esforço.
81 Summary: SWIG library: guile
82 Summary(pl): Biblioteka SWIG: guile
84 Requires: %{name} = %{version}-%{release}
89 %description guile -l pl
90 Biblioteka SWIG: guile.
93 Summary: SWIG library: Perl
94 Summary(pl): Biblioteka SWIG: Perl
96 Requires: %{name} = %{version}-%{release}
101 %description perl -l pl
102 Biblioteka SWIG: perl.
105 Summary: SWIG library: php
106 Summary(pl): Biblioteka SWIG: php
108 Requires: %{name} = %{version}-%{release}
113 %description php -l pl
114 Biblioteka SWIG: php.
117 Summary: SWIG library: python
118 Summary(pl): Biblioteka SWIG: python
120 Requires: %{name} = %{version}-%{release}
123 SWIG library: python.
125 %description python -l pl
126 Biblioteka SWIG: python.
129 Summary: SWIG library: ruby
130 Summary(pl): Biblioteka SWIG: ruby
132 Requires: %{name} = %{version}-%{release}
133 %{?ruby_mod_ver_requires_eq}
138 %description ruby -l pl
139 Biblioteka SWIG: ruby.
142 Summary: SWIG library: tcl
143 Summary(pl): Biblioteka SWIG: tcl
145 Requires: %{name} = %{version}-%{release}
150 %description tcl -l pl
151 Biblioteka SWIG: tcl.
163 %{__aclocal} -I Tools/config
172 rm -rf $RPM_BUILD_ROOT
173 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_examplesdir}/%{name}-%{version}}
176 DESTDIR=$RPM_BUILD_ROOT \
177 M4_INSTALL_DIR=$RPM_BUILD_ROOT%{_aclocaldir}
179 cp -a Examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
182 rm -rf $RPM_BUILD_ROOT
184 %post -p /sbin/ldconfig
185 %postun -p /sbin/ldconfig
187 %post guile -p /sbin/ldconfig
188 %postun guile -p /sbin/ldconfig
190 %post perl -p /sbin/ldconfig
191 %postun perl -p /sbin/ldconfig
193 %post php -p /sbin/ldconfig
194 %postun php -p /sbin/ldconfig
196 %post python -p /sbin/ldconfig
197 %postun python -p /sbin/ldconfig
199 %post ruby -p /sbin/ldconfig
200 %postun ruby -p /sbin/ldconfig
202 %post tcl -p /sbin/ldconfig
203 %postun tcl -p /sbin/ldconfig
206 %defattr(644,root,root,755)
207 %doc Doc CHANGES NEW README ANNOUNCE TODO LICENSE
208 %attr(755,root,root) %{_bindir}/swig
210 %{?with_guile:%exclude %{_datadir}/%{name}/%{version}/guile}
211 %{?with_perl:%exclude %{_datadir}/%{name}/%{version}/perl5}
212 %{?with_php:%exclude %{_datadir}/%{name}/%{version}/php4}
213 %exclude %{_datadir}/%{name}/%{version}/python
214 %{?with_ruby:%exclude %{_datadir}/%{name}/%{version}/ruby}
215 %{?with_tcl:%exclude %{_datadir}/%{name}/%{version}/tcl}
216 %{_examplesdir}/%{name}-%{version}
220 %defattr(644,root,root,755)
221 %{_datadir}/%{name}/%{version}/guile
226 %defattr(644,root,root,755)
227 %{_datadir}/%{name}/%{version}/perl5
232 %defattr(644,root,root,755)
233 %{_datadir}/%{name}/%{version}/php4
237 %defattr(644,root,root,755)
238 %{_datadir}/%{name}/%{version}/python
242 %defattr(644,root,root,755)
243 %{_datadir}/%{name}/%{version}/ruby
248 %defattr(644,root,root,755)
249 %{_datadir}/%{name}/%{version}/tcl