[LLVMdev] Python-LLVM bindings updated

Jarno Seppänen js.nospam at wolke7.net
Mon May 23 12:18:01 PDT 2005


Hi,

some discussion below.

Reid wrote:

> 3. Fix your Makefile to build a shared library properly. You have set
>    TOOLNAME which is for building an executable tool not a shared
>    library. You need to set LIBRARYNAME=..., not TOOLNAME=...

I remember having failed to build a functioning Python extension module with
LIBRARYNAME and SHARED_LIBRARY flags.  Anyway, I cannot remember the details
now so will try again.

> 4. Fix the name of your project. It currently builds "llvm.so" which
>    is not correct by our naming standards. It should result to something
>    like "libLLVMpy.so" which will be obtained if you set LIBRARYNAME
>    to "LLVMpy"

I'd like to challenge the usefulness of the naming standard here.  I see its
value in case of system-wide C/C++ libraries (going to /usr/lib/*), but the
Python modules go into a Python-specific directory
(/usr/lib/python2.4/site-packages/*), so the name must be unique within
Python extensions only.

> 5. Consider waiting for or modifying this python interface latter to
>    either directly use the (forthcoming) C interface or design the
>    interface to have a similar structure and naming convention.

The Python interface represents the C++ interface, so I don't understand the
motivation to use C in the middle?  In my view the Python and C bindings are
independent of each other.

> Once you've got the above accomplished, we can create a repository for
> the python interface and (with Oversight Group approval) give you cvs
> write access to it. That will allow you to make changes and maintain the
> python interface as LLVM grows without significant difficulty or burden.

OK, so I'll get back when I have news about the directory and Makefile
restructuring. 

Regards,
Jarno





More information about the llvm-dev mailing list