diff options
Diffstat (limited to 'devel/doxygen/files/patch-md5')
-rw-r--r-- | devel/doxygen/files/patch-md5 | 153 |
1 files changed, 153 insertions, 0 deletions
diff --git a/devel/doxygen/files/patch-md5 b/devel/doxygen/files/patch-md5 new file mode 100644 index 000000000..27c21819f --- /dev/null +++ b/devel/doxygen/files/patch-md5 @@ -0,0 +1,153 @@ +Every other package these days seems to come with its own MD5 +implementation. Try to trim this insanity, where we can... + + -mi + +diff -ruN src/dirdef.cpp src/dirdef.cpp +--- src/dirdef.cpp Sun Jan 28 13:28:50 2007 ++++ src/dirdef.cpp Mon Jun 11 18:32:26 2007 +@@ -1,3 +1,4 @@ ++#include <sys/types.h> + #include <md5.h> + + #include "dirdef.h" +@@ -73,10 +74,8 @@ + QCString result; + + // 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; + + // old algorithm +diff -ruN src/dot.cpp src/dot.cpp +--- src/dot.cpp Wed Mar 21 22:35:06 2007 ++++ src/dot.cpp Mon Jun 11 18:33:40 2007 +@@ -38,6 +38,7 @@ + #include <qdir.h> + #include <qfile.h> + #include <qtextstream.h> ++#include <sys/types.h> + #include <md5.h> + + #define MAP_CMD "cmap" +@@ -1204,10 +1205,8 @@ + } + writeGraphFooter(md5stream); + resetReNumbering(); +- uchar md5_sig[16]; + QCString sigStr(33); +- MD5Buffer((const unsigned char *)theGraph.ascii(),theGraph.length(),md5_sig); +- MD5SigToString(md5_sig,sigStr.data(),33); ++ MD5Data((const unsigned char *)theGraph.ascii(),theGraph.length(),sigStr.data()); + if (checkAndUpdateMd5Signature(baseName,sigStr) || + !QFileInfo(mapName).exists()) + { +@@ -1833,10 +1832,8 @@ + } + } + writeGraphFooter(md5stream); +- 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) + { + resetReNumbering(); +diff -ruN src/doxygen.pro.in src/doxygen.pro.in +--- src/doxygen.pro.in Tue Feb 20 19:27:35 2007 ++++ src/doxygen.pro.in Mon Jun 11 18:34:03 2007 +@@ -18,7 +18,7 @@ + CONFIG = console warn_on $extraopts + 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 + win32-msvc:LIBS += qtools.lib png.lib md5.lib doxygen.lib doxycfg.lib shell32.lib +@@ -28,7 +28,7 @@ + win32:TMAKE_CXXFLAGS += -DQT_NODLL + 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 + TARGET = doxygen +diff -ruN src/memberdef.cpp src/memberdef.cpp +--- src/memberdef.cpp Wed Mar 14 15:49:45 2007 ++++ src/memberdef.cpp Mon Jun 11 18:32:26 2007 +@@ -17,6 +17,7 @@ + + #include <stdio.h> + #include <qregexp.h> ++#include <sys/types.h> + #include <assert.h> + #include <md5.h> + #include "memberdef.h" +@@ -2361,10 +2362,8 @@ + memAnchor.prepend(definition()); + + // 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()); + m_impl->anc = sigStr; + } + +diff -ruN src/util.cpp src/util.cpp +--- src/util.cpp Wed Mar 14 13:36:26 2007 ++++ src/util.cpp Mon Jun 11 18:32:26 2007 +@@ -19,6 +19,7 @@ + #include <ctype.h> + #include <errno.h> + ++#include <sys/types.h> + #include <md5.h> + + #include "qtbc.h" +@@ -4561,16 +4562,16 @@ + if (resultLen>=128) // prevent names that cannot be created! + { + // 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; + } + } + if (createSubdirs) + { ++#if MAP_ALGO==ALGO_COUNT || MAP_ALGO==ALGO_CRC16 + int l1Dir=0,l2Dir=0; ++#endif + + #if MAP_ALGO==ALGO_COUNT + // old algorithm, has the problem that after regeneration the +@@ -4601,12 +4602,13 @@ + l2Dir = (dirNum>>4)&0xff; + #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; + }
\ No newline at end of file |