Somehow I didn't reply to the list on this one.   Sorry!

In any case, the code in source control at hg.linux-ha.org appears to be
working correctly.

    - If you do tests out of your workspace - it binds to the libraries
in your workspace.
    - If you run it (or do tests) out of the installed version, it binds
to the installed libraries.

It now also automatically re-generates the python bindings when header
files change.

There was reason to think we need slightly different bindings for
different architectures anyway - so this also solves that problem.

But now you _have_ to have ctypesgen installed in order to build.  [Need
to fix the docs on that one].

One "pecularity" from the cmake point of view - I generate two different
versions of the python bindings, and one of them is put into the source
tree, not the binary tree (so python can easily find it).  It is
unlikely that this will become an issue - but it is possible given
shared filesystems, multiple architectures building out of a single
source tree and also performing tests out of that same tree.

A problem for another day.


On 03/14/2013 03:12 PM, Alan Robertson wrote:
> On 03/13/2013 03:48 PM, Jamie Nguyen wrote:
>>> Regarding the location of the libraries... That's an interesting one... 
>>> I'll see what I can do to fix that better...
>> Great.
> Now I remember why I didn't fixed this before...  It is more complicated
> than it seems...
>
> If I want to be able to test out of my workspace, then I need to have it
> find the libraries in my workspace.
>
> But when I install, I want the installed copy to find the libraries in
> /usr/lib/assimilation (or wherever that's defined) - and not those in my
> workspace.
>
> And, I don't want whatever I do here to fail if we're on windows... [
> Although this is only for the CMA which I'm not expecting to run it on
> Windows, but I want the build to succeed - and life will be simpler if
> this step doesn't fail on windows].
>
> Currently, AssimCctypes.py is a source file -- but it's really a file
> generated by ctypesgen.py.  I was trying to avoid everyone having to
> have a copy.
>
> But if you want to install somewhere other than /usr/lib/assimilation,
> then you need to run ctypesgen.  Everything else supports that - so this
> should too.
>
> Also, if you want to be able to have it locate the copy in your
> workspace, you also need to run ctypesgen.  And I definitely want to be
> able to do that if I can.
>
> So I have to make ctypesgen a required package - and generate two copies
> of AssimCtypes.py - one in my workspace, and one in the installed
> place.  Sigh...  And I have to run it automatically whenever I change
> any header file.  Additional sigh...
>
> But that seems to be a method which will work, and will satisfy all
> those issues. I wrote a python script which will do these things.  I'll
> finish it up, add the cmake rules, and commit it all this evening (or so
> I hope).
>


-- 
    Alan Robertson <[email protected]> - @OSSAlanR

"Openness is the foundation and preservative of friendship...  Let me claim 
from you at all times your undisguised opinions." - William Wilberforce
_______________________________________________
Assimilation mailing list - Discovery-Driven Monitoring
[email protected]
http://lists.community.tummy.com/cgi-bin/mailman/listinfo/assimilation
http://assimmon.org/

Reply via email to