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
|
||||
|
||||
|
@ -26,7 +26,9 @@ Url: http://www.swig.org/
|
||||
Source: http://sourceforge.net/projects/swig/files/swig/%{name}-%{version}/%{name}-%{version}.tar.gz
|
||||
Source1: %{name}.rpmlintrc
|
||||
# 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: automake
|
||||
BuildRequires: boost-devel
|
||||
@ -120,7 +122,8 @@ understandig SWIG usage.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch -p1
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
./autogen.sh
|
||||
|
Loading…
Reference in New Issue
Block a user