]> git.pld-linux.org Git - packages/swig.git/blobdiff - swig.spec
- versioned Obsoletes
[packages/swig.git] / swig.spec
index c7c421a46a482e49ac82200ef44c6ee440e8c368..334e93afd8e31b8456a947e2fc79c364306dce94 100644 (file)
--- a/swig.spec
+++ b/swig.spec
@@ -1,23 +1,50 @@
+#
+# Conditional build:
+%bcond_without guile   # disable guile support
+%bcond_without perl    # disable perl support
+%bcond_without php     # disable php support
+%bcond_without ruby    # disable ruby support
+%bcond_without tcl     # disable tcl support
+#
+%if "%{?php_suffix}" == ""
+%define                php_suffix      73
+%endif
+%define                php_name        php%{?php_suffix}
 Summary:       Interface generator for Perl, Tcl, Guile and Python
-Summary(pl):   Generator interfejsów do Perla, Tcl-a, Guile'a i Pythona
-Summary(pt_BR): Gerador de Interfaces e "Wrappers" Simplificado (SWIG)
+Summary(pl.UTF-8):     Generator interfejsów do Perla, Tcl-a, Guile'a i Pythona
+Summary(pt_BR.UTF-8):  Gerador de Interfaces e "Wrappers" Simplificado (SWIG)
 Name:          swig
-Version:       1.3.12
+Version:       4.0.2
 Release:       1
-License:       distributable
+License:       GPL v3+ (utility), free (library)
 Group:         Development/Languages
-Source0:       http://prdownloads.sourceforge.net/swig/%{name}-%{version}.tar.gz
-Patch0:                %{name}-configure.patch
+Source0:       https://downloads.sourceforge.net/swig/%{name}-%{version}.tar.gz
+# Source0-md5: 7c3e46cb5af2b469722cafa0d91e127b
+Patch0:                %{name}-php-freearg.patch
 URL:           http://www.swig.org/
-Icon:          swig.gif
-BuildRequires: autoconf
-BuildRequires: guile-devel
+BuildRequires: autoconf >= 2.58
+BuildRequires: automake >= 1:1.7.2
+%{?with_guile:BuildRequires:   guile-devel >= 5:1.8}
 BuildRequires: libstdc++-devel
-BuildRequires: perl-devel >= 5.6.1
-BuildRequires: php-devel >= 4.1.0
-BuildRequires: python >= 2.2
-BuildRequires: ruby >= 1.6.3
-BuildRequires: tcl >= 8.3.3
+# used only in examples, doesn't affect actual swig build
+#BuildRequires:        ocaml
+# used only in examples, doesn't affect actual swig build
+#BuildRequires:        octave-devel
+BuildRequires: pcre-devel
+%{?with_perl:BuildRequires:    perl-devel >= 1:5.6.1}
+%{?with_php:BuildRequires:     %{php_name}-cli}
+%{?with_php:BuildRequires:     %{php_name}-devel >= 4.1.0}
+BuildRequires: python-devel >= 1:2.3.2
+BuildRequires: python-modules
+BuildRequires: python3-devel
+BuildRequires: python3-modules
+BuildRequires: rpm-pythonprov
+%if %{with ruby}
+BuildRequires: rpmbuild(macros) >= 1.277
+BuildRequires: ruby-devel >= 1:1.6.3
+%endif
+%{?with_tcl:BuildRequires:     tcl-devel >= 8.3.3}
+Obsoletes:     swig-ocaml < 3.0.7
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -35,143 +62,194 @@ suggested new idea. There are far too many people to thank
 individually, but without this support, SWIG would be not be nearly as
 powerful or fun to use as it is now. Many thanks!
 
-%description -l pl
-SWIG jesk kompilatorem, który próbuje u³atwiæ integrowanie kodu
-napisanego w C, C++ lub Objective-C z jêzykami skryptowymi, takimi jak
-Perl, Tcl i Python. Mówi±c najpro¶ciej, je¶li dostarczysz mu zestaw
+%description -l pl.UTF-8
+SWIG jesk kompilatorem, który próbuje ułatwić integrowanie kodu
+napisanego w C, C++ lub Objective-C z językami skryptowymi, takimi jak
+Perl, Tcl i Python. Mówiąc najprościej, jeśli dostarczysz mu zestaw
 zadeklarowanych w ANSI C/C++ funkcji, SWIG wygeneruje Ci interfejs
