[sword-devel] Submitting a Patch against 1.60svn

Nathan Anderson nathan at andersonsplace.net
Mon Oct 19 18:38:19 MST 2009


Ben,
 
    So a newer version of Swig will actually parse inner classes?  Sweet.
I did try 1.3.40 (I downloaded it an compiled it) but I had a different
issue (CLucene 0.9.23) and decided not to pursue it since I don't think I
can even get a newer version of swig on the "build-bots" that I have to
target the sword deb package for.  But, that gives me another way to do it
-- I can pre-build the bindings and then submit the package with  the .cxx
file and work around it that way I believe.  Thanks for the insight; now
that I solved all the other issues,  I really should have retried the 1.3.40
again.   
 
 <http://code.google.com/p/bpbible/source/browse/trunk/README.txt>
http://code.google.com/p/bpbible/source/browse/trunk/README.txt - Lists that
1.5.11 is the recommended version.
 
---
 
    Troy, I owe you an apology -- After re-reading my message -- I realize I
came down a bit hard on you.     You are right the code does not need to be
changed if using a much later version of Swig.
 
--
 
    That patch will fix it for people who aren't running the latest swig, it
is up to you guys if you want to update the code to support older swig
versions or if you want to update the documentation and makefile to check
for a later version of swig.   Either way, I recommend one of the fixes so
that it isn't presenting difficult to diagnose errors for no reason is not
good.  ;-)
 
Nathan.

  _____  

From: Ben Morgan [mailto:benpmorgan at gmail.com] 
Sent: Monday, October 19, 2009 8:19 PM
To: SWORD Developers' Collaboration Forum
Subject: Re: [sword-devel] Submitting a Patch against 1.60svn


It looks like you need a newer version of SWIG.

God Bless,
Ben
----------------------------------------------------------------------------
---------------
Multitudes, multitudes,
   in the valley of decision!
For the day of the LORD is near
   in the valley of decision.

Giôên 3:14 (ESV)




On Tue, Oct 20, 2009 at 12:05 PM, Nathan Anderson
<nathan at andersonsplace.net> wrote:


Ben,
 
    Ok, you got my attention <g> totally!   
 
    I could not not find any way to compile the Sword.cxx module generated
by swig in 1.60/1.60svn (I could do it fine in 1.5.11)   How exactly did you
get past the VerseManager referencing the inner TreeView PositionListener
class in 1.60?   
 
 
 Is their some swig parameter that allows it to generate some of the inner
classes.   
 

I just pulled a fresh trunk version.  This is compiled against Clucene
0.9.21b and ICU 4.2.1.
Here is the error messages from a fresh SVN trunk (w/o my patch) version :
 
After compiling Sword with the following options:
 
OPTIONS="--prefix=/usr $OPTIONS"
OPTIONS="--libdir=/usr/local/lib $OPTIONS"
OPTIONS="--sysconfdir=/etc $OPTIONS"
OPTIONS="--without-conf $OPTIONS"
OPTIONS="--enable-shared $OPTIONS"
OPTIONS="--disable-debug $OPTIONS"
OPTIONS="--with-icu $OPTIONS"
OPTIONS="--with-clucene $OPTIONS"
OPTIONS="--disable-tests $OPTIONS"

I type:
cd bindings/swig/packages
./autogen.sh
./configure
make pythonswig
make python_make
 
--- 
 
I get:
 
Sword.cxx: In function `PyObject*
   _wrap_TreeKey_setPositionChangeListener(PyObject*, PyObject*)':
Sword.cxx:42224: error: `PositionChangeListener' undeclared (first use this
   function)
Sword.cxx:42224: error: (Each undeclared identifier is reported only once
for
   each function it appears in.)
Sword.cxx:42224: error: `arg2' undeclared (first use this function)
Sword.cxx:42224: error: parse error before `)' token
Sword.cxx:42242: error: parse error before `*' token
error: command '/scratchbox/compilers/host-gcc/bin/gcc' failed with exit
status 1
make: *** [python_make] Error 1

----
 
Swig Version 1.3.29
 
After applying my patch I can build it  
 
Nathan
 
 
 
 


  _____  

From: Ben Morgan [mailto:benpmorgan at gmail.com] 
Sent: Monday, October 19, 2009 5:10 PM 

To: SWORD Developers' Collaboration Forum
Subject: Re: [sword-devel] Submitting a Patch against 1.60svn


On Tue, Oct 20, 2009 at 8:36 AM, Troy A. Griffitts <scribe at crosswire.org>
wrote:


Thanks for the patch Nathan,

Is this really necessary?  This has been in the code for quite some time
and BPBible has been working with swig bindings for quite some time with
this in the code.  I don't believe this inner class should ever be
exposed in the bindings, as it is a mechanism we use in the
implementation of a specific derived class, and not a basic interface.



This isn't necessary for me; SWIG will give warnings about nested classes,
but not errors (they just won't be wrapped).
It is actually possible to get round these restrictions, but here it isn't
worth it.

The place I'd actually be a little more worried about the nested classes is
in the av11n code, with VerseMgr::System, etc.


God Bless,
Ben
----------------------------------------------------------------------------
---------------
Multitudes, multitudes,
   in the valley of decision!
For the day of the LORD is near
   in the valley of decision.

Giôên 3:14 (ESV)



_______________________________________________
sword-devel mailing list: sword-devel at crosswire.org
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20091019/769ff3ff/attachment.html>


More information about the sword-devel mailing list