Phil,

The only shared-object in that list that is a proper "library" is libqpid-proton.so. The others are extension modules for their various scripting languages. I'm not 100% sure, but I believe that the naming conventions are dictated by the scripting language's extension mechanisms.

-Ted

On 01/04/2013 10:47 AM, Phil Harvey wrote:
I've been working on the Java binding of proton-c and have a couple of
questions about how we're naming our various libraries.

On Linux, running "make all" produces the following:

bindings/ruby/cproton.so
bindings/python/_cproton.so
bindings/perl/libcproton_perl.so
bindings/libproton-swig.so (on JNI branch only)
libqpid-proton.so


=== 1. Naming conventions ====

All things being equal, we should adopt a consistent approach regarding:

- whether to put a "lib" prefix on the file name (my preference is to
always do this)
- whether the language name should appear in the bindings libraries.

I'm guessing that all things are *not* equal, and that we have deliberately
named the bindings differently for some reason.  Can anyone enlighten me?


==== 2. The "lib" prefix on old cmake versions ====

Regarding the "lib" prefix, I am using an old version of cmake (v2.6) which
does not add the prefix by default.  I can add
'set_target_properties(proton-xxx PROPERTIES PREFIX "lib")' as a
workaround.  This still works ok on newer cmake versions.

Unfortunately I think this will force Windows dll's to have the "lib"
prefix, which is undesireable.

Can anyone advise on the best approach?  I'm not a cmake expert.


Thanks
Phil


Reply via email to