-pomiêdzy C a Twoim ulubionym jêzykiem skryptowym. To tylko drobna
-czê¶æ tego co SWIG potrafi robiæ, bardziej zaawansowane zastosowania
-to automatyczne generowanie dokumentacji, zarz±dzanie bibliotekami i
-modu³ami i wiele innych.
-
-SWIG jest w ca³o¶ci dzie³em ludzi, którzy go u¿ywali i wprowadzali
-nowe pomys³y. Zbyt wielu ich jest, aby dziêkowaæ ka¿demu z nich
-osobno, ale bez ich wsparcia SWIG nie by³by ani tak potê¿nym
-narzêdziem, ani tak fajnym w u¿yciu jak jest teraz. Wiekie dziêki!
-
-%description -l pt_BR
-O SWIG gera interfaces para perl, python e tcl a partir de uma arquivo 
-com uma interface de descrição que consiste de uma combinação de C/C++
+pomiędzy C a Twoim ulubionym językiem skryptowym. To tylko drobna
+część tego co SWIG potrafi robić, bardziej zaawansowane zastosowania
+to automatyczne generowanie dokumentacji, zarządzanie bibliotekami i
+modułami i wiele innych.
+
+SWIG jest w całości dziełem ludzi, którzy go używali i wprowadzali
+nowe pomysły. Zbyt wielu ich jest, aby dziękować każdemu z nich
+osobno, ale bez ich wsparcia SWIG nie byłby ani tak potężnym
+narzędziem, ani tak fajnym w użyciu jak jest teraz. Wiekie dzięki!
+
+%description -l pt_BR.UTF-8
+O SWIG gera interfaces para perl, python e Tcl a partir de uma arquivo
+com uma interface de descrição que consiste de uma combinação de C/C++
 e diretivas especiais. Permite que linguagens tipo script usem C/C++
-com um mínimo de esforço.
+com um mínimo de esforço.
 
 %package guile
-Summary:       SWIG library: guile
-Summary(pl):   Biblioteka SWIG: guile
+Summary:       SWIG module to generate Guile bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań Guile
+License:       free
 Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
 
 %description guile
-SWIG library: guile.
+SWIG module to generate Guile bindings.
 
-%description guile -l pl
-Biblioteka SWIG: guile.
+%description guile -l pl.UTF-8
+Moduł SWIG do generowania wiązań Guile.
 
 %package perl
-Summary:       SWIG library: Perl
-Summary(pl):   Biblioteka SWIG: Perl
+Summary:       SWIG module to generate Perl bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań Perla
+License:       free
 Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
 
 %description perl
-SWIG library: perl.
+SWIG module to generate Perl bindings. It supports Perl 5.
 
-%description perl -l pl
-Biblioteka SWIG: perl.
+%description perl -l pl.UTF-8
+Moduł SWIG do generowania wiązań Perla. Obsługuje Perla 5.
+
+%package php
+Summary:       SWIG module to generate PHP bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań PHP
+License:       free
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description php
+SWIG module to generate PHP bindings. It supports PHP 7.
+
+%description php -l pl.UTF-8
+Moduł SWIG do generowania wiązań PHP. Obsługuje PHP 7.
 
 %package python
-Summary:       SWIG library: python
-Summary(pl):   Biblioteka SWIG: python
+Summary:       SWIG module to generate Python bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań Pythona
+License:       free
 Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
 
 %description python
-SWIG library: python.
+SWIG module to generate Python bindings. It supports Python 2.7 and
+3.2+
 
-%description python -l pl
-Biblioteka SWIG: python.
+%description python -l pl.UTF-8
+Moduł SWIG do generowania wiązań Pythona. Obsługuje Pythona 2.7 i
+3.2+.
 
 %package ruby
-Summary:       SWIG library: ruby
-Summary(pl):   Biblioteka SWIG: ruby
+Summary:       SWIG module to generate Ruby bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań języka Ruby
+License:       free
 Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+%{?ruby_mod_ver_requires_eq}
 
 %description ruby
-SWIG library: ruby.
+SWIG module to generate Ruby bindings.
 
-%description ruby -l pl
-Biblioteka SWIG: ruby.
+%description ruby -l pl.UTF-8
+Moduł SWIG do generowania wiązań języka Ruby.
 
 %package tcl
