<html><body>
<DIV>
<P><FONT face="Arial, Helvetica, sans-serif">I'm seeking feedback on how to best help contribute my porting work back to COIN. I have a few observations and a few dilemas. I want your feedback... </FONT></P>
<P><FONT face=Arial>When I get some good feedback, I'll take it up with appropriate project managers inside COIN...that appears to be the proper protocol? Is there another protocol? I've already gotten the permission slip from my mom (</FONT><FONT face="Times New Roman">Contributor's Statement of Respect for Ownership)</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">The good news: porting to Visual Studio 2005 (MSVC8) doesn't seem all that tough.</FONT></P>
<P><FONT face=Arial>The bad news: There are some bumps along the way, and I have a question on the best "makefile/project" approach.</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">There are 2 porting things to address:</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">1- An iterator definition which isn't 100% complete in OsiCuts, (I submitted an email on this a bit earlier today)<BR></FONT><FONT face="Arial, Helvetica, sans-serif">2- instrumenting code to export symbols for MS's DLL cludge.</FONT></P>
<P><FONT face=Arial>#1 can be fixed with a quick code add,.<BR></FONT><FONT face=Arial>#2 is a deeper thing.</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">Maybe someone out there knows a magic flag for the MSFT compiler, but I find myself instrumenting several classes in order to make the library useful under MSVC8. </FONT><FONT face="Arial, Helvetica, sans-serif">Maybe this is going over old ground and I just didn't see anything in the last 4 months of discussion. I've included the technical changes at the bottom under "Instrumenting code"...</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">On a related note: I have permission from my management to spend some time contributing. I've emailed briefly with JP. He indicated that I might could work on a visual studio project setup which is robust. </FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">Here are 2 options. Any opinions on what is more desirable?</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">1- Visual Studio 2005 projects with relative paths.._might_ work most of the time.</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif">2- gmake makefiles which use the MSFT compiler and flags</FONT></P>
<P><FONT face=Arial>For reference, I'm compiling COIN, Osi, Clp, Cbc, OsiCbc, OsiClp. I can probably port more given decent direction (and suitable code).</FONT></P>
<P><FONT face=Arial>Philip </FONT></P>
<P><FONT face=Arial><A href="mailto:hpwalton@gmail.com">hpwalton at gmail.com</A></FONT></P>
<P><FONT face=Arial></FONT> </P>
<P><FONT color=#0000ff size=2>Notes on instumenting code:</FONT></P>
<P><FONT color=#0000ff size=2>This block of macros would be somewhere in a common header:</FONT></P>
<P><FONT color=#0000ff size=2>#ifndef</FONT><FONT size=2> COINDOTNET_H<BR></FONT><FONT color=#0000ff size=2>#define</FONT><FONT size=2> COINDOTNET_H</FONT></P>
<P><FONT size=2>#ifdef MICROSOFTCOMPILER<BR></FONT><FONT color=#0000ff size=2>#ifdef</FONT><FONT size=2> COINMSDLL<BR></FONT><FONT color=#0000ff size=2>#define</FONT><FONT size=2> COINCLASSEXP </FONT><FONT color=#0000ff size=2>__declspec</FONT><FONT size=2>(</FONT><FONT color=#0000ff size=2>dllexport</FONT><FONT size=2>)<BR></FONT><FONT color=#0000ff size=2>#else<BR>#define</FONT><FONT size=2> COINCLASSEXP </FONT><FONT color=#0000ff size=2>__declspec</FONT><FONT size=2>(</FONT><FONT color=#0000ff size=2>dllimport</FONT><FONT size=2>)<BR></FONT><FONT color=#0000ff size=2>#endif<BR>#pragma</FONT><FONT size=2> </FONT><FONT color=#0000ff size=2>warning</FONT><FONT size=2>(</FONT><FONT color=#0000ff size=2>disable</FONT><FONT size=2>:4290)<BR></FONT><FONT color=#0000ff size=2>#endif<BR>#endif</FONT></P><FONT color=#0000ff size=2><FONT size=2>
<P></FONT>And then any classes which need exposure would need:</FONT></P>
<P><FONT color=#0000ff size=2>... </P>
<P>class<FONT size=2><FONT color=#000000> COINCLASSEXP CoinPackedMatrix {</FONT></P>
<P>...</P>
<P></FONT> </P></FONT></DIV></body></html>