Compare commits

..

5 Commits
master ... f20

Author SHA1 Message Date
Björn Esser a65ed0f09c Updated Patch3 with a more elaborated approach 2015-04-25 08:25:23 +02:00
Björn Esser d6e48d2670 Update to 3.0.5 2015-04-03 22:32:44 +02:00
Björn Esser fa52dc14fa Update to 2.0.12 2015-04-02 10:48:07 +02:00
Jitka Plesnikova 25c04ad25b 2.0.11 bump 2013-10-01 09:36:33 +02:00
Jitka Plesnikova 0c48a50f30 Fixed BZ#994120 2013-08-29 10:55:09 +02:00
15 changed files with 209 additions and 3227 deletions

8
.gitignore vendored
View File

@ -15,11 +15,3 @@ swig-2.0.0.tar.gz
/swig-3.0.1.tar.gz
/swig-3.0.2.tar.gz
/swig-3.0.5.tar.gz
/swig-3.0.6.tar.gz
/swig-3.0.7.tar.gz
/swig-3.0.8.tar.gz
/swig-3.0.9.tar.gz
/swig-3.0.10.tar.gz
/swig-3.0.11.tar.gz
/swig-3.0.12.tar.gz
/swig-4.0.0.tar.gz

View File

@ -1,4 +0,0 @@
# Use ccache-swig by default. Users who don't want that can setenv the
# CCACHE_DISABLE environment variable in their personal profile.
alias swig 'ccache-swig swig'

View File

@ -1,4 +0,0 @@
# Use ccache-swig by default. Users who don't want that can set the
# CCACHE_DISABLE environment variable in their personal profile.
alias swig='ccache-swig swig'

View File

@ -1,12 +0,0 @@
[name]
ccache-swig - a fast compiler cache
[description]
ccache-swig is a compiler cache. It speeds up re-compilation of C/C++/SWIG
code by caching previous compiles and detecting when the same compile is
being done again. ccache-swig is ccache plus support for SWIG.
[notes]
For more information, see @DOCDIR@/swig-doc/Doc/Manual/CCache.html from the
swig-doc package.

View File

@ -1 +1 @@
SHA512 (swig-4.0.0.tar.gz) = c897b87fb8b21caf8d1bee2c39cb9675a3b0ee047110e808c310a2787f8b89585738726e9f517c64e9d2f1b8311136365c569528f399b444b1081f69689b7165
dcb9638324461b9baba8e044fe59031d swig-3.0.5.tar.gz

View File

@ -0,0 +1,12 @@
diff -up swig-2.0.10/configure.ac.orig swig-2.0.10/configure.ac
--- swig-2.0.10/configure.ac.orig 2013-06-05 14:04:47.707542473 +0200
+++ swig-2.0.10/configure.ac 2013-06-05 14:07:20.338761781 +0200
@@ -274,6 +274,8 @@ then
then CCSHARED="-fpic"
else CCSHARED="+z"
fi;;
+ s390x*-*-*) CCSHARED="-fpic" ;;
+ s390*-*-*) CCSHARED="-fPIC" ;;
*-*-linux*) CCSHARED="-fpic";;
*-*-freebsd* | *-*-openbsd*) CCSHARED="-fpic";;
*-*-netbsd*) CCSHARED="-fPIC";;

View File

