2727# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
2828# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2929
30- set (version 1.8.13 )
31- set (download_hash SHA256=af667887bd7a87dc0dbf9ac8d86c96b552dfb8ca9c790ed1cbffaa6131573f6b )
32- set (patch_version ${version} -10 )
33- set (patch_hash SHA256=e4fb3fa4266998c4192dcdbb1efb563360f1f009d9a80d445721d526de4f9482 )
34- set (base_url https://snapshot.debian.org/archive/debian/20180312T232337Z /pool/main/d/doxygen/)
30+ set (version 1.8.20 )
31+ set (download_hash SHA256=3dbdf8814d6e68233d5149239cb1f0b40b4e7b32eef2fd53de8828fedd7aca15 )
32+ set (patch_version ${version} -4 )
33+ set (patch_hash SHA256=e7e1ea9f8dfb4decdf2617e67124ea1f90d7ecd361f5c54943603ed0be6c2e72 )
34+ set (base_url https://snapshot.debian.org/archive/debian/20201002T144451Z /pool/main/d/doxygen/)
3535
3636option (USE_SYSTEM_DOXYGEN "Use the system DOXYGEN if possible" ON )
3737
@@ -45,50 +45,15 @@ set(test_system_doxygen [[
4545 endif()
4646 endif()
4747 if(CMAKE_C_COMPILER_ID MATCHES "Clang")
48- set(extra_flags "-Wno-tautological-constant-out-of-range-compare -Wno-deprecated-declarations " PARENT_SCOPE)
48+ set(extra_flags "-Wno-return-type -Wno- tautological-constant-out-of-range-compare" PARENT_SCOPE)
4949 elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU")
50- set(extra_flags "-Wno-return-type -Wno-deprecated " PARENT_SCOPE)
50+ set(extra_flags "-Wno-return-type -Wno-write-strings " PARENT_SCOPE)
5151 else()
5252 set(extra_flags "" PARENT_SCOPE)
5353 endif()
5454]])
5555
5656
57- # Fix mingw64 builds
58- # https://github.com/msys2/MINGW-packages/blob/b99b3d396d8d3dfcee41548d1b96729464bde4e5/mingw-w64-doxygen/fix-casts.patch
59- set (fix-casts_patch [[
60- --- doxygen-1.8.6/qtools/qcstring.cpp.orig 2013-05-19 19:12:31.000000000 +0400
61- +++ doxygen-1.8.6/qtools/qcstring.cpp 2014-04-04 06:54:07.313800000 +0400
62- @@ -476,7 +476,7 @@
63- if ( to > first && *(to-1) == 0x20 )
64- to--;
65- *to = '\0';
66- - result.resize( (int)((long)to - (long)result.data()) + 1 );
67- + result.resize( (int)(reinterpret_cast<intptr_t>(to) - reinterpret_cast<intptr_t>(result.data())) + 1 );
68- return result;
69- }
70-
71- @@ -717,7 +717,7 @@
72- int res;
73- uchar c;
74- if ( !s1 || !s2 )
75- - return s1 == s2 ? 0 : (int)((long)s2 - (long)s1);
76- + return s1 == s2 ? 0 : (int)(reinterpret_cast<intptr_t>(s2) - reinterpret_cast<intptr_t>(s1));
77- for ( ; !(res = (c=tolower(*s1)) - tolower(*s2)); s1++, s2++ )
78- if ( !c ) // strings are equal
79- break;
80- @@ -731,7 +731,7 @@
81- int res;
82- uchar c;
83- if ( !s1 || !s2 )
84- - return (int)((long)s2 - (long)s1);
85- + return (int)(reinterpret_cast<uintptr_t>(s2) - reinterpret_cast<uintptr_t>(s1));
86- for ( ; len--; s1++, s2++ ) {
87- if ( (res = (c=tolower(*s1)) - tolower(*s2)) )
88- return res;
89- ]])
90-
91-
9257superbuild_package(
9358 NAME doxygen-patches
9459 VERSION ${patch_version}
@@ -110,18 +75,19 @@ superbuild_package(
11075 SOURCE
11176 URL ${base_url} doxygen_${version} .orig.tar.gz
11277 URL_HASH ${download_hash}
113-
11478 PATCH_COMMAND
115- patch -p1 -i fix-casts.patch
79+ "${CMAKE_COMMAND} "
80+ -Dpackage=doxygen-patches-${patch_version}
81+ -P "${APPLY_PATCHES_SERIES} "
11682 COMMAND
117- sed -i -e "/set.ICONV_DIR/d" CMakeLists.txt
83+ sed -e "/set.YACC_FLAGS/ s/set.*/set(YACC_FLAGS -Wno-deprecated)/" -i --
84+ CMakeLists.txt
11885 COMMAND
119- sed -i -e "/bigobj/d" CMakeLists.txt
86+ sed -e "/BISON_EXECUTABLE/ s/ -o / -Wno-deprecated -o /" -i --
87+ CMakeLists.txt
12088 COMMAND
121- sed -i -e "s/mmacosx-version-min=10.5/mmacosx-version-min=10.11/" CMakeLists.txt
122-
123- SOURCE_WRITE
124- fix-casts.patch fix-casts_patch
89+ sed -e "/set.PROJECT_WARNINGS/ s/set.*/set(PROJECT_WARNINGS )/" -i --
90+ cmake/CompilerWarnings.cmake
12591
12692 USING USE_SYSTEM_DOXYGEN patch_version extra_flags
12793 BUILD_CONDITION ${test_system_doxygen}
@@ -130,6 +96,7 @@ superbuild_package(
13096 "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}"
13197 "-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} ${extra_flags}"
13298 "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} ${extra_flags}"
99+ -DCMAKE_BUILD_TYPE=Release
133100 -Denglish_only=1
134101 INSTALL_COMMAND
135102 "${CMAKE_COMMAND}" --build . --target install/strip/fast
0 commit comments