-Summary:       SWIG library: tcl
-Summary(pl):   Biblioteka SWIG: tcl
+Summary:       SWIG module to generate Tcl bindings
+Summary(pl.UTF-8):     Moduł SWIG do generowania wiązań języka Tcl
+License:       free
 Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
 
 %description tcl
-SWIG library: tcl.
+SWIG module to generate Tcl bindings.
 
-%description tcl -l pl
-Biblioteka SWIG: tcl.
+%description tcl -l pl.UTF-8
+Moduł SWIG do generowania wiązań języka Tcl.
 
 %prep
-%setup -q -n SWIG-%{version}
+%setup -q
 %patch0 -p1
 
 %build
-oldpwd=$PWD
-for i in . Source/DOH Tools Examples/GIFPlot; do
-  cd $i
-  aclocal
-  autoconf
-  cd $oldpwd
-done
+%{__aclocal} -I Tools/config
+%{__autoconf}
+%{__automake}
 %configure
-%{__make} OPT="%{rpmcflags}"
 
+%{__make} \
+       OPT="%{rpmcflags}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_examplesdir}/%{name}-%{version}}
 
 %{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+       DESTDIR=$RPM_BUILD_ROOT \
+       M4_INSTALL_DIR=$RPM_BUILD_ROOT%{_aclocaldir}
 
 cp -a Examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
 
-gzip -9nf CHANGES NEW README ANNOUNCE TODO LICENSE
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post  -p /sbin/ldconfig
-%postun        -p /sbin/ldconfig
-
 %files
 %defattr(644,root,root,755)
-%doc Doc *.gz
-%{_libdir}/%{name}*
+%doc ANNOUNCE CHANGES CHANGES.current COPYRIGHT LICENSE LICENSE-UNIVERSITIES README RELEASENOTES TODO Doc
+%attr(755,root,root) %{_bindir}/ccache-swig
 %attr(755,root,root) %{_bindir}/swig
+%dir %{_datadir}/%{name}
+%dir %{_datadir}/%{name}/%{version}
+%{_datadir}/%{name}/%{version}/*.i
+%{_datadir}/%{name}/%{version}/allkw.swg
+%{_datadir}/%{name}/%{version}/director_common.swg
+%{_datadir}/%{name}/%{version}/runtime.swg
+%{_datadir}/%{name}/%{version}/swig*.swg
+%{_datadir}/%{name}/%{version}/csharp
+%{_datadir}/%{name}/%{version}/d
+%{_datadir}/%{name}/%{version}/go
+%{_datadir}/%{name}/%{version}/java
+%dir %{_datadir}/%{name}/%{version}/javascript
+%{_datadir}/%{name}/%{version}/javascript/jsc
+%{_datadir}/%{name}/%{version}/javascript/v8
+%{_datadir}/%{name}/%{version}/lua
+%{_datadir}/%{name}/%{version}/mzscheme
+%{_datadir}/%{name}/%{version}/ocaml
+%{_datadir}/%{name}/%{version}/octave
+%{_datadir}/%{name}/%{version}/r
+%{_datadir}/%{name}/%{version}/scilab
+%{_datadir}/%{name}/%{version}/std
+%{_datadir}/%{name}/%{version}/typemaps
+%{_datadir}/%{name}/%{version}/xml
 %{_examplesdir}/%{name}-%{version}
 
+%if %{with guile}
 %files guile
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*guile.so
-%attr(755,root,root) %{_libdir}/lib*guile.la
+%{_datadir}/%{name}/%{version}/guile
+%endif
 
+%if %{with perl}
 %files perl
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*pl.so
-%attr(755,root,root) %{_libdir}/lib*pl.la
+%{_datadir}/%{name}/%{version}/perl5
+%endif
+
+%if %{with php}
+%files php
+%defattr(644,root,root,755)
+%{_datadir}/%{name}/%{version}/php
+%endif
 
 %files python
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*py.so
-%attr(755,root,root) %{_libdir}/lib*py.la
+%{_datadir}/%{name}/%{version}/python
 
+%if %{with ruby}
 %files ruby
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*rb.so
-%attr(755,root,root) %{_libdir}/lib*rb.la
+%{_datadir}/%{name}/%{version}/ruby
+%endif
 
+%if %{with tcl}
 %files tcl
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*tcl*.so
-%attr(755,root,root) %{_libdir}/lib*tcl*.la
+%{_datadir}/%{name}/%{version}/tcl
+%endif
This page took 0.04889 seconds and 4 git commands to generate.