@ -0,0 +1,109 @@
From 416277b3a56646c2934ca9ee542a3f36d4f9a436 Mon Sep 17 00:00:00 2001
From: William S Fulton <wsf@fultondesigns.co.uk>
Date: Fri, 24 Apr 2015 21:08:17 +0100
Subject: [PATCH] Python code generated with '-builtin -modernargs' segfaults
for any method taking zero arguments.
Also fixes: "SystemError: error return without exception set" during error checking
when using just -builtin and the incorrect number of arguments is passed to a class
method expecting zero arguments.
Closes #256
Closes #382
---
CHANGES.current | 8 ++++
.../test-suite/python/template_classes_runme.py | 44 ++++++++++++++++++++++
Examples/test-suite/template_classes.i | 3 ++
Source/Modules/python.cxx | 14 +++----
4 files changed, 61 insertions(+), 8 deletions(-)
create mode 100644 Examples/test-suite/python/template_classes_runme.py
diff --git a/Examples/test-suite/python/template_classes_runme.py b/Examples/test-suite/python/template_classes_runme.py
new file mode 100644
index 0000000..9c04fee
--- /dev/null
+++ b/Examples/test-suite/python/template_classes_runme.py
@@ -0,0 +1,44 @@
+from template_classes import *
+
+# This test is just testing incorrect number of arguments/parameters checking
+
+point = PointInt()
+
+rectangle = RectangleInt()
+rectangle.setPoint(point)
+rectangle.getPoint()
+RectangleInt.static_noargs()
+RectangleInt.static_onearg(1)
+
+fail = True
+try:
+ rectangle.setPoint()
+except TypeError, e:
+ fail = False
+if fail:
+ raise RuntimeError("argument count check failed")
+
+
+fail = True
+try:
+ rectangle.getPoint(0)
+except TypeError, e:
+ fail = False
+if fail:
+ raise RuntimeError("argument count check failed")
+
+fail = True
+try:
+ RectangleInt.static_noargs(0)
+except TypeError, e:
+ fail = False
+if fail:
+ raise RuntimeError("argument count check failed")
+
+fail = True
+try:
+ RectangleInt.static_onearg()
+except TypeError, e:
+ fail = False
+if fail:
+ raise RuntimeError("argument count check failed")
diff --git a/Examples/test-suite/template_classes.i b/Examples/test-suite/template_classes.i
index ebe13bd..d357e41 100644
--- a/Examples/test-suite/template_classes.i
+++ b/Examples/test-suite/template_classes.i
@@ -18,6 +18,9 @@ class RectangleTest {
public:
Point<T>& getPoint() {return point;}
void setPoint(Point<T>& value) {point = value;}
+
+ static int static_noargs() { return 0; }
+ static int static_onearg(int i) { return i; }
private:
Point<T> point;
diff --git a/Source/Modules/python.cxx b/Source/Modules/python.cxx
index c85e3b9..a6a81b5 100644
--- a/Source/Modules/python.cxx
+++ b/Source/Modules/python.cxx
@@ -2713,14 +2713,12 @@ class PYTHON:public Language {
Printv(f->locals, " char * kwnames[] = ", kwargs, ";\n", NIL);
}
- if (use_parse || allow_kwargs || !modernargs) {
- if (builtin && in_class && tuple_arguments == 0) {
- Printf(parse_args, " if (args && PyTuple_Check(args) && PyTuple_GET_SIZE(args) > 0) SWIG_fail;\n");
- } else {
- Printf(parse_args, ":%s\"", iname);
- Printv(parse_args, arglist, ")) SWIG_fail;\n", NIL);
- funpack = 0;
- }
+ if (builtin && in_class && tuple_arguments == 0) {
+ Printf(parse_args, " if (args && PyTuple_Check(args) && PyTuple_GET_SIZE(args) > 0) SWIG_exception_fail(SWIG_TypeError, \"%s takes no arguments\");\n", iname);
+ } else if (use_parse || allow_kwargs || !modernargs) {
+ Printf(parse_args, ":%s\"", iname);
+ Printv(parse_args, arglist, ")) SWIG_fail;\n", NIL);
+ funpack = 0;
} else {
Clear(parse_args);
if (funpack) {

View File

@ -1,16 +0,0 @@
diff --git a/configure.ac b/configure.ac
index 1873797..754238f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1114,7 +1114,10 @@ if test -n "$OCTAVE"; then
AC_MSG_CHECKING([for Octave linker flags])
OCTAVE_LDFLAGS=
- for var in RDYNAMIC_FLAG LFLAGS RLD_FLAG OCTAVE_LIBS LIBS; do
+ for var in OCTLIBDIR; do
+ OCTAVE_LDFLAGS="${OCTAVE_LDFLAGS} "-L`env - ${mkoctfile} -p ${var}`
+ done
+ for var in RDYNAMIC_FLAG RLD_FLAG OCTAVE_LIBS LIBS; do
OCTAVE_LDFLAGS="${OCTAVE_LDFLAGS} "`env - ${mkoctfile} -p ${var}`
done
AC_MSG_RESULT([$OCTAVE_LDFLAGS])

View File

@ -1,28 +0,0 @@
commit c38b7de6a120e6392abff50afd9bb919cc858cfc
Author: Orion Poplawski <orion@nwra.com>
Date: Sun Mar 10 11:47:27 2019 -0600
Fix format-security error with octave 5.1
diff --git a/Lib/octave/octrun.swg b/Lib/octave/octrun.swg
index 3012331..ff614e6 100644
--- a/Lib/octave/octrun.swg
+++ b/Lib/octave/octrun.swg
@@ -51,7 +51,7 @@ SWIGRUNTIME octave_value SWIG_Error(int code, const char *msg) {
octave_value type(SWIG_ErrorType(code));
std::string r = msg;
r += " (" + type.string_value() + ")";
- error(r.c_str());
+ error("%s", r.c_str());
return octave_value(r);
}
@@ -840,7 +840,7 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
const std::string opname = std::string("__") + octave_base_value::get_umap_name(umap) + std::string("__");
octave_value ret;
if (!dispatch_unary_op(opname, ret)) {
- error((opname + std::string(" method not found")).c_str());
+ error("%s", (opname + std::string(" method not found")).c_str());
return octave_value();
}
return ret;

483
swig.spec
View File

@ -1,100 +1,65 @@
# We can skip tests
%bcond_without testsuite
%if %{without testsuite}
%global tcl 0
%global lualang 0
%global phplang 0
%global rubylang 0
%global python2lang 0
%global python3lang 0
%global golang 0
%global octave 0
%global Rlang 0
%global javalang 0
%endif
%{!?tcl:%global tcl 1}
%{!?guile:%global guile 0}
%{!?guile:%global guile 1}
%{!?lualang:%global lualang 1}
%{!?phplang:%global phplang 1}
# Disable Ruby test failed with swig 4.0.0
%ifarch s390 s390x
%{!?rubylang:%global rubylang 0}
%else
%{!?rubylang:%global rubylang 1}
%endif
%{!?python2lang:%global python2lang 1}
%{!?python3lang:%global python3lang 1}
%if 0%{?rhel}
# Ruby segfaults in some tests on fc23 and only on armv7-arch.
%ifarch %{arm}
%if 0%{?fedora} == 23
%{!?rubylang:%global rubylang 0}
%endif # 0%%{?fedora} == 23
%endif #arch %%{arm}
%{!?rubylang:%global rubylang 1}
%ifarch aarch64 %{arm} ppc64le ppc %{power64} s390 s390x
%{!?golang:%global golang 0}
%{!?octave:%global octave 0}
%{!?Rlang:%global Rlang 0}
%bcond_with build_ccache_swig
%else
%{!?octave:%global octave 1}
%{!?Rlang:%global Rlang 1}
%bcond_without build_ccache_swig
%endif
%ifarch aarch64 %{arm} %{mips} ppc64le ppc %{power64} s390 s390x
%{!?javalang:%global javalang 0}
%else
%if 0%{?rhel}
%{!?golang:%global golang 0}
%{!?Rlang:%global Rlang 0}
%else
%{!?golang:%global golang 1}
# R tests failed (since 3.0.4)
%{!?Rlang:%global Rlang 0}
%endif
%{!?javalang:%global javalang 1}
%endif
# Do not run Go tests, they failed with 4.0.0 on ppc64le
%ifarch %{ix86} x86_64 %{arm} aarch64
%{!?golang:%global golang 1}
%if 0%{?rhel}
%{!?octave:%global octave 0}
%else
%{!?golang:%global golang 0}
%{!?octave:%global octave 1}
%endif
Summary: Connects C/C++/Objective C to some high-level programming languages
Name: swig
Version: 4.0.0
Release: 5%{?dist}
Version: 3.0.5
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
# Define the part of man page sections
Source1: description.h2m
%if %{with build_ccache_swig}
Source2: description-ccache.h2m
Source3: ccache-swig.sh
Source4: ccache-swig.csh
%endif
Patch1: swig207-setools.patch
# Fix the failure on arch x390 during testing.
# This patch can be removed in v3.0.6. Accepted by upstream.
# https://github.com/swig/swig/pull/334
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/commit/416277b3a56646c2934ca9ee542a3f36d4f9a436.patch#/swig-3.0.5_fix-python-modern-buildin.patch
Patch0: swig308-Do-not-use-isystem.patch
# https://github.com/swig/swig/pull/1522
Patch1: swig-octave-ldflags.patch
# Fix Go tests for Go 1.13-beta1 (BZ#1736731)
Patch2: swig400-Fix-all-Go-tests-to-build-with-go-build.patch
Patch3: swig400-Restore-setting-of-GOVERSIONOPTION.patch
Patch4: swig400-Fix-Go-version-check-and-Go-in-tree-example-tests.patch
BuildRequires: perl-interpreter, pcre-devel
%if %{python2lang}
BuildRequires: python2-devel
%endif
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: perl, python2-devel, pcre-devel
BuildRequires: autoconf, automake, gawk, dos2unix
BuildRequires: gcc-c++
BuildRequires: help2man
BuildRequires: perl-devel
BuildRequires: perl(base)
BuildRequires: perl(Config)
BuildRequires: perl(Devel::Peek)
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: perl(fields)
BuildRequires: perl(Math::BigInt)
BuildRequires: perl(strict)
BuildRequires: perl(Test::More)
BuildRequires: perl(vars)
BuildRequires: perl(warnings)
BuildRequires: boost-devel
# Need when Source/CParse/parser.y is patched
BuildRequires: bison
%if %{tcl}
BuildRequires: tcl-devel
%endif
@ -106,9 +71,6 @@ BuildRequires: octave-devel
%endif
%if %{golang}
BuildRequires: golang
BuildRequires: golang-bin
BuildRequires: golang-shared
BuildRequires: golang-src
%endif
%if %{lualang}
BuildRequires: lua-devel
@ -122,61 +84,31 @@ BuildRequires: R-devel
%if %{javalang}
BuildRequires: java, java-devel
%endif
%if %{phplang}
BuildRequires: php, php-devel
%endif
%description
Simplified Wrapper and Interface Generator (SWIG) is a software
development tool for connecting C, C++ and Objective C programs with a
variety of high-level programming languages. SWIG is used with different
types of target languages including common scripting languages such as
Javascript, Perl, PHP, Python, Tcl and Ruby. The list of supported
languages also includes non-scripting languages such as C#, D, Go language,
Java including Android, Lua, OCaml, Octave, Scilab and R. Also several
interpreted and compiled Scheme implementations (Guile, MzScheme/Racket)
are supported. SWIG is most commonly used to create high-level interpreted
or compiled programming environments, user interfaces, and as a tool for
testing and prototyping C/C++ software.
%if %{with build_ccache_swig}
%package -n ccache-swig
Summary: Fast compiler cache
License: GPLv2+
Requires: swig
Conflicts: swig < 3.0.8-2
%description -n ccache-swig
ccache-swig is a compiler cache. It speeds up re-compilation of C/C++/SWIG
code by caching previous compiles and detecting when the same compile is
being done again. ccache-swig is ccache plus support for SWIG.
%endif
variety of high-level programming languages. SWIG is primarily used
with Perl, Python and Tcl/TK, but it has also been extended to Java,
Eiffel and Guile. SWIG is normally used to create high-level
interpreted programming environments, systems integration, and as a
tool for building user interfaces
%package doc
Summary: Documentation files for SWIG
License: BSD
Group: Development/Tools
BuildArch: noarch
%description doc
This package contains documentation for SWIG and useful examples
%package gdb
Summary: Commands for easier debugging of SWIG
License: BSD
Requires: swig
%description gdb
This package contains file with commands for easier debugging of SWIG
in gdb.
%prep
%setup -q -n swig-%{version}
%patch0 -p1 -b .isystem
%patch1 -p1 -b .octave-ldflags
%patch2 -p1
%patch3 -p1
%patch4 -p1
%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
@ -192,24 +124,6 @@ done
# It causes that log had more then 600M.
%configure \
--without-ocaml \
%if %{python2lang}
--with-python=%__python2\
%else
--without-python \
%endif
%if %{python3lang}
--with-python3=%__python3 \
%else
--without-python3 \
%endif
%if %{phplang}
--with-php=%{__php} \
%else
--without-php \
%endif
%if ! %{tcl}
--without-tcl \
%endif
%if ! %{javalang}
--without-java \
%endif
@ -223,9 +137,6 @@ done
--with-octave=/usr/bin/octave \
--without-maximum-compile-warnings \
%endif
%if %{without build_ccache_swig}
--disable-ccache \
%endif
;
make %{?_smp_mflags}
@ -256,301 +167,45 @@ popd
make DESTDIR=%{buildroot} install
#################################################
# Use help output for generating of man page swig
echo "Options:" >help_swig
%{buildroot}%{_bindir}/swig --help >>help_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_swig
sed -i -e 's/^\(\s\+-\w\+-[^-]*\)- \(.*\)$/\1 \2/' help_swig
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_swig <<'EOF'
cat >h2m_helper <<'EOF'
#!/bin/bash
[ "$1" == "--version" ] && echo "" || cat help_swig
[ "$1" == "--version" ] && echo "" || cat help_output
EOF
chmod a+x h2m_helper_swig
chmod a+x h2m_helper
# Generate man page
help2man -N --section 1 ./h2m_helper_swig --include %{SOURCE1} -o %{name}.1
%if %{with build_ccache_swig}
########################################################
# Use help output for generating of man page ccache-swig
%{buildroot}%{_bindir}/ccache-swig -h >>help_ccache
# Update the output to be correctly formatted be help2man
sed -i -e '/compiler cache/ d' help_ccache
sed -i -e '/Copyright/ d' help_ccache
sed -i -e 's/^Usage:/[synopsis]/' help_ccache
sed -i -e 's/^Options:/[options]/' help_ccache
sed -i -e 's/^\s\+/ /' help_ccache
sed -i -e 's/^\(-[^- ] <\w\+>\s\+\) \(\w.\+\)$/ \1 \2/' help_ccache
sed -i -e 's/^\(-[^- ]\s\+\) \(\w.\+\)$/ \1 \2/' help_ccache
# Generate a helper script that will be used by help2man
cat >h2m_helper_ccache <<'EOF'
#!/bin/bash
[ "$1" == "--version" ] && echo ""
[ "$1" == "--help" ] && echo "" || echo ""
EOF
chmod a+x h2m_helper_ccache
cat %{SOURCE2} >>help_ccache
sed -i -e 's#@DOCDIR@#%{_docdir}#' help_ccache
# Generate man page
help2man -N --section 1 ./h2m_helper_ccache --include help_ccache -o ccache-swig.1
%endif
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 %{name}.1 %{buildroot}%{_mandir}/man1/
%if %{with build_ccache_swig}
install -p -m 0644 ccache-swig.1 %{buildroot}%{_mandir}/man1/
%endif
# Quiet some rpmlint complaints - remove empty file
rm -f %{buildroot}%{_datadir}/%name/%{version}/octave/std_carray.i
%if %{with build_ccache_swig}
# Enable ccache-swig by default
mkdir -p %{buildroot}%{_sysconfdir}/profile.d/
install -dm 755 %{buildroot}%{_sysconfdir}/profile.d
install -pm 644 %{SOURCE3} %{SOURCE4} %{buildroot}%{_sysconfdir}/profile.d
%endif
# Add swig.gdb sub-package gdb
mkdir -p %{buildroot}%{_datadir}/%{name}/gdb
install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
# 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}/%{name}
%{_datadir}/%{name}
%exclude %{_datadir}/%{name}/gdb
%{_mandir}/man1/swig.1*
%license LICENSE LICENSE-GPL LICENSE-UNIVERSITIES
%doc ANNOUNCE CHANGES CHANGES.current
%doc COPYRIGHT README TODO
%if %{with build_ccache_swig}
%files -n ccache-swig
%{_bindir}/ccache-swig
%config(noreplace) %{_sysconfdir}/profile.d/ccache-swig.*sh
%{_bindir}/*
%{_datadir}/swig
%{_libdir}/ccache
%{_mandir}/man1/ccache-swig.1*
%endif
%{_mandir}/man1/swig.1*
%doc ANNOUNCE CHANGES CHANGES.current LICENSE LICENSE-GPL
%doc LICENSE-UNIVERSITIES COPYRIGHT README TODO
%files doc
%license LICENSE LICENSE-GPL LICENSE-UNIVERSITIES
%doc Doc Examples COPYRIGHT
%files gdb
%{_datadir}/%{name}/gdb
%doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
%changelog
* Mon Aug 12 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4.0.0-5
- Backport upstream fix for Go tests (BZ#1736731)
* Tue Aug 06 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4.0.0-4
- Disable Go tests, they fail with Go 1.13-beta
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Jun 05 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4.0.0-2
- Updated package description
* Fri May 03 2019 Jitka Plesnikova <jplesnik@redhat.com> - 4.0.0-1
- Update to 4.0.0
* Sat Apr 27 2019 Orion Poplawski <orion@nwra.com> - 3.0.12-25
- Add patches for octave 5.1 support
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jan 25 2019 Jonathan Wakely <jwakely@redhat.com> - 3.0.12-23
- Rebuilt for Boost 1.69
* Thu Nov 15 2018 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-22
- Add support for Octave 4.4
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 3.0.12-20
- Rebuilt for Python 3.7
* Fri Jun 22 2018 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-19
- Disable using of Python 2
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 3.0.12-18
- Rebuilt for Python 3.7
* Tue Apr 24 2018 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-17
- Backport upstream Coverity fixes (bug#1570037)
- Do not build ccache-swig on RHEL
* Wed Feb 14 2018 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-16
- Update conditions for tests
- Fix configure to properly check version of Go 1.10
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Jan 23 2018 Jonathan Wakely <jwakely@redhat.com> - 3.0.12-14
- Rebuilt for Boost 1.66
* Tue Nov 21 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-13
- Disable PHP tests, because they fail with PHP 7.2.0-RC
* Wed Sep 20 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-12
- Fix generated code for constant expressions containing wchar_t L
literals
* Thu Sep 07 2017 Jared Smith <jsmith@fedoraproject.org> - 3.0.12-11
- Add patch to support NodeJS versions 7 and 8, fixes FTBFS
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Wed Jun 14 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.12-8
- Fixed tests to building on Perl 5.26 without dot in INC
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.12-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
* Sat Apr 29 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.12-6
- Rebuilt for bootstrapping new arch: s390x
* Mon Feb 13 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.12-5
- Rebuilt with R-testsuite enabled
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.12-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Feb 01 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.12-3
- Rebuilt with Octave-testsuite enabled
* Sun Jan 29 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.12-2
- Rebuilt for Boost 1.63
* Sat Jan 28 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.12-1
- Update to 3.0.12
- Drop Patch1 and Patch2, applied in upstream-tarball
- Build without Octave and R testsuite, since they are broken due to GCC-7
* Sat Jan 14 2017 Björn Esser <besser82@fedoraproject.org> - 3.0.11-2
- Add Patch1 from upstream
- Do not dump Octave core in examples/test suite scripts
- Add Patch2 for Fedora >= 26, backported from upstream
- Support for Octave 4.2
* Mon Jan 02 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.11-1
- Update to 3.0.11
- Add support for PHP 7
- Disable guile tests
* Wed Oct 19 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.10-2
- Sub-package file swig.gdb (bug #1332673)
* Mon Jun 13 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.10-1
- Update to 3.0.10
* Wed May 25 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-8
- Fix Ruby opaque pointer handling (bug #1299502)
* Mon Apr 18 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-7
- Add support for Go 1.6
* Fri Mar 11 2016 Michal Toman <mtoman@fedoraproject.org> - 3.0.8-6
- Do not build R, Java and Go on MIPS
* Tue Mar 01 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-5
- Used updated upstream fix for GCC 6 issue
* Mon Feb 22 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-4
- Patched to build against GCC 6
- Disable Go tests, because they failed against new Go 1.6
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Jan 14 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-2
- Move ccache-swig to sub-package
- Generate man page for ccache-swig from help
* Mon Jan 04 2016 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.8-1
- Update to 3.0.8
* Sun Dec 06 2015 Björn Esser <fedora@besser82.io> - 3.0.7-10
- fix hunk-offsets in patches
* Sun Dec 06 2015 Björn Esser <fedora@besser82.io> - 3.0.7-9
- add Patch10: Python 3.5, -builtin, excess elements in struct initializer
- add Patch11: Fix incorrect director_classic_runme.py test
- add Patch12: Python SystemError fix with -builtin
- add Patch13: size_type-correction for SwigPySequence_Cont
- add Patch14: Python use Py_ssize_t instead of int for better portability
- add Patch15: Add python inplace-operator caveats to pyopers.swg
* Wed Oct 21 2015 David Sommerseth <davids@redhat.com> - 3.0.7-8
- Ignore locally installed ccache when running CCache unit tests
- Resolves: bz#1274031
* Wed Sep 16 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.7-7
- Remove the old setools patch. The bug was already fixed by upstream
- Resolves: bz#1180257
* Mon Sep 14 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.7-6
- Fix Ruby tracking code (BZ#1225140)
* Thu Sep 03 2015 Jonathan Wakely <jwakely@redhat.com> - 3.0.7-5
- Rebuilt for Boost 1.59
* Tue Sep 01 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.7-4
- Disable Ruby tests
* Thu Aug 27 2015 Jonathan Wakely <jwakely@redhat.com> - 3.0.7-3
- Rebuilt for Boost 1.59
* Wed Aug 05 2015 Jonathan Wakely <jwakely@redhat.com> 3.0.7-2
- Rebuilt for Boost 1.58
* Tue Aug 04 2015 Björn Esser <bjoern.esser@gmail.com> - 3.0.7-1
- Update to 3.0.7 (#1249845)
- Dropped Patch2, changes applied in upstream tarball
* Wed Jul 29 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.6-6
- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159
* Thu Jul 23 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.6-5
- rebuild for Boost 1.58
* Thu Jul 23 2015 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.6-4
- Disable Ruby tests on Fedora 23 and higher when building on armv7
- Update list of Perl dependencies
* Wed Jul 22 2015 David Tardon <dtardon@redhat.com> - 3.0.6-3
- rebuild for Boost 1.58
* Fri Jul 10 2015 Orion Poplawski <orion@cora.nwra.com> - 3.0.6-2
- Add patch for octave 4.0.0 support
* Mon Jul 06 2015 Björn Esser <bjoern.esser@gmail.com> - 3.0.6-1
- Update to 3.0.6 (#1240107)
- Dropped Patch2 and Patch3, changes applied in upstream tarball
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Tue May 26 2015 Dan Horák <dan[at]danny.cz> - 3.0.5-7
- skip ruby also on s390 (#1225140)
* Sat Apr 25 2015 Björn Esser <bjoern.esser@gmail.com> - 3.0.5-6
- Updated Patch3 with a more elaborated approach
@ -602,7 +257,7 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
- No golang or R on aarch64 (currently)
* Tue Apr 22 2014 Karsten Hopp <karsten@redhat.com> 3.0.0-3
- golang is exclusivearch %%{ix86} x86_64 %%{arm}, don't BR it on ppc*, s390*
- 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@redhat.com> - 3.0.0-2
@ -622,7 +277,7 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
* Wed Oct 09 2013 Jitka Plesnikova <jplesnik@redhat.com> - 2.0.11-2
- Use bconds for enabling testsuite
* Mon Sep 16 2013 Jitka Plesnikova <jplesnik@redhat.com> - 2.0.11-1
* Mon Sep 30 2013 Jitka Plesnikova <jplesnik@redhat.com> - 2.0.11-1
- Update to 2.0.11
* Wed Aug 21 2013 Jitka Plesnikova <jplesnik@redhat.com> - 2.0.10-4
@ -832,12 +487,12 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
- swig can determine architecture now (#211095)
* Mon Aug 28 2006 Jitka Kudrnacova <jkudrnac@redhat.com> -1.3.29-1
-rebuilt
-rebuilt
* Tue Jul 18 2006 Jitka Kudrnacova <jkudrnac@redhat.com> - 1.3.29-0.3
- rebuilt
- rebuilt
* Fri Jun 30 2006 Jitka Kudrnacova <jkudrnac@redhat.com> - 1.3.29-0.2
* Fri Jun 30 2006 Jitka Kudrnacova <jkudrnac@redhat.com> - 1.3.29-0.2
- Build requires autoconf, automake (bug #197132)
* Wed Apr 19 2006 Jitka Kudrnacova <jkudrnac@redhat.com> - 1.3.29-0.1
@ -858,13 +513,13 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
* Wed Mar 02 2005 Phil Knirsch <pknirsch@redhat.com> 1.3.24-2
- bump release and rebuild with gcc 4
* Thu Feb 03 2005 Karsten Hopp <karsten@redhat.de> 1.3.24-1
* Thu Feb 03 2005 Karsten Hopp <karsten@redhat.de> 1.3.24-1
- update
* Wed Dec 01 2004 Phil Knirsch <pknirsch@redhat.com> 1.3.23-2
- rebuild
* Tue Nov 23 2004 Karsten Hopp <karsten@redhat.de> 1.3.23-1
* Tue Nov 23 2004 Karsten Hopp <karsten@redhat.de> 1.3.23-1
- update
- new pylib patch
- remove destdir patch, swig.m4 is no longer included
@ -977,7 +632,7 @@ install -pm 644 Tools/swig.gdb %{buildroot}%{_datadir}/%{name}/gdb
- rebuilt for 6.1
* Thu Apr 15 1999 Michael Maher <mike@redhat.com>
- built package for 6.0
- built package for 6.0
* Tue Sep 15 1998 Michael Maher <mike@redhat.com>
- built package

18
swig207-setools.patch Normal file
View File

@ -0,0 +1,18 @@
diff -up swig-2.0.7/Source/Swig/naming.c.setools swig-2.0.7/Source/Swig/naming.c
--- swig-2.0.7/Source/Swig/naming.c.setools 2011-12-11 17:29:51.000000000 +0100
+++ swig-2.0.7/Source/Swig/naming.c 2012-06-27 16:21:21.248375130 +0200
@@ -215,11 +215,11 @@ String *Swig_name_member(const_String_or
Append(r, f);
}
cname = Char(rclassname);
- if ((strncmp(cname, "struct ", 7) == 0) || ((strncmp(cname, "class ", 6) == 0)) || ((strncmp(cname, "union ", 6) == 0))) {
- cname = strchr(cname, ' ') + 1;
- }
replace_nspace(r, nspace);
Replace(r, "%c", cname, DOH_REPLACE_ANY);
+ if ((strncmp(cname, "struct ", 7) == 0) || ((strncmp(cname, "class ", 6) == 0)) || ((strncmp(cname, "union ", 6) == 0))) {
+ Replace(r, " ", "_", DOH_REPLACE_FIRST);
+ }
Replace(r, "%m", membername, DOH_REPLACE_ANY);
/* name_mangle(r); */
Delete(rclassname);

View File

@ -1,13 +0,0 @@
diff -up swig-3.0.8/configure.ac.orig swig-3.0.8/configure.ac
--- swig-3.0.8/configure.ac.orig 2016-02-02 16:01:09.094852303 +0100
+++ swig-3.0.8/configure.ac 2016-02-02 16:01:42.096702679 +0100
@@ -131,7 +131,8 @@ AC_SUBST(BOOST_CPPFLAGS)
dnl How to specify include directories that may be system directories.
# -I should not be used on system directories (GCC)
if test "$GCC" = yes; then
- ISYSTEM="-isystem "
+# ISYSTEM="-isystem "
+ ISYSTEM="-I"
else
ISYSTEM="-I"
fi

View File

@ -1,54 +0,0 @@
From 62136ff782e9bf6641970f716d7d40afcf6c49ea Mon Sep 17 00:00:00 2001
From: Ian Lance Taylor <iant@golang.org>
Date: Fri, 9 Aug 2019 14:06:45 -0700
Subject: [PATCH] Fix Go version check and Go in-tree example tests
Fixes #1607
---
Examples/Makefile.in | 4 ++--
configure.ac | 5 +++--
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/Examples/Makefile.in b/Examples/Makefile.in
index 9e05d2763..6fbca29db 100644
--- a/Examples/Makefile.in
+++ b/Examples/Makefile.in
@@ -1484,7 +1484,7 @@ go: $(SRCDIR_SRCS) $(GOPATHPARENTDIR)/go.mod
rm -f gopath/$(GOMOD)/src/runme/*; \
fi
if test -f $(SRCDIR)$(RUNME).go; then \
- cp $(SRCDIR)/$(RUNME).go gopath/$(GOMOD)/src/runme/; \
+ cp $(SRCDIR)$(RUNME).go gopath/$(GOMOD)/src/runme/; \
fi
GOPATH=`pwd`/gopath/$(GOMOD); \
export GOPATH; \
@@ -1533,7 +1533,7 @@ go_cpp: $(SRCDIR_SRCS) $(GOPATHPARENTDIR)/go.mod
rm -f gopath/$(GOMOD)/src/runme/*; \
fi
if test -f $(SRCDIR)$(RUNME).go; then \
- cp $(SRCDIR)/$(RUNME).go gopath/$(GOMOD)/src/runme/; \
+ cp $(SRCDIR)$(RUNME).go gopath/$(GOMOD)/src/runme/; \
fi
GOPATH=`pwd`/gopath/$(GOMOD); \
export GOPATH; \
diff --git a/configure.ac b/configure.ac
index 73c38a72c..63509cd66 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2391,10 +2391,11 @@ else
if test -n "$GO" ; then
GOVERSIONOPTION=version
+ go_version=$($GO $GOVERSIONOPTION | sed -e 's/go version //')
AC_MSG_CHECKING([whether go version is too old])
case $go_version in
- go1.[012345]*)
- AC_MSG_RESULT([yes - minimum version is 1.6])
+ go1.[012]*)
+ AC_MSG_RESULT([yes - minimum version is 1.3])
GO=
GOOPT="-intgosize 32"
;;
--
2.20.1

File diff suppressed because it is too large Load Diff

View File

@ -1,25 +0,0 @@
From 6b108c19e1504c937e1a7d50147575dd8e624b73 Mon Sep 17 00:00:00 2001
From: Ian Lance Taylor <iant@golang.org>
Date: Thu, 8 Aug 2019 22:59:57 -0700
Subject: [PATCH 2/2] Restore setting of GOVERSIONOPTION
Accidentally removed in last commit.
---
configure.ac | 1 +
1 file changed, 1 insertion(+)
diff --git a/configure.ac b/configure.ac
index a38e97d2a..73c38a72c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2390,6 +2390,7 @@ else
GOVERSIONOPTION=
if test -n "$GO" ; then
+ GOVERSIONOPTION=version
AC_MSG_CHECKING([whether go version is too old])
case $go_version in
go1.[012345]*)
--
2.20.1