diff --git a/doxygen-1.8.10-SOURCE_DATE_EPOCH.patch b/doxygen-1.8.10-SOURCE_DATE_EPOCH.patch deleted file mode 100644 index 2ed341b..0000000 --- a/doxygen-1.8.10-SOURCE_DATE_EPOCH.patch +++ /dev/null @@ -1,154 +0,0 @@ -diff --git a/qtools/qcstring.cpp b/qtools/qcstring.cpp -index 45ccef9..35b9bb8 100644 ---- a/qtools/qcstring.cpp -+++ b/qtools/qcstring.cpp -@@ -460,6 +460,12 @@ ulong QCString::toULong(bool *ok) const - return s.toULong(ok); - } - -+uint64 QCString::toUInt64(bool *ok) const -+{ -+ QString s(data()); -+ return s.toUInt64(ok); -+} -+ - QCString &QCString::setNum(short n) - { - return setNum((long)n); -diff --git a/qtools/qcstring.h b/qtools/qcstring.h -index d8ce074..4f15b18 100644 ---- a/qtools/qcstring.h -+++ b/qtools/qcstring.h -@@ -288,6 +288,7 @@ public: - uint toUInt( bool *ok=0 ) const; - long toLong( bool *ok=0 ) const; - ulong toULong( bool *ok=0 ) const; -+ uint64 toUInt64( bool *ok=0 ) const; - QCString &setNum(short n); - QCString &setNum(ushort n); - QCString &setNum(int n); -diff --git a/qtools/qstring.cpp b/qtools/qstring.cpp -index f51c0d4..458fd53 100644 ---- a/qtools/qstring.cpp -+++ b/qtools/qstring.cpp -@@ -13935,6 +13935,60 @@ bye: - } - - /*! -+ Returns the string converted to an unsigned long -+ value. -+ -+ If \a ok is non-null, \a *ok is set to TRUE if there are no -+ conceivable errors, and FALSE if the string is not a number at all, -+ or if it has trailing garbage. -+*/ -+ -+uint64 QString::toUInt64( bool *ok, int base ) const -+{ -+ const QChar *p = unicode(); -+ uint64 val=0; -+ int l = length(); -+ const uint64 max_mult = 1844674407370955161ULL; // ULLONG_MAX/10, rounded down -+ bool is_ok = FALSE; -+ if ( !p ) -+ goto bye; -+ while ( l && p->isSpace() ) // skip leading space -+ l--,p++; -+ if ( *p == '+' ) -+ l--,p++; -+ -+ // NOTE: toULong() code is similar -+ if ( !l || !ok_in_base(*p,base) ) -+ goto bye; -+ while ( l && ok_in_base(*p,base) ) { -+ l--; -+ uint dv; -+ if ( p->isDigit() ) { -+ dv = p->digitValue(); -+ } else { -+ if ( *p >= 'a' && *p <= 'z' ) -+ dv = *p - 'a' + 10; -+ else -+ dv = *p - 'A' + 10; -+ } -+ if ( val > max_mult || (val == max_mult && dv > (ULLONG_MAX%base)) ) -+ goto bye; -+ val = base*val + dv; -+ p++; -+ } -+ -+ while ( l && p->isSpace() ) // skip trailing space -+ l--,p++; -+ if ( !l ) -+ is_ok = TRUE; -+bye: -+ if ( ok ) -+ *ok = is_ok; -+ return is_ok ? val : 0; -+} -+ -+ -+/*! - Returns the string converted to a short value. - - If \a ok is non-null, \a *ok is set to TRUE if there are no -diff --git a/qtools/qstring.h b/qtools/qstring.h -index a64fabf..df3873d 100644 ---- a/qtools/qstring.h -+++ b/qtools/qstring.h -@@ -463,6 +463,7 @@ public: - uint toUInt( bool *ok=0, int base=10 ) const; - long toLong( bool *ok=0, int base=10 ) const; - ulong toULong( bool *ok=0, int base=10 ) const; -+ uint64 toUInt64( bool *ok=0, int base=10 ) const; - float toFloat( bool *ok=0 ) const; - double toDouble( bool *ok=0 ) const; - -diff --git a/src/util.cpp b/src/util.cpp -index d367c40..db6a19c 100644 ---- a/src/util.cpp -+++ b/src/util.cpp -@@ -18,6 +18,7 @@ - #include - #include - #include -+#include - - #include "md5.h" - -@@ -2472,6 +2473,35 @@ QCString fileToString(const char *name,bool filter,bool isSourceCode) - QCString dateToString(bool includeTime) - { - QDateTime current = QDateTime::currentDateTime(); -+ QCString sourceDateEpoch = portable_getenv("SOURCE_DATE_EPOCH"); -+ if (!sourceDateEpoch.isEmpty()) -+ { -+ bool ok; -+ uint64 epoch = sourceDateEpoch.toUInt64(&ok); -+ if (!ok) -+ { -+ static bool warnedOnce=FALSE; -+ if (!warnedOnce) -+ { -+ warn_uncond("Environment variable SOURCE_DATE_EPOCH does not contain a valid number; value is '%s'\n", -+ sourceDateEpoch.data()); -+ warnedOnce=TRUE; -+ } -+ } -+ else if (epoch>UINT_MAX) -+ { -+ static bool warnedOnce=FALSE; -+ if (!warnedOnce) -+ { -+ warn_uncond("Environment variable SOURCE_DATA_EPOCH must have a value smaller than or equal to %llu; actual value %llu\n",UINT_MAX,epoch); -+ warnedOnce=TRUE; -+ } -+ } -+ else // all ok, replace current time with epoch value -+ { -+ current.setTime_t((ulong)epoch); // TODO: add support for 64bit epoch value -+ } -+ } - return theTranslator->trDateTime(current.date().year(), - current.date().month(), - current.date().day(), diff --git a/doxygen-1.8.10-angle-bracket.patch b/doxygen-1.8.10-angle-bracket.patch deleted file mode 100644 index ab748d0..0000000 --- a/doxygen-1.8.10-angle-bracket.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp -index 99d6fdd..d8913e1 100644 ---- a/src/htmldocvisitor.cpp -+++ b/src/htmldocvisitor.cpp -@@ -1902,6 +1902,8 @@ void HtmlDocVisitor::filterQuotedCdataAttr(const char* str) - { - case '&': m_t << "&"; break; - case '"': m_t << """; break; -+ case '<': m_t << "<"; break; -+ case '>': m_t << ">"; break; - // For SGML compliance, and given the SGML declaration for HTML syntax, - // it's enough to replace these two, provided that the declaration - // for the HTML version we generate (and as supported by the browser) -diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp -index d8913e1..0ce4030 100644 ---- a/src/htmldocvisitor.cpp -+++ b/src/htmldocvisitor.cpp -@@ -1904,24 +1904,6 @@ void HtmlDocVisitor::filterQuotedCdataAttr(const char* str) - case '"': m_t << """; break; - case '<': m_t << "<"; break; - case '>': m_t << ">"; break; -- // For SGML compliance, and given the SGML declaration for HTML syntax, -- // it's enough to replace these two, provided that the declaration -- // for the HTML version we generate (and as supported by the browser) -- // specifies that all the other symbols used in rawVal are -- // within the right character class (i.e., they're not -- // some multinational weird characters not in the BASESET). -- // We assume that 1) the browser will support whatever is remaining -- // in the formula and 2) the TeX formulae are generally governed -- // by even stricter character restrictions so it should be enough. -- // -- // On some incompliant browsers, additional translation of -- // '>' and '<' into ">" and "<", respectively, might be needed; -- // but I'm unaware of particular modern (last 4 years) versions -- // with such problems, so let's not do it for performance. -- // Also, some brousers will (wrongly) not process the entity references -- // inside the attribute value and show the &...; form instead, -- // so we won't create entites unless necessary to minimize clutter there. -- // --vassilii - default: m_t << c; - } - } diff --git a/doxygen-1.8.10-bibtex.patch b/doxygen-1.8.10-bibtex.patch deleted file mode 100644 index 7bfdc51..0000000 --- a/doxygen-1.8.10-bibtex.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff --git a/src/commentscan.l b/src/commentscan.l -index 3546277..406d966 100644 ---- a/src/commentscan.l -+++ b/src/commentscan.l -@@ -920,7 +920,7 @@ FILEECHAR [a-z_A-Z0-9\x80-\xFF\-\+@&#] - FILE ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|("\""[^\n\"]*"\"") - ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]* - LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]* --CITESCHAR [a-z_A-Z\x80-\xFF] -+CITESCHAR [a-z_A-Z0-9\x80-\xFF] - CITEECHAR [a-z_A-Z0-9\x80-\xFF\-\+:\/]* - CITEID {CITESCHAR}{CITEECHAR}*("."{CITESCHAR}{CITEECHAR}*)* - SCOPEID {ID}({ID}*{BN}*"::"{BN}*)*({ID}?) -diff --git a/src/doctokenizer.l b/src/doctokenizer.l -index 31d583c..efc058a 100644 ---- a/src/doctokenizer.l -+++ b/src/doctokenizer.l -@@ -334,7 +334,7 @@ BLANK [ \t\r] - ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]* - LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]* - PHPTYPE [\\:a-z_A-Z0-9\x80-\xFF\-]+ --CITESCHAR [a-z_A-Z\x80-\xFF] -+CITESCHAR [a-z_A-Z0-9\x80-\xFF] - CITEECHAR [a-z_A-Z0-9\x80-\xFF\-\+:\/]* - CITEID {CITESCHAR}{CITEECHAR}*("."{CITESCHAR}{CITEECHAR}*)* - MAILADR ("mailto:")?[a-z_A-Z0-9.+-]+"@"[a-z_A-Z0-9-]+("."[a-z_A-Z0-9\-]+)+[a-z_A-Z0-9\-]+ -diff --git a/src/cite.cpp b/src/cite.cpp -index 2ea6300..3125f35 100644 ---- a/src/cite.cpp -+++ b/src/cite.cpp -@@ -226,13 +226,13 @@ void CiteDict::generatePage() const - else if (insideBib) doc+=line+"\n"; - int i; - // determine text to use at the location of the @cite command -- if (insideBib && (i=line.find("["); - int k=line.find("]"); - if (j!=-1 && k!=-1) - { -- QCString label = line.mid(i+17,j-i-17); -+ QCString label = line.mid(i+14,j-i-14); - QCString number = line.mid(j+2,k-j-1); - CiteInfo *ci = m_entries.find(label); - //printf("label='%s' number='%s' => %p\n",label.data(),number.data(),ci); diff --git a/doxygen-1.8.10-drop-qt-arch-x86-64-definition.patch b/doxygen-1.8.10-drop-qt-arch-x86-64-definition.patch deleted file mode 100644 index 5a92a14..0000000 --- a/doxygen-1.8.10-drop-qt-arch-x86-64-definition.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 031780293d2838da2643b46878061598ebb56822 Mon Sep 17 00:00:00 2001 -From: Marcin Juszkiewicz -Date: Thu, 8 Oct 2015 10:24:36 +0200 -Subject: [PATCH] DO NOT hardcode x86-64 architecture. - -doxygen built on most of architectures by pure luck and order of Qt5 -qatomics_arch.h header where check for QT_ARCH_X86_64 was *after* most -of other architectures. - -But not after AArch64 where it failed due to attempt of using x86-64 -atomics code. - -https://github.com/doxygen/doxygen/pull/402 - -Signed-off-by: Marcin Juszkiewicz ---- - addon/doxywizard/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: doxygen-1.8.10/addon/doxywizard/CMakeLists.txt -=================================================================== ---- doxygen-1.8.10.orig/addon/doxywizard/CMakeLists.txt -+++ doxygen-1.8.10/addon/doxywizard/CMakeLists.txt -@@ -10,7 +10,7 @@ include_directories( - set(GENERATED_SRC_WIZARD ${GENERATED_SRC}/doxywizard) - file(MAKE_DIRECTORY ${GENERATED_SRC_WIZARD}) - --add_definitions(-DQT_ARCH_X86_64 -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DUNICODE) -+add_definitions(-DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DUNICODE) - set(QT_USE_QTXML TRUE) - find_package(Qt4 REQUIRED) - include(${QT_USE_FILE}) diff --git a/doxygen-1.8.10-fixspace.patch b/doxygen-1.8.10-fixspace.patch deleted file mode 100644 index f3259fb..0000000 --- a/doxygen-1.8.10-fixspace.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp -index a2dd473..dadbb4f 100644 ---- a/src/htmlgen.cpp -+++ b/src/htmlgen.cpp -@@ -1952,11 +1952,6 @@ static void endQuickIndexItem(FTextStream &t,const char *l) - t << "\n"; - } - --static QCString fixSpaces(const QCString &s) --{ -- return substitute(s," "," "); --} -- - static bool quickLinkVisible(LayoutNavEntry::Kind kind) - { - static bool showFiles = Config_getBool("SHOW_FILES"); -diff --git a/src/index.h b/src/index.h -index 150d23f..ace3614 100644 ---- a/src/index.h -+++ b/src/index.h -@@ -284,5 +284,6 @@ void initNamespaceMemberIndices(); - void addClassMemberNameToIndex(MemberDef *md); - void addFileMemberNameToIndex(MemberDef *md); - void addNamespaceMemberNameToIndex(MemberDef *md); -+QCString fixSpaces(const QCString &s); - - #endif diff --git a/doxygen-1.8.10-install.patch b/doxygen-1.8.10-install.patch deleted file mode 100644 index 32bb9b3..0000000 --- a/doxygen-1.8.10-install.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up doxygen-1.8.10/doc/CMakeLists.txt.than doxygen-1.8.10/doc/CMakeLists.txt ---- doxygen-1.8.10/doc/CMakeLists.txt.than 2015-08-28 11:46:15.675460840 +0200 -+++ doxygen-1.8.10/doc/CMakeLists.txt 2015-08-28 11:51:27.894592457 +0200 -@@ -88,17 +88,17 @@ install(FILES - "${PROJECT_BINARY_DIR}/man/doxywizard.1" - "${PROJECT_BINARY_DIR}/man/doxysearch.1" - "${PROJECT_BINARY_DIR}/man/doxyindexer.1" -- DESTINATION man/man1 -+ DESTINATION "${MAN_INSTALL_DIR}" - ) - - install(FILES - "${PROJECT_BINARY_DIR}/latex/doxygen_manual.pdf" -- DESTINATION "${CMAKE_INSTALL_PREFIX}/${DOC_INSTALL_DIR}" -+ DESTINATION "${DOC_INSTALL_DIR}" - ) - - install(DIRECTORY - "${PROJECT_BINARY_DIR}/html" -- DESTINATION "${CMAKE_INSTALL_PREFIX}/${DOC_INSTALL_DIR}" -+ DESTINATION "${DOC_INSTALL_DIR}" - ) - - endif() diff --git a/doxygen-1.8.10-latex.patch b/doxygen-1.8.10-latex.patch deleted file mode 100644 index 35ab52b..0000000 --- a/doxygen-1.8.10-latex.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff --git a/src/formula.cpp b/src/formula.cpp -index ad37782..182ddaa 100644 ---- a/src/formula.cpp -+++ b/src/formula.cpp -@@ -132,6 +132,7 @@ void FormulaList::generateBitmaps(const char *path) - { - err("Problems running dvips. Check your installation!\n"); - portable_sysTimerStop(); -+ QDir::setCurrent(oldDir); - return; - } - portable_sysTimerStop(); -@@ -192,6 +193,7 @@ void FormulaList::generateBitmaps(const char *path) - { - err("Problem running ghostscript %s %s. Check your installation!\n",portable_ghostScriptCommand(),gsArgs); - portable_sysTimerStop(); -+ QDir::setCurrent(oldDir); - return; - } - portable_sysTimerStop(); -diff --git a/src/rtfgen.cpp b/src/rtfgen.cpp -index 7baaa3c..e10b638 100644 ---- a/src/rtfgen.cpp -+++ b/src/rtfgen.cpp -@@ -2590,6 +2590,7 @@ bool RTFGenerator::preProcessFileInplace(const char *path,const char *name) - if (!outf.open(IO_WriteOnly)) - { - err("Failed to open %s for writing!\n",combinedName.data()); -+ QDir::setCurrent(oldDir); - return FALSE; - } - FTextStream outt(&outf); diff --git a/doxygen-1.8.10-memory-leaks.patch b/doxygen-1.8.10-memory-leaks.patch deleted file mode 100644 index 6faf9d1..0000000 --- a/doxygen-1.8.10-memory-leaks.patch +++ /dev/null @@ -1,58 +0,0 @@ -commit 85ddfc814f33943199928447b4627d05b0920b99 -Author: Dimitri van Heesch -Date: Sat Nov 14 13:50:56 2015 +0100 - - Fixed a couple of small memory leaks - -diff --git a/src/classdef.cpp b/src/classdef.cpp -index fa555ac..88f9a70 100644 ---- a/src/classdef.cpp -+++ b/src/classdef.cpp -@@ -2603,7 +2603,7 @@ void ClassDef::setTypeConstraints(ArgumentList *al) - void ClassDef::setTemplateArguments(ArgumentList *al) - { - if (al==0) return; -- if (!m_impl->tempArgs) delete m_impl->tempArgs; // delete old list if needed -+ if (m_impl->tempArgs) delete m_impl->tempArgs; // delete old list if needed - //printf("setting template args '%s' for '%s'\n",tempArgListToString(al,getLanguage()).data(),name().data()); - m_impl->tempArgs=new ArgumentList; - ArgumentListIterator ali(*al); -diff --git a/src/pre.l b/src/pre.l -index 86f9ebb..18f3b1d 100644 ---- a/src/pre.l -+++ b/src/pre.l -@@ -1659,6 +1659,7 @@ static void endCondSection() - { - CondCtx *ctx = g_condStack.pop(); - g_skip=ctx->skip; -+ delete ctx; - } - //printf("endCondSection: skip=%d stack=%d\n",g_skip,g_condStack.count()); - } -@@ -1667,7 +1668,7 @@ static void forceEndCondSection() - { - while (!g_condStack.isEmpty()) - { -- g_condStack.pop(); -+ delete g_condStack.pop(); - } - g_skip=FALSE; - } -@@ -3010,8 +3011,8 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output) - g_includeStack.clear(); - g_expandedDict->setAutoDelete(FALSE); - g_expandedDict->clear(); -- g_condStack.clear(); - g_condStack.setAutoDelete(TRUE); -+ g_condStack.clear(); - //g_fileDefineDict->clear(); - - setFileName(fileName); -@@ -3161,6 +3162,7 @@ void preprocessFile(const char *fileName,BufStr &input,BufStr &output) - if (ctx->sectionId!=" ") sectionInfo.sprintf(" with label %s ",ctx->sectionId.data()); - warn(fileName,ctx->lineNr,"Conditional section%sdoes not have " - "a corresponding \\endcond command within this file.",sectionInfo.data()); -+ delete ctx; - } - // make sure we don't extend a \cond with missing \endcond over multiple files (see bug 624829) - forceEndCondSection(); diff --git a/doxygen-1.8.10-timestamp-latex.patch b/doxygen-1.8.10-timestamp-latex.patch deleted file mode 100644 index 49bfeb0..0000000 --- a/doxygen-1.8.10-timestamp-latex.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff --git a/src/config.xml b/src/config.xml -index acbee8e..faad651 100644 ---- a/src/config.xml -+++ b/src/config.xml -@@ -2647,6 +2647,16 @@ or - ]]> - - -+ - - -