[swig/f19] Update to 2.0.10

Jitka Plesnikova jplesnik at fedoraproject.org
Thu Jun 6 08:27:45 UTC 2013


commit b309c573b408f280206dec62b1d5060f54bdfc34
Author: Jitka Plesnikova <jplesnik at redhat.com>
Date:   Thu Jun 6 10:27:27 2013 +0200

    Update to 2.0.10

 .gitignore                       |    1 +
 sources                          |    2 +-
 swig-2.0.10-Fix-x390-build.patch |   12 ++
 swig.1                           |  353 ++++++++++++++++++++++++++++++++++++++
 swig.spec                        |   97 ++++++-----
 swig203-rh706140.patch           |   30 ----
 swig204-rh752054.patch           |   23 ---
 7 files changed, 418 insertions(+), 100 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index dc1a6a3..116ef5a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ swig-2.0.0.tar.gz
 /swig-2.0.7.tar.gz
 /swig-2.0.8.tar.gz
 /swig-2.0.9.tar.gz
+/swig-2.0.10.tar.gz
diff --git a/sources b/sources
index bdd5bbf..7f6b56f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-54d534b14a70badc226129159412ea85  swig-2.0.9.tar.gz
+6d5e7ad05b4a404e5e85db9befb70c9a  swig-2.0.10.tar.gz
diff --git a/swig-2.0.10-Fix-x390-build.patch b/swig-2.0.10-Fix-x390-build.patch
new file mode 100644
index 0000000..194c4f6
--- /dev/null
+++ b/swig-2.0.10-Fix-x390-build.patch
@@ -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";;
diff --git a/swig.1 b/swig.1
new file mode 100644
index 0000000..5b610b3
--- /dev/null
+++ b/swig.1
@@ -0,0 +1,353 @@
+.\" 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 45a796b..b10aabc 100644
--- a/swig.spec
+++ b/swig.spec
@@ -8,18 +8,18 @@
 %endif
 
 Summary: Connects C/C++/Objective C to some high-level programming languages
-Name: swig
-Version: 2.0.9
-Release: 2%{?dist}
+Name:    swig
+Version: 2.0.10
+Release: 1%{?dist}
 License: GPLv3+ and BSD
-Group: Development/Tools
-URL: http://swig.sourceforge.net/
-Source: http://downloads.sourceforge.net/project/swig/swig/swig-%{version}/swig-%{version}.tar.gz
-Patch4: swig203-rh706140.patch
-Patch6: swig204-rh752054.patch
-Patch9: swig207-setools.patch
-
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+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
+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
 %if %{tcl}
 BuildRequires: tcl-devel
@@ -31,20 +31,24 @@ BuildRequires: autoconf, automake, gawk, dos2unix
 %if %{octave}
 BuildRequires: octave-devel
 %endif
+# Tests
+BuildRequires: perl-devel
+BuildRequires: perl(Test::More)
+BuildRequires: boost-devel
 
 %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 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
+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
+Summary:   Documentation files for SWIG
+License:   BSD
+Group:     Development/Tools
 BuildArch: noarch
 
 %description doc
@@ -52,51 +56,42 @@ This package contains documentation for SWIG and useful examples
 
 %prep
 %setup -q -n swig-%{version}
-%patch4 -p1 -b .rh706140
-# Apply patch 6 when guile2 gets into distro
-#%patch6 -p1 -b .rh752054
 
-%patch9 -p1 -b .setools
+%patch1 -p1 -b .setools
+%patch2 -p1 -b .x390
 
 # as written on https://fedoraproject.org/wiki/Packaging_talk:Perl, section 2
 # (specific req/prov filtering). Before you remove this hack make sure you don't
 # reintroduce https://bugzilla.redhat.com/show_bug.cgi?id=489421
-cat << \EOF > %{name}-prov
-#!/bin/sh
-%{__perl_provides} `perl -p -e 's|\S+%{_docdir}/%{name}-doc-%{version}\S+||'`
-EOF
-
-%define __perl_provides %{_builddir}/%{name}-%{version}/%{name}-prov
-chmod +x %{__perl_provides}
-
-cat << \EOF > %{name}-req
-#!/bin/sh
-%{__perl_requires} `perl -p -e 's|\S+%{_docdir}/%{name}-doc-%{version}\S+||'`
-EOF
-
-%define __perl_requires %{_builddir}/%{name}-%{version}/%{name}-req
-chmod +x %{__perl_requires}
+%global __provides_exclude_from %{_docdir}/%{name}-doc-%{version}
+%global __requires_exclude_from %{_docdir}/%{name}-doc-%{version}
 
 for all in CHANGES README; do
-	iconv -f ISO88591 -t UTF8 < $all > $all.new
-	touch -r $all $all.new
-	mv -f $all.new $all
+    iconv -f ISO88591 -t UTF8 < $all > $all.new
+    touch -r $all $all.new
+    mv -f $all.new $all
 done
 
 %build
 ./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++. 
+# It causes that log had more then 600M.
 %configure \
 %if %{octave}
   --with-octave=/usr/bin/octave \
+  --without-maximum-compile-warnings \
 %endif
 ;
 make %{?_smp_mflags}
 
-# Test suite is currently broken
-#make check
+# Test suite
+make check
 
 %install
-rm -rf %{buildroot}
+# Remove all arch dependent files in Examples/ created during tests
+make clean-examples
 
 pushd Examples/
 # Remove all arch dependent files in Examples/
@@ -109,29 +104,39 @@ find -type f -name '*.dsw' | xargs rm -f --
 
 # Convert files to UNIX format
 for all in `find -type f`; do
-	dos2unix -k $all
-	chmod -x $all
+    dos2unix -k $all
+    chmod -x $all
 done
 popd
 
 make DESTDIR=%{buildroot} install
 
-%clean
-rm -rf %{buildroot}
+# Add man page for swig
+mkdir -p %{buildroot}%{_mandir}/man1/
+install -p -m 0644 %{SOURCE1} %{buildroot}%{_mandir}/man1/
+gzip %{buildroot}%{_mandir}/man1/$(basename %{SOURCE1})
 
 %files
-%defattr(-,root,root,-)
 %{_bindir}/*
 %{_datadir}/swig
 %{_mandir}/man1/ccache-swig.1*
+%{_mandir}/man1/swig.1*
 %doc ANNOUNCE CHANGES CHANGES.current INSTALL LICENSE LICENSE-GPL
 %doc LICENSE-UNIVERSITIES COPYRIGHT README TODO
 
 %files doc
-%defattr(-,root,root,-)
 %doc Doc Examples LICENSE LICENSE-GPL LICENSE-UNIVERSITIES COPYRIGHT
 
 %changelog
+* Fri May 31 2013 Jitka Plesnikova <jplesnik at redhat.com> - 2.0.10-1
+- Update to 2.0.10
+- swig203-rh706140.patch merged
+- swig204-rh752054.patch merged
+- Create swig-2.0.10-Fix-x390-build.patch
+
+* Fri May 24 2013 Jitka Plesnikova <jplesnik at redhat.com> - 2.0.9-3
+- Add man page for swig (BZ#948407)
+
 * Fri Feb 15 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.0.9-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
 


More information about the scm-commits mailing list