JFD wrote:
Yes, you're right.  One should implement Apache module in D.

One thing is that Apache module entry point expects a "C" function.  I've figure
that that one could just add extern(C) in front of D function to be callable 
from
C, so that was easy.  Also, Apache expects .so shared library, and one could 
build
it roughly like this:

Let DMD build a .a library:
dmd -fPIC -lib libhello.d

Then convert it to shared library:
gcc -shared -Wl,-soname,libhello.so.0 -o libhello.so.0.0 libhello.a

Could DMD build .so shared library directly (did I miss something)?

Then it's all D from there on.  Cool!

Thank you.


One way to make it work is to take a page from how rdmd works. Write the plugin in C, have it simply feed its arguments to the dmd compiler, execute, then collect the output of the executable.

Reply via email to