[Top] / [eMule] / [cleanup] / [0.30a]

MetMedic
eMule cleanup
eMule Light
Libraries
Cleanup
0.29a
0.29b
0.29c
0.30a

cleanup.0


Cleanup patch 0 - basic cleanup

[Patch date 2003-08-17 08:00]

This patch does two things:
readies everything for further development. Cleans up emule.sln and emule.vcproj, points libs to "../.." (both project library dependencies and include paths), points DXSDK dependencies to where I have it (C:\Programs\DXSDK), removes language directory..
fixes many compiler warnings. This means just making many typecasts explicit, making tests where assignment result is used as test subject explicit, comments out unreachable code and unused local variables..

My development directory structure goes like: <devroot>/eMule/0.30a/<source packages>, and I placed zlib, cryptolib, id3lib and libpng all to the same level as I put source packages. Source directories are like 0.30a-Pristine, which is just what comes out from eMule source archive when extracted. It has src-directory below that. This directory structure makes it easier for me to manage even tens of different sourcetrees of which half a dozen might be what I'm working on.

As Mobile Mule brought in new external library dependencies, this release is going to generate lots of support requests.

To compile normal Release, Debug, and Debug_Dump builds you only need id3lib. Grab that as noted in readme.txt. I took the Windows builds (library and binaries) as I didn't bother compiling it myself. The library package contains both Release and Debug libraries, but no includes. So, I uncompressed binaries package, too, and copied the include directory of to the id3lib directory to the same level as Release and Debug directories are, and modified include paths and library dependencies accordingly in eMule project.

To compile Mobile Mule build, you also need libpng. Again, I didn't bother compiling, so I grabbed the Windows binary package and set paths correctly in eMule project. You also need to build the CxImage solution separately.. More modifications were needed. And the fun doesn't end here.. Grab DirectX SDK from Microsoft download site, install it (I already have it installed for other reasons), then find <DXSDK>\Samples\C++\DirectShow\BaseClasses directory, and build the baseclasses.sln in there. Yet more modifications to project files, but now it's done. Compiles.

I do not guarantee that any of these builds really work. I have absolutely no intention to use Mobile Mule build for anything at all. What I can say is that it compiles.

Full sources.