Hi folks,

It's been a while and I'm preparing to drop a patch bomb ;-) so I
thought this is a good time to give you all an update on the effort to
port Qpid to Windows.

It's gone pretty well, but ended up needing some refactoring of the
AsynchIO stuff - trying to wedge Windows overlapped I/O into the trunk
scheme was just too twisted and would cause problems forever. There's
some refactoring of the AsynchAcceptor stuff still adviseable but not
yet done. With that, the client and common pieces are building on
Windows, basically.

The Windows "shared library" aka a DLL requires specifications of
whether symbols are imported or exported. Thus, when building, for
example, common, all the class names have to be specified as "export"
to make them available to library users (such as client and broker).
Conversely, when trying to build against common, the classes have to
be marked as "import". I've added the necessary stuff to the common
library (and the code generator) to do this. I still have to do it for
the client and broker libraries, but it's getting difficult to manage
the changes against a moving target on trunk, so here's my plan. I'm
updating my trunk on Linux and integrating my changes there and am
working to get a clean build and test there, and will then submit the
patched and new files via Jira. Hopefully, that can be integrated to
get a stake in the ground, and then I and others who've expressed
interest in working on the Windows port can jump in and finish adding
dll import/export specs and get some real testing underway on Windows.

How does that sound?

Thanks,
-Steve


Reply via email to