Accepting request 316053 from home:badshah400:branches:devel:tools:building
Fix octave>=4.0 bindings OBS-URL: https://build.opensuse.org/request/show/316053 OBS-URL: https://build.opensuse.org/package/show/devel:tools:building/swig?expand=0&rev=82
This commit is contained in:
parent
821800cf35
commit
88cf571a4f
227
swig-octave4.patch
Normal file
227
swig-octave4.patch
Normal file
@ -0,0 +1,227 @@
|
|||||||
|
diff --git a/Examples/test-suite/octave/default_constructor_runme.m b/Examples/test-suite/octave/default_constructor_runme.m
|
||||||
|
index 2f8bb39..ebe553b 100644
|
||||||
|
--- a/Examples/test-suite/octave/default_constructor_runme.m
|
||||||
|
+++ b/Examples/test-suite/octave/default_constructor_runme.m
|
||||||
|
@@ -14,24 +14,18 @@ try
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_b = dc.delete_B;
|
||||||
|
-
|
||||||
|
try
|
||||||
|
bb = dc.new_BB();
|
||||||
|
error("Whoa. new_BB created.")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_bb = dc.delete_BB;
|
||||||
|
-
|
||||||
|
try
|
||||||
|
c = dc.new_C();
|
||||||
|
error("Whoa. new_C created.")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_c = dc.delete_C;
|
||||||
|
-
|
||||||
|
cc = dc.new_CC();
|
||||||
|
dc.delete_CC(cc);
|
||||||
|
|
||||||
|
@@ -41,24 +35,18 @@ try
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_d = dc.delete_D;
|
||||||
|
-
|
||||||
|
try
|
||||||
|
dd = dc.new_DD();
|
||||||
|
error("Whoa. new_DD created")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-dd = dc.delete_DD;
|
||||||
|
-
|
||||||
|
try
|
||||||
|
ad = dc.new_AD();
|
||||||
|
error("Whoa. new_AD created")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_ad = dc.delete_AD;
|
||||||
|
-
|
||||||
|
e = dc.new_E();
|
||||||
|
dc.delete_E(e);
|
||||||
|
|
||||||
|
@@ -71,12 +59,10 @@ try
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
|
||||||
|
-del_eb = dc.delete_EB;
|
||||||
|
-
|
||||||
|
f = dc.new_F();
|
||||||
|
|
||||||
|
try
|
||||||
|
- del_f = dc.delete_F;
|
||||||
|
+ del_f = dc.delete_F(f);
|
||||||
|
error("Whoa. delete_F created")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
@@ -86,7 +72,7 @@ dc.F_destroy(f);
|
||||||
|
g = dc.new_G();
|
||||||
|
|
||||||
|
try
|
||||||
|
- del_g = dc.delete_G;
|
||||||
|
+ del_g = dc.delete_G(g);
|
||||||
|
error("Whoa. delete_G created")
|
||||||
|
catch
|
||||||
|
end_try_catch
|
||||||
|
diff --git a/Lib/octave/octcontainer.swg b/Lib/octave/octcontainer.swg
|
||||||
|
index 723256c..0211b33 100644
|
||||||
|
--- a/Lib/octave/octcontainer.swg
|
||||||
|
+++ b/Lib/octave/octcontainer.swg
|
||||||
|
@@ -12,6 +12,7 @@
|
||||||
|
* ----------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
%{
|
||||||
|
+#include <climits>
|
||||||
|
#include <iostream>
|
||||||
|
%}
|
||||||
|
|
||||||
|
diff --git a/Lib/octave/octrun.swg b/Lib/octave/octrun.swg
|
||||||
|
index b5c3e5d..ddfd489 100644
|
||||||
|
--- a/Lib/octave/octrun.swg
|
||||||
|
+++ b/Lib/octave/octrun.swg
|
||||||
|
@@ -868,6 +868,17 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
}
|
||||||
|
|
||||||
|
#if defined (HAVE_HDF5)
|
||||||
|
+# if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ virtual bool
|
||||||
|
+ save_hdf5 (octave_hdf5_id loc_id, const char *name, bool save_as_floats) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ virtual bool
|
||||||
|
+ load_hdf5 (octave_hdf5_id loc_id, const char *name, bool have_h5giterate_bug) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+# else
|
||||||
|
virtual bool
|
||||||
|
save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats) {
|
||||||
|
return true;
|
||||||
|
@@ -877,6 +888,7 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
+# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
virtual octave_value convert_to_str(bool pad = false, bool force = false, char type = '"') const {
|
||||||
|
@@ -969,7 +981,11 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
return octave_value();
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ void print(std::ostream &os, bool pr_as_read_syntax = false) {
|
||||||
|
+#else
|
||||||
|
void print(std::ostream &os, bool pr_as_read_syntax = false) const {
|
||||||
|
+#endif
|
||||||
|
if (is_string()) {
|
||||||
|
os << string_value();
|
||||||
|
return;
|
||||||
|
@@ -1089,6 +1105,15 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
{ return ptr->load_binary(is, swap, fmt); }
|
||||||
|
|
||||||
|
#if defined (HAVE_HDF5)
|
||||||
|
+# if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ virtual bool
|
||||||
|
+ save_hdf5 (octave_hdf5_id loc_id, const char *name, bool save_as_floats)
|
||||||
|
+ { return ptr->save_hdf5(loc_id, name, save_as_floats); }
|
||||||
|
+
|
||||||
|
+ virtual bool
|
||||||
|
+ load_hdf5 (octave_hdf5_id loc_id, const char *name, bool have_h5giterate_bug)
|
||||||
|
+ { return ptr->load_hdf5(loc_id, name, have_h5giterate_bug); }
|
||||||
|
+# else
|
||||||
|
virtual bool
|
||||||
|
save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats)
|
||||||
|
{ return ptr->save_hdf5(loc_id, name, save_as_floats); }
|
||||||
|
@@ -1096,6 +1121,7 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
virtual bool
|
||||||
|
load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug)
|
||||||
|
{ return ptr->load_hdf5(loc_id, name, have_h5giterate_bug); }
|
||||||
|
+# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
virtual octave_value convert_to_str(bool pad = false, bool force = false, char type = '"') const
|
||||||
|
@@ -1104,14 +1130,22 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
virtual octave_value convert_to_str_internal(bool pad, bool force, char type) const
|
||||||
|
{ return ptr->convert_to_str_internal(pad, force, type); }
|
||||||
|
|
||||||
|
+#if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ void print(std::ostream &os, bool pr_as_read_syntax = false)
|
||||||
|
+#else
|
||||||
|
void print(std::ostream &os, bool pr_as_read_syntax = false) const
|
||||||
|
+#endif
|
||||||
|
{ return ptr->print(os, pr_as_read_syntax); }
|
||||||
|
|
||||||
|
private:
|
||||||
|
+#if !SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
DECLARE_OCTAVE_ALLOCATOR;
|
||||||
|
+#endif
|
||||||
|
DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA;
|
||||||
|
};
|
||||||
|
+#if !SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
DEFINE_OCTAVE_ALLOCATOR(octave_swig_ref);
|
||||||
|
+#endif
|
||||||
|
DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA(octave_swig_ref, "swig_ref", "swig_ref");
|
||||||
|
|
||||||
|
class octave_swig_packed:public octave_base_value {
|
||||||
|
@@ -1143,7 +1177,11 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ void print(std::ostream &os, bool pr_as_read_syntax = false) {
|
||||||
|
+#else
|
||||||
|
void print(std::ostream &os, bool pr_as_read_syntax = false) const {
|
||||||
|
+#endif
|
||||||
|
indent(os);
|
||||||
|
os << "swig packed type: name = " << (type ? type->name : std::string()) << ", len = " << buf.size(); newline(os);
|
||||||
|
}
|
||||||
|
@@ -1167,6 +1205,17 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
}
|
||||||
|
|
||||||
|
#if defined (HAVE_HDF5)
|
||||||
|
+# if SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
+ virtual bool
|
||||||
|
+ save_hdf5 (octave_hdf5_id loc_id, const char *name, bool save_as_floats) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ virtual bool
|
||||||
|
+ load_hdf5 (octave_hdf5_id loc_id, const char *name, bool have_h5giterate_bug) {
|
||||||
|
+ return true;
|
||||||
|
+ }
|
||||||
|
+# else
|
||||||
|
virtual bool
|
||||||
|
save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats) {
|
||||||
|
return true;
|
||||||
|
@@ -1176,13 +1225,18 @@ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own);
|
||||||
|
load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
+# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
private:
|
||||||
|
+#if !SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
DECLARE_OCTAVE_ALLOCATOR;
|
||||||
|
+#endif
|
||||||
|
DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA;
|
||||||
|
};
|
||||||
|
+#if !SWIG_OCTAVE_PREREQ(4,0,0)
|
||||||
|
DEFINE_OCTAVE_ALLOCATOR(octave_swig_packed);
|
||||||
|
+#endif
|
||||||
|
DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA(octave_swig_packed, "swig_packed", "swig_packed");
|
||||||
|
|
||||||
|
SWIGRUNTIME octave_value_list octave_set_immutable(const octave_value_list &args, int nargout) {
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 10 14:02:07 UTC 2015 - badshah400@gmail.com
|
||||||
|
|
||||||
|
- Add swig-octave4.patch to fix swig bindings for octave >= 4.0
|
||||||
|
(patch taken from Fedora, and has been submitted upstream).
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jul 6 08:43:00 UTC 2015 - kkaempf@suse.com
|
Mon Jul 6 08:43:00 UTC 2015 - kkaempf@suse.com
|
||||||
|
|
||||||
|
@ -26,7 +26,9 @@ Url: http://www.swig.org/
|
|||||||
Source: http://sourceforge.net/projects/swig/files/swig/%{name}-%{version}/%{name}-%{version}.tar.gz
|
Source: http://sourceforge.net/projects/swig/files/swig/%{name}-%{version}/%{name}-%{version}.tar.gz
|
||||||
Source1: %{name}.rpmlintrc
|
Source1: %{name}.rpmlintrc
|
||||||
# Ocaml detection is wrong
|
# Ocaml detection is wrong
|
||||||
Patch: %{name}-%{version}.patch
|
Patch0: %{name}-%{version}.patch
|
||||||
|
# PATCH-FIX-UPSTREAM swig-octave4.patch badshah400@gmail.com -- Fix swig bindings for octave >= 4.0
|
||||||
|
Patch1: swig-octave4.patch
|
||||||
BuildRequires: autoconf
|
BuildRequires: autoconf
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: boost-devel
|
BuildRequires: boost-devel
|
||||||
@ -120,7 +122,8 @@ understandig SWIG usage.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch -p1
|
%patch0 -p1
|
||||||
|
%patch1 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./autogen.sh
|
./autogen.sh
|
||||||
|
Loading…
Reference in New Issue
Block a user