besser82 pushed to swig (f20). "Update to 3.0.5"

notifications at fedoraproject.org notifications at fedoraproject.org
Fri Apr 3 20:34:52 UTC 2015


>From 058574832ba4fb2da58bbedc83aec376418763df Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik at redhat.com>
Date: Tue, 25 Mar 2014 13:32:24 +0100
Subject: Update to 3.0.0; Several updates related to BZ#1063589


diff --git a/.gitignore b/.gitignore
index 7ed62aa..874de03 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,4 @@ swig-2.0.0.tar.gz
 /swig-2.0.10.tar.gz
 /swig-2.0.11.tar.gz
 /swig-2.0.12.tar.gz
+/swig-3.0.0.tar.gz
diff --git a/description.h2m b/description.h2m
new file mode 100644
index 0000000..e894cdd
--- /dev/null
+++ b/description.h2m
@@ -0,0 +1,24 @@
+[name]
+swig - Simplified Wrapper and Interface Generator
+
+[synopsis]
+swig [ options ] " file"
+
+[description]
+The swig command is used to create wrapper code to connect C and C++ code to
+scripting languages like Perl, Python, Tcl etc. from the definition of the
+interface. For detailed information on writing those interface definitions
+please refer to /usr/share/doc/swig-doc/Doc/Manual/index.html from the swig-doc
+package.
+
+This manpage concentrates on explaining the invocation of the swig command.
+
+[author]
+SWIG was originally created by David Beazley. For up-to-date information
+about authors and contributors please check http://www.swig.org/guilty.html.
+This manual page was written by Torsten Landschoff <torsten at debian.org> and
+updated by Jitka Plesnikova <jplesnik at redhat.com> (but may be used by
+others).
+
+
+
diff --git a/sources b/sources
index 3260489..ef9123e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c3fb0b2d710cc82ed0154b91e43085a4  swig-2.0.12.tar.gz
+9c8278fad527dda4bf38edffe5acc394  swig-3.0.0.tar.gz
diff --git a/swig-guile.patch b/swig-guile.patch
deleted file mode 100644
index 3b9cdf4..0000000
--- a/swig-guile.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -up swig-2.0.12/Examples/test-suite/guile/li_std_string_runme.scm.guile swig-2.0.12/Examples/test-suite/guile/li_std_string_runme.scm
---- swig-2.0.12/Examples/test-suite/guile/li_std_string_runme.scm.guile	2014-02-09 15:09:05.000000000 -0700
-+++ swig-2.0.12/Examples/test-suite/guile/li_std_string_runme.scm	2014-03-01 08:33:41.343216202 -0700
-@@ -5,5 +5,5 @@
- ; Note: when working with non-ascii strings in guile 2
- ;       locale must be set explicitly
- ;       The setlocale call below takes care of that
--(setlocale LC_ALL "")
-+(setlocale LC_ALL "en_US.utf-8")
- (load "../schemerunme/li_std_string.scm")
diff --git a/swig.1 b/swig.1
deleted file mode 100644
index 5b610b3..0000000
--- a/swig.1
+++ /dev/null
@@ -1,353 +0,0 @@
-.\" First parameter, NAME, should be all caps
-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
-.\" other parameters are allowed: see man(7), man(1)
-.\" Manpage for swig.
-.TH SWIG 1 "2013-05-24"
-.SH NAME
-swig \- Simplified Wrapper and Interface Generator
-.SH SYNOPSIS
-.B swig
-.RI [ options ] " file"
-
-.SH DESCRIPTION
-The swig command is used to create wrapper code to connect C and C++ code
-to scripting languages like Perl, Python, Tcl etc. from the definition of
-the interface.
-For detailed information on writing those interface definitions please
-refer to /usr/share/doc/swig-doc-2.0.9/Doc/Manual/index.html from the
-swig-doc package.
-This manpage concentrates on explaining the invocation of the swig command.
-
-.SH OPTIONS
-.SS Target Language Options:
-.TP
-.B \-allegrocl
-Generate ALLEGROCL wrappers
-.TP
-.B \-chicken
-Generate CHICKEN wrappers
-.TP
-.B \-clisp
-Generate CLISP wrappers
-.TP
-.B \-cffi
-Generate CFFI wrappers
-.TP
-.B \-csharp
-Generate C# wrappers
-.TP
-.B \-d
-Generate D wrappers
-.TP
-.B \-go
-Generate Go wrappers
-.TP
-.B \-guile
-Generate Guile wrappers
-.TP
-.B \-java
-Generate Java wrappers
-.TP
-.B \-lua
-Generate Lua wrappers
-.TP
-.B \-modula3
-Generate Modula 3 wrappers
-.TP
-.B \-mzscheme
-Generate Mzscheme wrappers
-.TP
-.B \-ocaml
-Generate Ocaml wrappers
-.TP
-.B \-octave
-Generate Octave wrappers
-.TP
-.B \-perl
-Generate Perl wrappers
-.TP
-.B \-php
-Generate PHP wrappers
-.TP
-.B \-pike
-Generate Pike wrappers
-.TP
-.B \-python
-Generate Python wrappers
-.TP
-.B \-r
-Generate R (aka GNU S) wrappers
-.TP
-.B \-ruby
-Generate Ruby wrappers
-.TP
-.B \-sexp
-Generate Lisp S-Expressions wrappers
-.TP
-.B \-tcl
-Generate Tcl wrappers
-.TP
-.B \-uffi
-Generate Common Lisp / UFFI wrappers
-.TP
-.B \-xml
-Generate XML wrappers
-i
-
-.SS General Options:
-.TP
-.B \-addextern
-Add extra extern declarations
-.TP
-.B \-c++
-Enable C++ processing
-.TP
-.BI "\-co " file
-Check \fIfile\fR out of the SWIG library
-.TP
-.B \-copyctor
-Automatically generate copy constructors wherever possible
-.TP
-.B \-cpperraswarn
-Treat the preprocessor #error statement as #warning (default)
-.TP
-.B \-copyright
-Display copyright notices
-.TP
-.B \-debug-classes
-Display information about the classes found in the interface
-.TP
-.BI "\-debug-module " n
-Display module parse tree at stages 1-4, \fIn\fR is a csv list of stages
-.TP
-.B \-debug-symtabs
-Display symbol tables information
-.TP
-.B \-debug-symbols
-Display target language symbols in the symbol tables
-.TP
-.B \-debug-csymbols
-Display C symbols in the symbol tables
-.TP
-.B \-debug-lsymbols
-Display target language layer symbols
-.TP
-.B \-debug-tags
-Display information about the tags found in the interface
-.TP
-.B \-debug-template
-Display information for debugging templates
-.TP
-.BI "\-debug-top " n
-Display entire parse tree at stages 1-4, \fIn\fR is a csv list of stages
-.TP
-.B \-debug-typedef
-Display information about the types and typedefs in the interface
-.TP
-.B \-debug-typemap
-Display typemap debugging information
-.TP
-.B \-debug-tmsearch
-Display typemap search debugging information
-.TP
-.B \-debug-tmused
-Display typemaps used debugging information
-.TP
-.B \-directors
-Turn on director mode for all the classes, mainly for testing
-.TP
-.B \-dirprot
-Turn on wrapping of protected members for director classes (default)
-.TP
-.BI \-D symbol
-Define a symbol \fIsymbol\fR (for conditional compilation)
-.TP
-.B \-E
-Preprocess only, does not generate wrapper code
-.TP
-.B \-external-runtime [file]
-Export the SWIG runtime stack
-.TP
-.BI "\-fakeversion " v
-Make SWIG fake the program version number to \fIv\fR
-.TP
-.B \-fcompact
-Compile in compact mode
-.TP
-.BI "\-features " list
-Set global features, where \fIlist\fR is a comma separated list of
-features, eg -features directors,autodoc=1
-If no explicit value is given to the feature, a default of 1 is used
-.TP
-.B \-fastdispatch
-Enable fast dispatch mode to produce faster overload dispatcher code
-.TP
-.B \-Fmicrosoft
-Display error/warning messages in Microsoft format
-.TP
-.B \-Fstandard
-Display error/warning messages in commonly used format
-.TP
-.B \-fvirtual
-Compile in virtual elimination mode
-.TP
-.B \-help
-This output
-.TP
-.B \-I-
-Don't search the current directory
-.TP
-.BI \-I dir
-Look for SWIG files in directory \fIdir\fR
-.TP
-.B \-ignoremissing
-Ignore missing include files
-.TP
-.B \-importall
-Follow all #include statements as imports
-.TP
-.B \-includeall
-Follow all #include statements
-.TP
-.BI \-l ifile
-Include SWIG library file \fIifile\fR
-.TP
-.B \-macroerrors
-Report errors inside macros
-.TP
-.B \-makedefault
-Create default constructors/destructors (the default)
-.TP
-.B \-M
-List all dependencies
-.TP
-.B \-MD
-Is equivalent to \(cq\&-M -MF \fIfile\fR\(cq\&, except \(cq\&-E\(cq\& is not implied
-.TP
-.BI "\-MF " file
-Generate dependencies into \fIfile\fR and continue generating wrappers
-.TP
-.B \-MM
-List dependencies, but omit files in SWIG library
-.TP
-.B \-MMD
-Like \(cq\&-MD\(cq\&, but omit files in SWIG library
-.TP
-.BI "\-module " name
-Set module name to \fIname\fR
-.TP
-.B \-MP
-Generate phony targets for all dependencies
-.TP
-.BI "\-MT " target
-Set the target of the rule emitted by dependency generation
-.TP
-.B \-nocontract
-Turn off contract checking
-.TP
-.B \-nocpperraswarn
-Do not treat the preprocessor #error statement as #warning
-.TP
-.B \-nodefault
-Do not generate default constructors nor default destructors
-.TP
-.B \-nodefaultctor
-Do not generate implicit default constructors
-.TP
-.B \-nodefaultdtor
-Do not generate implicit default destructors
-.TP
-.B \-nodirprot
-Do not wrap director protected members
-.TP
-.B \-noexcept
-Do not wrap exception specifiers
-.TP
-.B \-nofastdispatch
-Disable fast dispatch mode (default)
-.TP
-.B \-nopreprocess
-Skip the preprocessor step
-.TP
-.B \-notemplatereduce
-Disable reduction of the typedefs in templates
-.TP
-.B \-O
-Enable the optimization options:
--fastdispatch -fvirtual
-.TP
-.BI "\-o " outfile
-Set name of the output file to \fIoutfile\fR
-.TP
-.B "\-oh " headfile
-Set name of the output header file to \fIheadfile\fR
-.TP
-.B \-outcurrentdir
-Set default output dir to current dir instead of input file's path
-.TP
-.BI "\-outdir " dir
-Set language specific files output directory to \fIdir\fR
-.TP
-.B \-pcreversion
-Display PCRE version information
-.TP
-.B \-small
-Compile in virtual elimination & compact mode
-.TP
-.B \-swiglib
-Report location of SWIG library and exit
-.TP
-.B \-templatereduce
-Reduce all the typedefs in templates
-.TP
-.B \-v
-Run in verbose mode
-.TP
-.B \-version
-Display SWIG version number
-.TP
-.B \-Wall
-Remove all warning suppression, also implies -Wextra
-.TP
-.B \-Wallkw
-Enable keyword warnings for all the supported languages
-.TP
-.B \-Werror
-Treat warnings as errors
-.TP
-.B \-Wextra
-Adds the following additional warnings: 202,309,403,512,321,322
-.TP
-.BI \-w list
-Suppress/add warning messages, eg -w401,+321
-see Warnings.html
-.TP
-.B "\-xmlout " file
-Write XML version of the parse tree to \fIfile\fR after normal processing
-
-.SS Tcl 8 Options (available with -tcl)
-.TP
-.B \-itcl
-Enable ITcl support
-.TP
-.B \-nosafe
-Leave out SafeInit module function.
-.TP
-.BI "\-prefix " name
-Set a prefix \fIname\fR to be prepended to all names
-.TP
-.B \-namespace
-Build module into a Tcl 8 namespace
-.TP
-.B \-pkgversion
-Set package version
-
-.PP
-Note: 'swig -\fIlang\fR -help' displays options for a specific target language.
-
-.SH AUTHOR
-SWIG was originally created by David Beazley. For up-to-date information
-about authors and contributors please check http://www.swig.org/guilty.html.
-This manual page was written by Torsten Landschoff <torsten at debian.org> and
-updated by Jitka Plesnikova <jplesnik at redhat.com> (but may be used by others).
-
diff --git a/swig.spec b/swig.spec
index 1f54f18..68c153e 100644
--- a/swig.spec
+++ b/swig.spec
@@ -1,46 +1,69 @@
 # We can skip tests
 %bcond_without testsuite
 
-%{!?tcl:%define tcl 1}
-%{!?guile:%define guile 1}
+%{!?tcl:%global tcl 1}
+%{!?guile:%global guile 1}
+%{!?lualang:%global lualang 1}
+%{!?rubylang:%global rubylang 1}
+%{!?javalang:%global javalang 1}
+
+%ifarch %{arm}
+%{!?golang:%global golang 0}
+%else
+%{!?golang:%global golang 1}
+%endif
 
 %if 0%{?rhel}
-%{!?octave:%define octave 0}
+%{!?octave:%global octave 0}
+%{!?Rlang:%global Rlang 0}
 %else
-%{!?octave:%define octave 1}
+%{!?octave:%global octave 1}
+%{!?Rlang:%global Rlang 1}
 %endif
 
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
-Version: 2.0.12
+Version: 3.0.0
 Release: 1%{?dist}
 License: GPLv3+ and BSD
-Group:   Development/Tools
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
-Source1: swig.1
-# Upstream patch to fix guile locale
-# https://github.com/swig/swig/pull/139/files
-Patch0:  swig-guile.patch
+# Define the part of man page sections
+Source1: description.h2m
 Patch1:  swig207-setools.patch
 # Fix the failure on arch x390 during testing
 Patch2:  swig-2.0.10-Fix-x390-build.patch
 
-BuildRequires: perl, python-devel, pcre-devel
+BuildRequires: perl, python2-devel, pcre-devel
+BuildRequires: autoconf, automake, gawk, dos2unix
+BuildRequires: help2man
+BuildRequires: perl-devel
+BuildRequires: perl(Test::More)
+BuildRequires: boost-devel
 %if %{tcl}
 BuildRequires: tcl-devel
 %endif
 %if %{guile}
 BuildRequires: guile-devel
 %endif
-BuildRequires: autoconf, automake, gawk, dos2unix
 %if %{octave}
 BuildRequires: octave-devel
 %endif
-# Tests
-BuildRequires: perl-devel
-BuildRequires: perl(Test::More)
-BuildRequires: boost-devel
+%if %{golang}
+BuildRequires: golang
+%endif
+%if %{lualang}
+BuildRequires: lua-devel
+%endif
+%if %{rubylang}
+BuildRequires: ruby-devel
+%endif
+%if %{Rlang}
+BuildRequires: R-devel
+%endif
+%if %{javalang}
+BuildRequires: java, java-devel
+%endif
 
 %description
 Simplified Wrapper and Interface Generator (SWIG) is a software
@@ -63,7 +86,6 @@ This package contains documentation for SWIG and useful examples
 %prep
 %setup -q -n swig-%{version}
 
-%patch0 -p1 -b .guile
 %patch1 -p1 -b .setools
 %patch2 -p1 -b .x390
 
@@ -77,7 +99,7 @@ done
 ./autogen.sh
 
 # Disable maximum compile warnings when octave is supported, because Octave
-# code produces lots of the warnings demanded by strict ISO C and ISO C++. 
+# code produces lots of the warnings demanded by strict ISO C and ISO C++.
 # It causes that log had more then 600M.
 %configure \
 %if %{octave}
@@ -98,12 +120,12 @@ make clean-examples
 
 pushd Examples/
 # Remove all arch dependent files in Examples/
-find -type f -name 'Makefile.in' | xargs rm -f --
+find -type f -name 'Makefile.in' -delete -print
 
 # We don't want to ship files below.
 rm -rf test-suite
-find -type f -name '*.dsp' | xargs rm -f --
-find -type f -name '*.dsw' | xargs rm -f --
+find -type f -name '*.dsp' -delete -print
+find -type f -name '*.dsw' -delete -print
 
 # Convert files to UNIX format
 for all in `find -type f`; do
@@ -114,23 +136,47 @@ popd
 
 make DESTDIR=%{buildroot} install
 
-# Add man page for swig
+# Use help output for generating of man page
+echo "Options:" >help_output
+%{buildroot}%{_bindir}/swig --help >>help_output
+
+# Update the output to be correctly formatted be help2man
+sed -i -e 's/^\(\s\+-[^-]\+\)- \(.*\)$/\1 \2/' help_output
+sed -i -e 's/^\(\s\+-\w\+-[^-]*\)- \(.*\)$/\1 \2/' help_output
+
+# Generate a helper script that will be used by help2man
+cat >h2m_helper <<'EOF'
+#!/bin/bash
+[ "$1" == "--version" ] && echo "" || cat help_output
+EOF
+chmod a+x h2m_helper
+
+# Generate man page
+help2man -N --section 1 ./h2m_helper --include %{SOURCE1} -o %{name}.1
+
+# Add man page for swig to repository
 mkdir -p %{buildroot}%{_mandir}/man1/
-install -p -m 0644 %{SOURCE1} %{buildroot}%{_mandir}/man1/
-gzip %{buildroot}%{_mandir}/man1/$(basename %{SOURCE1})
+install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 
 %files
 %{_bindir}/*
 %{_datadir}/swig
 %{_mandir}/man1/ccache-swig.1*
 %{_mandir}/man1/swig.1*
-%doc ANNOUNCE CHANGES CHANGES.current INSTALL LICENSE LICENSE-GPL
+%doc ANNOUNCE CHANGES CHANGES.current LICENSE LICENSE-GPL
 %doc LICENSE-UNIVERSITIES COPYRIGHT README TODO
 
 %files doc
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Thu Mar 20 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
+- Update to 3.0.0
+- Update BRs to run tests for Java, Ruby, Lua, R, Go
+- Replace %%define by %%global (BZ#1063589)
+- Remove Group tag (BZ#1063589)
+- Generate man page from help to have the correct list of options
+
 * Fri Feb 28 2014 Orion Poplawski <orion at cora.nwra.com> - 2.0.12-1
 - Update to 2.0.12
 - A patch to fix guile locale
-- 
cgit v0.10.2


>From 48cf70663f7bcc303317bb59537b1c22728a9a6a Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik at redhat.com>
Date: Fri, 28 Mar 2014 11:00:41 +0100
Subject: Small changes to enable ppc64le (BZ#1081724)


diff --git a/swig.spec b/swig.spec
index 68c153e..93c3446 100644
--- a/swig.spec
+++ b/swig.spec
@@ -7,7 +7,7 @@
 %{!?rubylang:%global rubylang 1}
 %{!?javalang:%global javalang 1}
 
-%ifarch %{arm}
+%ifarch %{arm} ppc64le
 %{!?golang:%global golang 0}
 %else
 %{!?golang:%global golang 1}
@@ -24,7 +24,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -109,7 +109,8 @@ done
 ;
 make %{?_smp_mflags}
 
-%if %{with testsuite}
+## ppc64le passes most tests but fail some java ones; disable for now
+%if %{with testsuite} && %{_arch} != ppc64le
 # Test suite
 make check
 %endif
@@ -170,6 +171,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Fri Mar 28 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
+- Small changes to enable ppc64le (BZ#1081724)
+
 * Thu Mar 20 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
 - Update to 3.0.0
 - Update BRs to run tests for Java, Ruby, Lua, R, Go
-- 
cgit v0.10.2


>From 79f0ba316f2106115ce7b1ae6de68c64bbd132a2 Mon Sep 17 00:00:00 2001
From: Karsten Hopp <karsten at redhat.com>
Date: Tue, 22 Apr 2014 16:06:43 +0200
Subject: golang is exclusivearch %{ix86} x86_64 %{arm}, don't BR it on ppc*,
 s390* unit tests fail on other ppc archs, too. disable for now


diff --git a/swig.spec b/swig.spec
index 93c3446..e1c20eb 100644
--- a/swig.spec
+++ b/swig.spec
@@ -7,7 +7,7 @@
 %{!?rubylang:%global rubylang 1}
 %{!?javalang:%global javalang 1}
 
-%ifarch %{arm} ppc64le
+%ifarch %{arm} ppc64le ppc %{power64} s390 s390x
 %{!?golang:%global golang 0}
 %else
 %{!?golang:%global golang 1}
@@ -24,7 +24,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -109,11 +109,13 @@ done
 ;
 make %{?_smp_mflags}
 
-## ppc64le passes most tests but fail some java ones; disable for now
-%if %{with testsuite} && %{_arch} != ppc64le
+%if %{with testsuite}
+## ppc* passes most tests but fail some java ones; disable for now
+%ifnarch ppc64le ppc %{power64}
 # Test suite
 make check
 %endif
+%endif
 
 %install
 # Remove all arch dependent files in Examples/ created during tests
@@ -171,6 +173,10 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Tue Apr 22 2014 Karsten Hopp <karsten at redhat.com> 3.0.0-3
+- golang is exclusivearch %{ix86} x86_64 %{arm}, don't BR it on ppc*, s390*
+- unit tests fail on other ppc archs, too. disable for now
+
 * Fri Mar 28 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
 - Small changes to enable ppc64le (BZ#1081724)
 
-- 
cgit v0.10.2


>From 2545f35d82ce91289a8c35e9cc76b8a0668fed69 Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson at gmail.com>
Date: Fri, 25 Apr 2014 20:55:17 +0100
Subject: No golang or R on aarch64 (currently)


diff --git a/swig.spec b/swig.spec
index e1c20eb..1435922 100644
--- a/swig.spec
+++ b/swig.spec
@@ -7,7 +7,7 @@
 %{!?rubylang:%global rubylang 1}
 %{!?javalang:%global javalang 1}
 
-%ifarch %{arm} ppc64le ppc %{power64} s390 s390x
+%ifarch aarch64 %{arm} ppc64le ppc %{power64} s390 s390x
 %{!?golang:%global golang 0}
 %else
 %{!?golang:%global golang 1}
@@ -18,13 +18,18 @@
 %{!?Rlang:%global Rlang 0}
 %else
 %{!?octave:%global octave 1}
+%ifnarch aarch64
 %{!?Rlang:%global Rlang 1}
+%else
+%{!?Rlang:%global Rlang 0}
+%endif
 %endif
 
+
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 3%{?dist}
+Release: 4%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -173,6 +178,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Fri Apr 25 2014 Peter Robinson <pbrobinson at fedoraproject.org> 3.0.0-4
+- No golang or R on aarch64 (currently)
+
 * Tue Apr 22 2014 Karsten Hopp <karsten at redhat.com> 3.0.0-3
 - golang is exclusivearch %{ix86} x86_64 %{arm}, don't BR it on ppc*, s390*
 - unit tests fail on other ppc archs, too. disable for now
-- 
cgit v0.10.2


>From 8e05671a3a645d23cb40b3765dbcf2e8f96f4e83 Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson at gmail.com>
Date: Mon, 12 May 2014 19:26:46 +0100
Subject: unit tests fail on aarch64, too. disable for now


diff --git a/swig.spec b/swig.spec
index 1435922..e666ab6 100644
--- a/swig.spec
+++ b/swig.spec
@@ -29,7 +29,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 4%{?dist}
+Release: 5%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -116,7 +116,7 @@ make %{?_smp_mflags}
 
 %if %{with testsuite}
 ## ppc* passes most tests but fail some java ones; disable for now
-%ifnarch ppc64le ppc %{power64}
+%ifnarch ppc64le ppc %{power64} aarch64
 # Test suite
 make check
 %endif
@@ -178,6 +178,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Mon May 12 2014 Peter Robinson <pbrobinson at fedoraproject.org> 3.0.0-5
+- unit tests fail on aarch64, too. disable for now
+
 * Fri Apr 25 2014 Peter Robinson <pbrobinson at fedoraproject.org> 3.0.0-4
 - No golang or R on aarch64 (currently)
 
-- 
cgit v0.10.2


>From 4209caf60ef0bd29e7db71ed423295d921de940d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan at danny.cz>
Date: Thu, 22 May 2014 22:27:35 +0200
Subject: - java unit tests fail on s390(x), too. disable for now


diff --git a/swig.spec b/swig.spec
index e666ab6..56f05c0 100644
--- a/swig.spec
+++ b/swig.spec
@@ -29,7 +29,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 5%{?dist}
+Release: 6%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -115,8 +115,8 @@ done
 make %{?_smp_mflags}
 
 %if %{with testsuite}
-## ppc* passes most tests but fail some java ones; disable for now
-%ifnarch ppc64le ppc %{power64} aarch64
+## ppc*, s390(x) passes most tests but fail some java ones; disable for now
+%ifnarch ppc64le ppc %{power64} aarch64 s390 s390x
 # Test suite
 make check
 %endif
@@ -178,6 +178,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Thu May 22 2014 Dan Horák <dan[at]danny.cz> 3.0.0-6
+- java unit tests fail on s390(x), too. disable for now
+
 * Mon May 12 2014 Peter Robinson <pbrobinson at fedoraproject.org> 3.0.0-5
 - unit tests fail on aarch64, too. disable for now
 
-- 
cgit v0.10.2


>From 31ece2293f80f7e6abe5e0e19d7fb10a9f4d4b59 Mon Sep 17 00:00:00 2001
From: Petr Machata <pmachata at redhat.com>
Date: Fri, 23 May 2014 13:50:08 +0200
Subject: Rebuild for boost 1.55.0


diff --git a/swig.spec b/swig.spec
index 56f05c0..25f4cdb 100644
--- a/swig.spec
+++ b/swig.spec
@@ -29,7 +29,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.0
-Release: 6%{?dist}
+Release: 7%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -178,6 +178,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Fri May 23 2014 Petr Machata <pmachata at redhat.com> - 3.0.0-7
+- Rebuild for boost 1.55.0
+
 * Thu May 22 2014 Dan Horák <dan[at]danny.cz> 3.0.0-6
 - java unit tests fail on s390(x), too. disable for now
 
-- 
cgit v0.10.2


>From e053360026a7db544a40b2a019e7bbe29d31bef1 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik at redhat.com>
Date: Mon, 2 Jun 2014 14:55:12 +0200
Subject: Update to 3.0.1


diff --git a/.gitignore b/.gitignore
index 874de03..21f02d6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@ swig-2.0.0.tar.gz
 /swig-2.0.11.tar.gz
 /swig-2.0.12.tar.gz
 /swig-3.0.0.tar.gz
+/swig-3.0.1.tar.gz
diff --git a/sources b/sources
index ef9123e..2016c74 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-9c8278fad527dda4bf38edffe5acc394  swig-3.0.0.tar.gz
+d8b7e02cfa4bdd32d3db71c1ad34fc39  swig-3.0.1.tar.gz
diff --git a/swig.spec b/swig.spec
index 25f4cdb..8e8b4d6 100644
--- a/swig.spec
+++ b/swig.spec
@@ -5,31 +5,33 @@
 %{!?guile:%global guile 1}
 %{!?lualang:%global lualang 1}
 %{!?rubylang:%global rubylang 1}
-%{!?javalang:%global javalang 1}
 
 %ifarch aarch64 %{arm} ppc64le ppc %{power64} s390 s390x
 %{!?golang:%global golang 0}
+%{!?Rlang:%global Rlang 0}
+%{!?javalang:%global javalang 0}
+%else
+%if 0%{?rhel}
+%{!?golang:%global golang 0}
+%{!?Rlang:%global Rlang 0}
 %else
 %{!?golang:%global golang 1}
+%{!?Rlang:%global Rlang 1}
+%endif
+%{!?javalang:%global javalang 1}
 %endif
 
 %if 0%{?rhel}
 %{!?octave:%global octave 0}
-%{!?Rlang:%global Rlang 0}
 %else
 %{!?octave:%global octave 1}
-%ifnarch aarch64
-%{!?Rlang:%global Rlang 1}
-%else
-%{!?Rlang:%global Rlang 0}
-%endif
 %endif
 
 
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
-Version: 3.0.0
-Release: 7%{?dist}
+Version: 3.0.1
+Release: 1%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -107,6 +109,16 @@ done
 # code produces lots of the warnings demanded by strict ISO C and ISO C++.
 # It causes that log had more then 600M.
 %configure \
+  --without-ocaml \
+%if ! %{javalang}
+  --without-java \
+%endif
+%if ! %{Rlang}
+  --without-r \
+%endif
+%if ! %{golang}
+  --without-go \
+%endif
 %if %{octave}
   --with-octave=/usr/bin/octave \
   --without-maximum-compile-warnings \
@@ -115,12 +127,9 @@ done
 make %{?_smp_mflags}
 
 %if %{with testsuite}
-## ppc*, s390(x) passes most tests but fail some java ones; disable for now
-%ifnarch ppc64le ppc %{power64} aarch64 s390 s390x
 # Test suite
 make check
 %endif
-%endif
 
 %install
 # Remove all arch dependent files in Examples/ created during tests
@@ -178,6 +187,10 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Thu May 29 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.1-1
+- Update to 3.0.1
+- Updated parameters for configure and conditions for BRs
+
 * Fri May 23 2014 Petr Machata <pmachata at redhat.com> - 3.0.0-7
 - Rebuild for boost 1.55.0
 
@@ -194,7 +207,7 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 - golang is exclusivearch %{ix86} x86_64 %{arm}, don't BR it on ppc*, s390*
 - unit tests fail on other ppc archs, too. disable for now
 
-* Fri Mar 28 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
+* Fri Mar 28 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-2
 - Small changes to enable ppc64le (BZ#1081724)
 
 * Thu Mar 20 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.0-1
-- 
cgit v0.10.2


>From b3bffd579426d8b50ea86ac69730f4ea6aa9e107 Mon Sep 17 00:00:00 2001
From: Dennis Gilmore <dennis at ausil.us>
Date: Sun, 8 Jun 2014 02:48:23 -0500
Subject: - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild


diff --git a/swig.spec b/swig.spec
index 8e8b4d6..d691059 100644
--- a/swig.spec
+++ b/swig.spec
@@ -31,7 +31,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.1
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -187,6 +187,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Sun Jun 08 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.0.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
 * Thu May 29 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.1-1
 - Update to 3.0.1
 - Updated parameters for configure and conditions for BRs
-- 
cgit v0.10.2


>From aa7c2abf2f788ef71e2b05c2f797c060057454a1 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik at redhat.com>
Date: Tue, 10 Jun 2014 15:35:40 +0200
Subject: 3.0.2 bump


diff --git a/.gitignore b/.gitignore
index 21f02d6..e6e6585 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,4 @@ swig-2.0.0.tar.gz
 /swig-2.0.12.tar.gz
 /swig-3.0.0.tar.gz
 /swig-3.0.1.tar.gz
+/swig-3.0.2.tar.gz
diff --git a/sources b/sources
index 2016c74..58e0c32 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d8b7e02cfa4bdd32d3db71c1ad34fc39  swig-3.0.1.tar.gz
+62f9b0d010cef36a13a010dc530d0d41  swig-3.0.2.tar.gz
diff --git a/swig.spec b/swig.spec
index d691059..7c1b180 100644
--- a/swig.spec
+++ b/swig.spec
@@ -30,8 +30,8 @@
 
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
-Version: 3.0.1
-Release: 2%{?dist}
+Version: 3.0.2
+Release: 1%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -187,6 +187,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Mon Jun 09 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.2-1
+- Update to 3.0.2
+
 * Sun Jun 08 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.0.1-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 
-- 
cgit v0.10.2


>From 3d48ddbaa165b3ce8bd821816c1b2413ea3f512f Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson at fedoraproject.org>
Date: Mon, 18 Aug 2014 04:23:39 +0000
Subject: - Rebuilt for
 https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild


diff --git a/swig.spec b/swig.spec
index 7c1b180..48444df 100644
--- a/swig.spec
+++ b/swig.spec
@@ -31,7 +31,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.2
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -187,6 +187,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Mon Aug 18 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.0.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
 * Mon Jun 09 2014 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.2-1
 - Update to 3.0.2
 
-- 
cgit v0.10.2


>From 3631e815e94343d796d9e9e64ba6ca00bd1ec5e5 Mon Sep 17 00:00:00 2001
From: Petr Machata <pmachata at redhat.com>
Date: Tue, 27 Jan 2015 14:24:07 +0100
Subject: Rebuild for boost 1.57.0


diff --git a/swig.spec b/swig.spec
index 48444df..69bc764 100644
--- a/swig.spec
+++ b/swig.spec
@@ -31,7 +31,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.2
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -187,6 +187,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Tue Jan 27 2015 Petr Machata <pmachata at redhat.com> - 3.0.2-3
+- Rebuild for boost 1.57.0
+
 * Mon Aug 18 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.0.2-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 
-- 
cgit v0.10.2


>From 199d9f7a58636c3bdeca9e23eac36c0363eaa089 Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik at redhat.com>
Date: Sun, 8 Feb 2015 18:22:54 +0100
Subject: 3.0.5 bump


diff --git a/.gitignore b/.gitignore
index e6e6585..ad129f9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,3 +14,4 @@ swig-2.0.0.tar.gz
 /swig-3.0.0.tar.gz
 /swig-3.0.1.tar.gz
 /swig-3.0.2.tar.gz
+/swig-3.0.5.tar.gz
diff --git a/sources b/sources
index 58e0c32..5589d40 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-62f9b0d010cef36a13a010dc530d0d41  swig-3.0.2.tar.gz
+dcb9638324461b9baba8e044fe59031d  swig-3.0.5.tar.gz
diff --git a/swig.spec b/swig.spec
index 48444df..3abf1d8 100644
--- a/swig.spec
+++ b/swig.spec
@@ -16,7 +16,8 @@
 %{!?Rlang:%global Rlang 0}
 %else
 %{!?golang:%global golang 1}
-%{!?Rlang:%global Rlang 1}
+# R tests failed (since 3.0.4)
+%{!?Rlang:%global Rlang 0}
 %endif
 %{!?javalang:%global javalang 1}
 %endif
@@ -30,8 +31,8 @@
 
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
-Version: 3.0.2
-Release: 2%{?dist}
+Version: 3.0.5
+Release: 1%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -187,6 +188,9 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Tue Feb 03 2015 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.5-1
+- Update to 3.0.5
+
 * Mon Aug 18 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.0.2-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 
-- 
cgit v0.10.2


>From ea6707da27034d83154929d8e843a1811952e236 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <bjoern.esser at gmail.com>
Date: Tue, 10 Feb 2015 09:19:01 +0100
Subject: Enable ccache-swig by default, if ccache is installed (#1176861)


diff --git a/swig.spec b/swig.spec
index 99b8053..824b7ab 100644
--- a/swig.spec
+++ b/swig.spec
@@ -32,7 +32,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.5
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -176,9 +176,14 @@ help2man -N --section 1 ./h2m_helper --include %{SOURCE1} -o %{name}.1
 mkdir -p %{buildroot}%{_mandir}/man1/
 install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 
+# Enable ccache-swig by default, if ccache is installed.
+mkdir -p %{buildroot}%{_libdir}/ccache
+ln -fs ../../bin/ccache-swig %{buildroot}%{_libdir}/ccache/swig
+
 %files
 %{_bindir}/*
 %{_datadir}/swig
+%{_libdir}/ccache
 %{_mandir}/man1/ccache-swig.1*
 %{_mandir}/man1/swig.1*
 %doc ANNOUNCE CHANGES CHANGES.current LICENSE LICENSE-GPL
@@ -188,8 +193,11 @@ install -p -m 0644 %{name}.1 %{buildroot}%{_mandir}/man1/
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Tue Feb 10 2015 Björn Esser <bjoern.esser at gmail.com> - 3.0.5-2
+- Enable ccache-swig by default, if ccache is installed (#1176861)
+
 * Tue Feb 03 2015 Jitka Plesnikova <jplesnik at redhat.com> - 3.0.5-1
-- Update to 3.0.5
+- Update to 3.0.5 (#1178440)
 
 * Tue Jan 27 2015 Petr Machata <pmachata at redhat.com> - 3.0.2-3
 - Rebuild for boost 1.57.0
-- 
cgit v0.10.2


>From 3b13efef544c748b4575b1a6a5f8c23955e13b04 Mon Sep 17 00:00:00 2001
From: Orion Poplawski <orion at cora.nwra.com>
Date: Thu, 19 Feb 2015 12:13:08 -0700
Subject: Rebuild for gcc 5 C++11 ABI


diff --git a/swig.spec b/swig.spec
index 824b7ab..d3740b3 100644
--- a/swig.spec
+++ b/swig.spec
@@ -32,7 +32,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.5
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -193,6 +193,9 @@ ln -fs ../../bin/ccache-swig %{buildroot}%{_libdir}/ccache/swig
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Thu Feb 19 2015 Orion Poplawski <orion at cora.nwra.com> - 3.0.5-3
+- Rebuild for gcc 5 C++11 ABI
+
 * Tue Feb 10 2015 Björn Esser <bjoern.esser at gmail.com> - 3.0.5-2
 - Enable ccache-swig by default, if ccache is installed (#1176861)
 
-- 
cgit v0.10.2


>From ae5d4f653ef7e71fab08ff17c6b8f362f1be7e7d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <bjoern.esser at gmail.com>
Date: Fri, 3 Apr 2015 20:19:12 +0200
Subject: Add Patch3 to fix segfaults of Python-wrappers when generating code
 with `-buildin -modern -modernargs`-flags


diff --git a/swig-3.0.5_fix-python-modern-buildin.patch b/swig-3.0.5_fix-python-modern-buildin.patch
new file mode 100644
index 0000000..13e7fa2
--- /dev/null
+++ b/swig-3.0.5_fix-python-modern-buildin.patch
@@ -0,0 +1,23 @@
+From e06906bda0ea06f6b5fc15dfa8f55a2251a1bbef Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= <bjoern.esser at gmail.com>
+Date: Fri, 3 Apr 2015 18:48:08 +0200
+Subject: [PATCH] Python: fix using `-builtin -modern -modernargs` results in
+ segfaulting code (#256)
+
+---
+ Source/Modules/python.cxx | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Source/Modules/python.cxx b/Source/Modules/python.cxx
+index 0e4a402..b2c429d 100644
+--- a/Source/Modules/python.cxx
++++ b/Source/Modules/python.cxx
+@@ -2718,7 +2718,7 @@ class PYTHON:public Language {
+ 	    Printf(parse_args, "if (!SWIG_Python_UnpackTuple(args,\"%s\",%d,%d,0)) SWIG_fail;\n", iname, num_fixed_arguments, tuple_arguments);
+ 	  }
+ 	}
+-      } else {
++      } else if (tuple_arguments > 0) {
+ 	Printf(parse_args, "if(!PyArg_UnpackTuple(args,(char *)\"%s\",%d,%d", iname, num_fixed_arguments, tuple_arguments);
+ 	Printv(parse_args, arglist, ")) SWIG_fail;\n", NIL);
+       }
diff --git a/swig.spec b/swig.spec
index d3740b3..72ef301 100644
--- a/swig.spec
+++ b/swig.spec
@@ -32,7 +32,7 @@
 Summary: Connects C/C++/Objective C to some high-level programming languages
 Name:    swig
 Version: 3.0.5
-Release: 3%{?dist}
+Release: 4%{?dist}
 License: GPLv3+ and BSD
 URL:     http://swig.sourceforge.net/
 Source0: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
@@ -41,6 +41,9 @@ Source1: description.h2m
 Patch1:  swig207-setools.patch
 # Fix the failure on arch x390 during testing
 Patch2:  swig-2.0.10-Fix-x390-build.patch
+# Fix segfaults of Python-wrappers when generating code with
+# `-buildin -modern -modernargs`.  Patch is upstreamed, see patch-url.
+Patch3:  https://github.com/swig/swig/pull/372.patch#/swig-3.0.5_fix-python-modern-buildin.patch
 
 BuildRequires: perl, python2-devel, pcre-devel
 BuildRequires: autoconf, automake, gawk, dos2unix
@@ -96,6 +99,7 @@ This package contains documentation for SWIG and useful examples
 
 %patch1 -p1 -b .setools
 %patch2 -p1 -b .x390
+%patch3 -p1 -b .python
 
 for all in CHANGES README; do
     iconv -f ISO88591 -t UTF8 < $all > $all.new
@@ -193,6 +197,10 @@ ln -fs ../../bin/ccache-swig %{buildroot}%{_libdir}/ccache/swig
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Fri Apr 03 2015 Björn Esser <bjoern.esser at gmail.com> - 3.0.5-4
+- Add Patch3 to fix segfaults of Python-wrappers when generating
+  code with `-buildin -modern -modernargs`-flags
+
 * Thu Feb 19 2015 Orion Poplawski <orion at cora.nwra.com> - 3.0.5-3
 - Rebuild for gcc 5 C++11 ABI
 
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/swig.git/commit/?h=f20&id=d6e48d26709c3360124de656001f745b584c12e6


More information about the scm-commits mailing list