Provide a newer doxygen version. (#9681)

* Provide a newer doxygen version.

+ Also provide a patch that allows collaboration diagrams to work properly with
  C++ std::shared_ptr<T>. Ref:
  6c380ba91a
This commit is contained in:
Kelly (KT) Thompson 2018-10-31 11:03:13 -06:00 committed by Massimiliano Culpo
parent 79e70afed4
commit a3ff21eb2b
2 changed files with 32 additions and 0 deletions

View File

@ -16,6 +16,7 @@ class Doxygen(CMakePackage):
homepage = "http://www.stack.nl/~dimitri/doxygen/"
url = "http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.10.src.tar.gz"
version('1.8.14', '41d8821133e8d8104280030553e2b42b')
version('1.8.12', '08e0f7850c4d22cb5188da226b209a96')
version('1.8.11', 'f4697a444feaed739cfa2f0644abc19b')
version('1.8.10', '79767ccd986f12a0f949015efb5f058f')
@ -30,3 +31,8 @@ class Doxygen(CMakePackage):
# optional dependencies
depends_on("graphviz", when="+graphviz", type='run')
# Support C++14's std::shared_ptr. For details about this patch, see
# https://github.com/Sleepyowl/doxygen/commit/6c380ba91ae41c6d5c409a5163119318932ae2a3?diff=unified
# Also - https://github.com/doxygen/doxygen/pull/6588
patch('shared_ptr.patch', when='@1.8.14')

View File

@ -0,0 +1,26 @@
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 00826d6..a474129 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -342,6 +342,7 @@ static STLInfo g_stlinfo[] =
{ "auto_ptr", 0, 0, "T", "ptr", 0, 0, FALSE, FALSE }, // deprecated
{ "smart_ptr", 0, 0, "T", "ptr", 0, 0, FALSE, FALSE }, // C++11
{ "unique_ptr", 0, 0, "T", "ptr", 0, 0, FALSE, FALSE }, // C++11
+ { "shared_ptr", 0, 0, "T", "ptr", 0, 0, FALSE, FALSE }, // C++14
{ "weak_ptr", 0, 0, "T", "ptr", 0, 0, FALSE, FALSE }, // C++11
{ "ios_base", 0, 0, 0, 0, 0, 0, FALSE, FALSE }, // C++11
{ "error_code", 0, 0, 0, 0, 0, 0, FALSE, FALSE }, // C++11
@@ -515,7 +516,7 @@ static void addSTLClasses(EntryNav *rootNav)
{
addSTLMember(classEntryNav,info->templType2,info->templName2);
}
- if (fullName=="std::auto_ptr" || fullName=="std::smart_ptr" ||
+ if (fullName=="std::auto_ptr" || fullName=="std::smart_ptr" || fullName=="std::shared_ptr" ||
fullName=="std::unique_ptr" || fullName=="std::weak_ptr")
{
Entry *memEntry = new Entry;
@@ -11770,4 +11771,3 @@ void generateOutput()
delete Doxygen::symbolStorage;
g_successfulRun=TRUE;
}
-