Every other package these days seems to come with its own MD5 implementation. Try to trim this insanity, where we can... -mi --- src/dirdef.cpp Sun May 7 14:02:30 2006 +++ src/dirdef.cpp Wed Jun 14 01:30:20 2006 @@ -1,2 +1,3 @@ +#include #include @@ -74,8 +75,6 @@ // convert to md5 hash - uchar md5_sig[16]; QCString sigStr(33); - MD5Buffer((const unsigned char *)anchor.data(),anchor.length(),md5_sig); - MD5SigToString(md5_sig,sigStr.data(),33); + MD5Data((const unsigned char *)anchor.data(),anchor.length(),sigStr.data()); return sigStr; --- src/dot.cpp Sun May 7 14:02:30 2006 +++ src/dot.cpp Wed Jun 14 01:32:54 2006 @@ -33,4 +33,5 @@ #include #include +#include #include @@ -1089,8 +1090,6 @@ } resetReNumbering(); - uchar md5_sig[16]; QCString sigStr(33); - MD5Buffer((const unsigned char *)buf.ascii(),buf.length(),md5_sig); - MD5SigToString(md5_sig,sigStr.data(),33); + MD5Data((const unsigned char *)buf.ascii(),buf.length(),sigStr.data()); if (checkAndUpdateMd5Signature(baseName,sigStr) || !QFileInfo(mapName).exists()) @@ -1643,8 +1642,6 @@ } } - uchar md5_sig[16]; QCString sigStr(33); - MD5Buffer((const unsigned char *)buf.ascii(),buf.length(),md5_sig); - MD5SigToString(md5_sig,sigStr.data(),33); + MD5Data((const unsigned char *)buf.ascii(),buf.length(),sigStr.data()); if (reNumber) { --- src/memberdef.cpp Sat Jun 10 12:56:24 2006 +++ src/memberdef.cpp Wed Jun 14 01:47:53 2006 @@ -18,4 +18,5 @@ #include #include +#include #include #include "memberdef.h" @@ -2134,8 +2135,6 @@ // convert to md5 hash - uchar md5_sig[16]; QCString sigStr(33); - MD5Buffer((const unsigned char *)memAnchor.data(),memAnchor.length(),md5_sig); - MD5SigToString(md5_sig,sigStr.data(),33); + MD5Data((const unsigned char *)memAnchor.data(),memAnchor.length(),sigStr.data()); anc = sigStr; } --- src/util.cpp Sun May 7 14:02:32 2006 +++ src/util.cpp Wed Jun 14 02:05:03 2006 @@ -22,4 +22,5 @@ #endif +#include #include @@ -4319,5 +4320,5 @@ if (value==0) { - usedNames.insert(name,(void *)count); + usedNames.insert(name,(void *)(intptr_t)count); num = count++; } @@ -4335,8 +4336,6 @@ { // third algorithm based on MD5 hash - uchar md5_sig[16]; QCString sigStr(33); - MD5Buffer((const unsigned char *)result.data(),resultLen,md5_sig); - MD5SigToString(md5_sig,sigStr.data(),33); + MD5Data((const unsigned char *)result.data(),resultLen,sigStr.data()); result=result.left(128-32)+sigStr; } @@ -4344,5 +4343,7 @@ if (createSubdirs) { +#if MAP_ALGO==ALGO_COUNT || MAP_ALGO==ALGO_CRC16 int l1Dir=0,l2Dir=0; +#endif #if MAP_ALGO==ALGO_COUNT @@ -4375,10 +4376,11 @@ #elif MAP_ALGO==ALGO_MD5 // third algorithm based on MD5 hash - uchar md5_sig[16]; - MD5Buffer((const unsigned char *)result.data(),result.length(),md5_sig); - l1Dir = md5_sig[14]&0xf; - l2Dir = md5_sig[15]; + char md5[33]; + MD5Data((const unsigned char *)result.data(),result.length(),md5); + result.prepend(QCString().sprintf("d%c/d%c%c/",md5[29],md5[30],md5[31])); #endif +#if MAP_ALGO==ALGO_COUNT || MAP_ALGO==ALGO_CRC16 result.prepend(QCString().sprintf("d%x/d%02x/",l1Dir,l2Dir)); +#endif } return result; --- src/doxygen.pro.in Sun May 7 14:02:30 2006 +++ src/doxygen.pro.in Wed Jun 14 02:08:53 2006 @@ -19,5 +19,5 @@ HEADERS = doxygen.h SOURCES = main.cpp -unix:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5 +unix:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd win32:INCLUDEPATH += . win32-mingw:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5 @@ -29,5 +29,5 @@ win32-g++:LIBS = -L../lib -ldoxygen -ldoxycfg -lqtools -lpng -lmd5 win32-g++:TMAKE_CXXFLAGS += -fno-exceptions -fno-rtti -INCLUDEPATH += ../qtools ../libpng ../libmd5 . +INCLUDEPATH += ../qtools . #win32-g++:INCLUDEPATH -= ../libpng DESTDIR = ../bin