diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-01-12 19:10:40 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-01-12 19:10:40 +0000 |
commit | 4fc30e4e13ecfbe29fbef3b5caf96218eab30b68 (patch) | |
tree | 76daccda237a1d7020464e1de2c699391c86cf92 /app-text/doxygen | |
parent | 4c4e8e9bf6d1ef49be600d77fcbbd7be716aece7 (diff) |
gentoo auto-resync : 12:01:2024 - 19:10:40
Diffstat (limited to 'app-text/doxygen')
-rw-r--r-- | app-text/doxygen/Manifest | 17 | ||||
-rw-r--r-- | app-text/doxygen/doxygen-1.10.0.ebuild | 153 | ||||
-rw-r--r-- | app-text/doxygen/doxygen-1.9.6.ebuild | 139 | ||||
-rw-r--r-- | app-text/doxygen/doxygen-1.9.7-r1.ebuild | 142 | ||||
-rw-r--r-- | app-text/doxygen/doxygen-1.9.8.ebuild | 155 | ||||
-rw-r--r-- | app-text/doxygen/doxygen-9999.ebuild | 153 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.1-do_not_force_libcxx.patch | 13 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.1-ignore-bad-encoding.patch | 23 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch | 24 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.7-musl-1.2.4.patch | 26 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.8-spdlog-link.patch | 51 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch | 16 | ||||
-rw-r--r-- | app-text/doxygen/files/doxygen-1.9.8-unbundle-sqlite.patch | 119 | ||||
-rw-r--r-- | app-text/doxygen/metadata.xml | 24 |
14 files changed, 1055 insertions, 0 deletions
diff --git a/app-text/doxygen/Manifest b/app-text/doxygen/Manifest new file mode 100644 index 000000000000..0b1871ffaa24 --- /dev/null +++ b/app-text/doxygen/Manifest @@ -0,0 +1,17 @@ +AUX doxygen-1.9.1-do_not_force_libcxx.patch 670 BLAKE2B e618f7acba8e4c7910b8f56001bf17bc41da5765dab57dbc148515eb2c4cfdc341d39498095f3f0dc9cad7ab74f3a508ec0ef143ca4652faace9db1031b29bb5 SHA512 ab40fb3a85f6cfcc93056d4d7b81397077552df53de1fcf26127d982a497bb0d67ead4f213b2c7101beefe2136b367137346b034b5597b39c29699c598ac91bb +AUX doxygen-1.9.1-ignore-bad-encoding.patch 1016 BLAKE2B 453e13ba115fe7108b0f319b45ad6c3f66c937a2a133eb9c76d38455f71cbbc1ee830e5e632ce36ab2a2906a67b1c676d60c02d0696a9da75862ea4197e209b1 SHA512 71cc9c54bc40f6719c64874e2bd9355cda47c87affec7f3e551fae06cb27bd9c569bffec03d2594c2f1a0190c6975123270fb446c62d8c1fac4c2834c7adaf80 +AUX doxygen-1.9.4-link_with_pthread.patch 1116 BLAKE2B 864adde5d9c0c852dba8fdaee9021f16e7e119a660d5d8657f320686c0d86c29b5695f367c2af2846e9861bca5a70889b6dd56a9734485527ae504a134e30594 SHA512 f9a1089585f83a09b89c813f51bbb7914fb27be2b3e554148387fd322c88153c2aca1af4215d90b6f2fc9eae25814085fb468f0ef2dacfa092662a4609d52929 +AUX doxygen-1.9.7-musl-1.2.4.patch 1126 BLAKE2B 050fa56a7786c557ce03c9275e152f2b2d2285209f8ea9aed5019c96c2e545ce46208f783092addfcd8ae00b0ed257d4f588ae4036b65752087901d616cc4979 SHA512 eb89ca38cee0431528240c9b354adeef5e2c3ed89db762e7e12e12fa17ca596752b9da0cb75fb9d09dcfbecc302a7e63f811b8fb2f43baf3b4d2230f259ad96f +AUX doxygen-1.9.8-spdlog-link.patch 1571 BLAKE2B 954d701bdcbabf8b9ebb52d4be6a947189661a55cbab72b7651fb956b53778a968c6c88fb2b3967a8bfa5f0951e9fe046e69a8567938a8243558af807d657714 SHA512 7d3d4363313ace1823b4570c94fcd2f8099f6f7ec42d45f4fd341df9071fb9807e03fe5094a12c8fcf86ca8da06aa681ac0b8e1e0bec70fe2555f70cf39c5b8f +AUX doxygen-1.9.8-suppress-unused-option-libcxx.patch 828 BLAKE2B db41297d3ad3fca9dc5097871185f98c965ccda7e22f8c31e0b9a69fc83c90dfd32125371cb3e42ebb6b0867cc9746b03ef656861aea14dc8d17e1e7ea09780f SHA512 6c6599ddf35720abb3872fed3a82e8796edc4e6623f9e5b3930e600772c6346bab776074fc8edb20d6d9ac7c21d6c0cb86b12295c9b7649322b876bc6737065d +AUX doxygen-1.9.8-unbundle-sqlite.patch 4510 BLAKE2B afd24516a20c4378a611c836bc51276528a3983ef21db7a036d53e910b8627f5800b871d2cd13c14fc36e04eebee8bca31c40819c9b4051b1007a3ad799351d0 SHA512 548a3e550bc552007116a9bf500e1cf953b23488e825ac2ee55ef90ae001c189e5a85f84b9957c5670be7d83166a5e8df266c6a96f8b195199d45c264b67e846 +DIST doxygen-1.10.0.src.tar.gz 8400410 BLAKE2B dc7882dfb8b023e9250592375105cc79d4744362d96f4518b931ac264259257d27e0f2c5456580f3676bb54cc29fbc2ab3b2ffc37da6441297091c60a38dc13b SHA512 885de36fa0b4364cdd1eddd5e02517e08da7a52274c6fda2c22cbe85f0840e2ddf7358f613c018dc39b4a6dfce2ddd627e9318e73b903f954bbad1a39d03a416 +DIST doxygen-1.9.6.src.tar.gz 5293513 BLAKE2B 35d3286b47922776814bb7941c7a1cb27a5a50be35a9f231b1f072333d966630bbf0b97813f56711f71f040a0ceb87e7e1cbee04ca2aa3f035754ba844561697 SHA512 f8b0d19d33fa8a5bb92b38f1c775bd3cde7f024566cf93ed61ab0cafe86643971c04b7f2492364767b3e6ce5b518bad5e0321c82f0a72875ccf936ea7d3595b2 +DIST doxygen-1.9.7.src.tar.gz 5736446 BLAKE2B e0f6e06399a2dda7226fe8fea351a79f19bf71aee51fba0ce113c3423b85aa633ce8d98894e3e49027839c2accc18af87c7f23a1fd37c0de441de42a8a76d307 SHA512 618ff58aa6f0a2eb89f95b570995ea3ebbcda64f502cabcecd9be2967abffb56d0d6747de0c06df422705919757e6af9c6e5a56ca603b1ddf7a09a7ee79b1803 +DIST doxygen-1.9.8.src.tar.gz 8087770 BLAKE2B 9b93bd394e9fdafef1c274596f790db0956028332a945e0359b7b24440aefa5362b2126649c529e71341bba172cd1fa514455567ffffd37243a740a1ffbc1944 SHA512 edcd382538ecf0afd9d1c891afe302092cd541a30840dda6b00dc0f1d6c5b39a696ab98042c5bb4012c1c051609bfdbfa7d29e3098a72f6cb504d90097767ebb +EBUILD doxygen-1.10.0.ebuild 3582 BLAKE2B 9d8b15c8a5a132578d778de697ac449e718d0b4ba52c3967eeeca7438eefcdca39edd8962cd372a4d16d0bad94dd1549a0b99739c01a7d77c8f8d105b4f8e433 SHA512 94ca1c5bcd04dbfa68c5992b78e0faf71183f21f2592fab46e4d3fb99296579c3e6eee3fe79a9d63668fdef819d7cd1641287c4f69eb8442417fc1f1e402374a +EBUILD doxygen-1.9.6.ebuild 3250 BLAKE2B 744a5b2a9ee0badc25251ed059c376f39a3c64d328071928bb54b350851868c151039e93a04a38a7f3cbe25e13623b90bdd80df6d80e9b42c7b35f4a604aed95 SHA512 228ac41fe9bbd19d6ec295d530c757e6975336c33d0ef94e92ebf73edc29d18dd19c0aaae070229a2843198e2875f7037284a3dc92b0a99e3c4ff063f27d01f9 +EBUILD doxygen-1.9.7-r1.ebuild 3392 BLAKE2B a11afd69b702473b84b21189d043b0e77e51b88c687bd97e2f76d1634bc04e8225d4db8d8f17a09e4c6af97aa9485240a3720e648971a31d403c039eb34b7add SHA512 98613919764f43fe450b7da0047bb4db35e5ca4c0ebdb837847a57cf02d5c579a3110ece2c6852581ed1c6ec06e6bc7817d236aeb8a5c96664e70dde5dde1c21 +EBUILD doxygen-1.9.8.ebuild 3654 BLAKE2B 175a4219d8fd8b3b94fbf34e69ffad9031b3d8251334b5c6a543e1251ceec3e20052961e333a17d1281b6f482668efc2e7892ba55a2ec0de186b72620328b9b4 SHA512 2e8122bb9c1e1390cde8ef19c5090f87ef1758b6755e8086d19ce919e2cb7a4d7b7bbc1b3c0e703e4712761bc6a720918d5a9072965fc013ba07c495b037f2da +EBUILD doxygen-9999.ebuild 3582 BLAKE2B 9d8b15c8a5a132578d778de697ac449e718d0b4ba52c3967eeeca7438eefcdca39edd8962cd372a4d16d0bad94dd1549a0b99739c01a7d77c8f8d105b4f8e433 SHA512 94ca1c5bcd04dbfa68c5992b78e0faf71183f21f2592fab46e4d3fb99296579c3e6eee3fe79a9d63668fdef819d7cd1641287c4f69eb8442417fc1f1e402374a +MISC metadata.xml 1024 BLAKE2B 884363174e8a83eecb926c962185d1f1cc3263ed216b26e149035b47b424b5baf1da222805f5ed04f25b4e97f12c79cface7bd6ce59ca9d37388c696a9a13117 SHA512 12c91be3f02f1ef99db00a48f2dd252f4bab85078f308c921a1a07062d971090f8dd39480b5b72e2bb21f8e2df69bc10c7828c1c91f2f83ce64be50a233eef15 diff --git a/app-text/doxygen/doxygen-1.10.0.ebuild b/app-text/doxygen/doxygen-1.10.0.ebuild new file mode 100644 index 000000000000..1da0762f0e7d --- /dev/null +++ b/app-text/doxygen/doxygen-1.10.0.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_MAX_SLOT=17 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit cmake flag-o-matic llvm python-any-r1 + +DESCRIPTION="Documentation system for most programming languages" +HOMEPAGE="https://www.doxygen.nl/" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/doxygen/doxygen.git" +else + SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz" + SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +# GPL-2 also for bundled libmscgen +LICENSE="GPL-2" +SLOT="0" +IUSE="clang debug doc dot doxysearch gui test" +# - We need TeX for tests, bug #765472 +# - We keep the odd construct of noop USE=test because of +# the special relationship b/t RESTRICT & USE for tests. +# Also, it's a hint which avoids tests being silently skipped during arch testing. +REQUIRED_USE="test? ( doc )" +RESTRICT="!test? ( test )" + +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + ${PYTHON_DEPS} +" +RDEPEND=" + app-text/ghostscript-gpl + dev-db/sqlite:3 + dev-lang/perl + dev-libs/libfmt:= + dev-libs/spdlog:= + media-libs/libpng:= + virtual/libiconv + clang? ( + <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):= + ) + dot? ( + media-gfx/graphviz + media-libs/freetype + ) + doc? ( + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) + doxysearch? ( dev-libs/xapian:= ) + gui? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch" + "${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch" + "${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch" + + # Backports +) + +DOCS=( LANGUAGE.HOWTO README.md ) + +pkg_setup() { + use clang && llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # Call dot with -Teps instead of -Tps for EPS generation - bug #282150 + sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die + + # fix pdf doc + sed -i.orig -e "s:g_kowal:g kowal:" \ + doc/maintainers.txt || die + + if is-flagq "-O3" ; then + # TODO: Investigate this and report a bug accordingly... + ewarn "Compiling with -O3 is known to produce incorrectly" + ewarn "optimized code which breaks doxygen. Using -O2 instead." + replace-flags "-O3" "-O2" + fi +} + +src_configure() { + # Very slow to compile, bug #920092 + filter-flags -fipa-pta + # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287 + filter-lto + + local mycmakeargs=( + -Duse_libclang=$(usex clang) + # Let the user choose instead, see also bug #822615 + -Duse_libc++=OFF + -Dbuild_doc=$(usex doc) + -Dbuild_search=$(usex doxysearch) + -Dbuild_wizard=$(usex gui) + -Duse_sys_spdlog=ON + -Duse_sys_sqlite3=ON + -DBUILD_SHARED_LIBS=OFF + -DGIT_EXECUTABLE="false" + ) + + use doc && mycmakeargs+=( + -DDOC_INSTALL_DIR="share/doc/${P}" + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc; then + export VARTEXFONTS="${T}/fonts" # bug #564944 + + if ! use dot; then + sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \ + {testing/Doxyfile,doc/Doxyfile} \ + || die "disabling dot failed" + fi + + # -j1 for bug #770070 + cmake_src_compile docs -j1 + fi +} + +src_install() { + cmake_src_install + + doman doc/*.1 +} diff --git a/app-text/doxygen/doxygen-1.9.6.ebuild b/app-text/doxygen/doxygen-1.9.6.ebuild new file mode 100644 index 000000000000..12b8e39a7ff0 --- /dev/null +++ b/app-text/doxygen/doxygen-1.9.6.ebuild @@ -0,0 +1,139 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_REQ_USE="xml(+)" + +inherit cmake flag-o-matic llvm python-any-r1 +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/doxygen/doxygen.git" +else + SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz" + SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="Documentation system for most programming languages" +HOMEPAGE="https://www.doxygen.nl/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="clang debug doc dot doxysearch qt5 sqlite test" +# We need TeX for tests, bug #765472 +# We keep the odd construct of noop USE=test because of +# the special relationship b/t RESTRICT & USE for tests. Also, it's a hint +# which avoids tests being silently skipped during arch testing. +REQUIRED_USE="test? ( doc )" +RESTRICT="!test? ( test )" + +BDEPEND="app-alternatives/yacc + app-alternatives/lex + ${PYTHON_DEPS} +" +RDEPEND="app-text/ghostscript-gpl + dev-lang/perl + media-libs/libpng:0= + virtual/libiconv + clang? ( >=sys-devel/clang-10:= ) + dot? ( + media-gfx/graphviz + media-libs/freetype + ) + doc? ( + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) + doxysearch? ( dev-libs/xapian:= ) + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch" + "${FILESDIR}/${PN}-1.9.1-ignore-bad-encoding.patch" + "${FILESDIR}/${PN}-1.9.1-do_not_force_libcxx.patch" +) + +DOCS=( LANGUAGE.HOWTO README.md ) + +pkg_setup() { + use clang && llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # Call dot with -Teps instead of -Tps for EPS generation - bug #282150 + sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die + + # fix pdf doc + sed -i.orig -e "s:g_kowal:g kowal:" \ + doc/maintainers.txt || die + + if is-flagq "-O3" ; then + ewarn + ewarn "Compiling with -O3 is known to produce incorrectly" + ewarn "optimized code which breaks doxygen." + ewarn + elog + elog "Continuing with -O2 instead ..." + elog + replace-flags "-O3" "-O2" + fi +} + +src_configure() { + # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287 + filter-lto + + local mycmakeargs=( + -Duse_libclang=$(usex clang) + -Dbuild_doc=$(usex doc) + -Dbuild_search=$(usex doxysearch) + -Dbuild_wizard=$(usex qt5) + -Duse_sqlite3=$(usex sqlite) + -DGIT_EXECUTABLE="false" + ) + + use doc && mycmakeargs+=( + -DDOC_INSTALL_DIR="share/doc/${P}" + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc; then + export VARTEXFONTS="${T}/fonts" # bug #564944 + + if ! use dot; then + sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \ + {testing/Doxyfile,doc/Doxyfile} \ + || die "disabling dot failed" + fi + + # -j1 for bug #770070 + cmake_src_compile docs -j1 + fi +} + +src_install() { + cmake_src_install + + doman doc/*.1 +} diff --git a/app-text/doxygen/doxygen-1.9.7-r1.ebuild b/app-text/doxygen/doxygen-1.9.7-r1.ebuild new file mode 100644 index 000000000000..5c412c4fe5be --- /dev/null +++ b/app-text/doxygen/doxygen-1.9.7-r1.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit cmake flag-o-matic llvm python-any-r1 +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/doxygen/doxygen.git" +else + SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz" + SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="Documentation system for most programming languages" +HOMEPAGE="https://www.doxygen.nl/" + +# GPL-2 also for bundled libmscgen, MIT for bundled spdlog +LICENSE="GPL-2 MIT" +SLOT="0" +IUSE="clang debug doc dot doxysearch qt5 sqlite test" +# We need TeX for tests, bug #765472 +# We keep the odd construct of noop USE=test because of +# the special relationship b/t RESTRICT & USE for tests. Also, it's a hint +# which avoids tests being silently skipped during arch testing. +REQUIRED_USE="test? ( doc )" +RESTRICT="!test? ( test )" + +BDEPEND="app-alternatives/yacc + app-alternatives/lex + ${PYTHON_DEPS} +" +RDEPEND="app-text/ghostscript-gpl + dev-lang/perl + media-libs/libpng:0= + virtual/libiconv + clang? ( >=sys-devel/clang-10:= ) + dot? ( + media-gfx/graphviz + media-libs/freetype + ) + doc? ( + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) + doxysearch? ( dev-libs/xapian:= ) + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch" + "${FILESDIR}/${PN}-1.9.1-ignore-bad-encoding.patch" + "${FILESDIR}/${PN}-1.9.1-do_not_force_libcxx.patch" + "${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch" +) + +DOCS=( LANGUAGE.HOWTO README.md ) + +pkg_setup() { + use clang && llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # Call dot with -Teps instead of -Tps for EPS generation - bug #282150 + sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die + + # fix pdf doc + sed -i.orig -e "s:g_kowal:g kowal:" \ + doc/maintainers.txt || die + + if is-flagq "-O3" ; then + ewarn + ewarn "Compiling with -O3 is known to produce incorrectly" + ewarn "optimized code which breaks doxygen." + ewarn + elog + elog "Continuing with -O2 instead ..." + elog + replace-flags "-O3" "-O2" + fi +} + +src_configure() { + # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287 + filter-lto + + local mycmakeargs=( + -Duse_libclang=$(usex clang) + -Dbuild_doc=$(usex doc) + -Dbuild_search=$(usex doxysearch) + -Dbuild_wizard=$(usex qt5) + -Duse_sqlite3=$(usex sqlite) + -DBUILD_SHARED_LIBS=OFF + -DGIT_EXECUTABLE="false" + ) + + use doc && mycmakeargs+=( + -DDOC_INSTALL_DIR="share/doc/${P}" + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc; then + export VARTEXFONTS="${T}/fonts" # bug #564944 + + if ! use dot; then + sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \ + {testing/Doxyfile,doc/Doxyfile} \ + || die "disabling dot failed" + fi + + # -j1 for bug #770070 + cmake_src_compile docs -j1 + fi +} + +src_install() { + cmake_src_install + + doman doc/*.1 +} diff --git a/app-text/doxygen/doxygen-1.9.8.ebuild b/app-text/doxygen/doxygen-1.9.8.ebuild new file mode 100644 index 000000000000..10a904280416 --- /dev/null +++ b/app-text/doxygen/doxygen-1.9.8.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_MAX_SLOT=17 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit cmake flag-o-matic llvm python-any-r1 + +DESCRIPTION="Documentation system for most programming languages" +HOMEPAGE="https://www.doxygen.nl/" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/doxygen/doxygen.git" +else + SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz" + SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +# GPL-2 also for bundled libmscgen +LICENSE="GPL-2" +SLOT="0" +IUSE="clang debug doc dot doxysearch gui test" +# - We need TeX for tests, bug #765472 +# - We keep the odd construct of noop USE=test because of +# the special relationship b/t RESTRICT & USE for tests. +# Also, it's a hint which avoids tests being silently skipped during arch testing. +REQUIRED_USE="test? ( doc )" +RESTRICT="!test? ( test )" + +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + ${PYTHON_DEPS} +" +RDEPEND=" + app-text/ghostscript-gpl + dev-db/sqlite:3 + dev-lang/perl + dev-libs/libfmt:= + dev-libs/spdlog:= + media-libs/libpng:= + virtual/libiconv + clang? ( + <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):= + ) + dot? ( + media-gfx/graphviz + media-libs/freetype + ) + doc? ( + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) + doxysearch? ( dev-libs/xapian:= ) + gui? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch" + "${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch" + "${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch" + + # Backports + "${FILESDIR}/${P}-spdlog-link.patch" + "${FILESDIR}/${P}-unbundle-sqlite.patch" +) + +DOCS=( LANGUAGE.HOWTO README.md ) + +pkg_setup() { + use clang && llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # Call dot with -Teps instead of -Tps for EPS generation - bug #282150 + sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die + + # fix pdf doc + sed -i.orig -e "s:g_kowal:g kowal:" \ + doc/maintainers.txt || die + + if is-flagq "-O3" ; then + # TODO: Investigate this and report a bug accordingly... + ewarn "Compiling with -O3 is known to produce incorrectly" + ewarn "optimized code which breaks doxygen. Using -O2 instead." + replace-flags "-O3" "-O2" + fi +} + +src_configure() { + # Very slow to compile, bug #920092 + filter-flags -fipa-pta + # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287 + filter-lto + + local mycmakeargs=( + -Duse_libclang=$(usex clang) + # Let the user choose instead, see also bug #822615 + -Duse_libc++=OFF + -Dbuild_doc=$(usex doc) + -Dbuild_search=$(usex doxysearch) + -Dbuild_wizard=$(usex gui) + -Duse_sys_spdlog=ON + -Duse_sys_sqlite3=ON + -DBUILD_SHARED_LIBS=OFF + -DGIT_EXECUTABLE="false" + ) + + use doc && mycmakeargs+=( + -DDOC_INSTALL_DIR="share/doc/${P}" + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc; then + export VARTEXFONTS="${T}/fonts" # bug #564944 + + if ! use dot; then + sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \ + {testing/Doxyfile,doc/Doxyfile} \ + || die "disabling dot failed" + fi + + # -j1 for bug #770070 + cmake_src_compile docs -j1 + fi +} + +src_install() { + cmake_src_install + + doman doc/*.1 +} diff --git a/app-text/doxygen/doxygen-9999.ebuild b/app-text/doxygen/doxygen-9999.ebuild new file mode 100644 index 000000000000..1da0762f0e7d --- /dev/null +++ b/app-text/doxygen/doxygen-9999.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_MAX_SLOT=17 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" + +inherit cmake flag-o-matic llvm python-any-r1 + +DESCRIPTION="Documentation system for most programming languages" +HOMEPAGE="https://www.doxygen.nl/" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/doxygen/doxygen.git" +else + SRC_URI="https://doxygen.nl/files/${P}.src.tar.gz" + SRC_URI+=" mirror://sourceforge/doxygen/rel-${PV}/${P}.src.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi + +# GPL-2 also for bundled libmscgen +LICENSE="GPL-2" +SLOT="0" +IUSE="clang debug doc dot doxysearch gui test" +# - We need TeX for tests, bug #765472 +# - We keep the odd construct of noop USE=test because of +# the special relationship b/t RESTRICT & USE for tests. +# Also, it's a hint which avoids tests being silently skipped during arch testing. +REQUIRED_USE="test? ( doc )" +RESTRICT="!test? ( test )" + +BDEPEND=" + app-alternatives/yacc + app-alternatives/lex + ${PYTHON_DEPS} +" +RDEPEND=" + app-text/ghostscript-gpl + dev-db/sqlite:3 + dev-lang/perl + dev-libs/libfmt:= + dev-libs/spdlog:= + media-libs/libpng:= + virtual/libiconv + clang? ( + <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):= + ) + dot? ( + media-gfx/graphviz + media-libs/freetype + ) + doc? ( + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + dev-texlive/texlive-plaingeneric + ) + doxysearch? ( dev-libs/xapian:= ) + gui? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-1.9.4-link_with_pthread.patch" + "${FILESDIR}/${PN}-1.9.7-musl-1.2.4.patch" + "${FILESDIR}/${PN}-1.9.8-suppress-unused-option-libcxx.patch" + + # Backports +) + +DOCS=( LANGUAGE.HOWTO README.md ) + +pkg_setup() { + use clang && llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + + # Call dot with -Teps instead of -Tps for EPS generation - bug #282150 + sed -i -e '/addJob("ps"/ s/"ps"/"eps"/g' src/dot.cpp || die + + # fix pdf doc + sed -i.orig -e "s:g_kowal:g kowal:" \ + doc/maintainers.txt || die + + if is-flagq "-O3" ; then + # TODO: Investigate this and report a bug accordingly... + ewarn "Compiling with -O3 is known to produce incorrectly" + ewarn "optimized code which breaks doxygen. Using -O2 instead." + replace-flags "-O3" "-O2" + fi +} + +src_configure() { + # Very slow to compile, bug #920092 + filter-flags -fipa-pta + # -Wodr warnings, see bug #854357 and https://github.com/doxygen/doxygen/issues/9287 + filter-lto + + local mycmakeargs=( + -Duse_libclang=$(usex clang) + # Let the user choose instead, see also bug #822615 + -Duse_libc++=OFF + -Dbuild_doc=$(usex doc) + -Dbuild_search=$(usex doxysearch) + -Dbuild_wizard=$(usex gui) + -Duse_sys_spdlog=ON + -Duse_sys_sqlite3=ON + -DBUILD_SHARED_LIBS=OFF + -DGIT_EXECUTABLE="false" + ) + + use doc && mycmakeargs+=( + -DDOC_INSTALL_DIR="share/doc/${P}" + ) + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use doc; then + export VARTEXFONTS="${T}/fonts" # bug #564944 + + if ! use dot; then + sed -i -e "s/HAVE_DOT = YES/HAVE_DOT = NO/" \ + {testing/Doxyfile,doc/Doxyfile} \ + || die "disabling dot failed" + fi + + # -j1 for bug #770070 + cmake_src_compile docs -j1 + fi +} + +src_install() { + cmake_src_install + + doman doc/*.1 +} diff --git a/app-text/doxygen/files/doxygen-1.9.1-do_not_force_libcxx.patch b/app-text/doxygen/files/doxygen-1.9.1-do_not_force_libcxx.patch new file mode 100644 index 000000000000..f33f619e62ed --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.1-do_not_force_libcxx.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3775ed1..b3a1af6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -23,7 +23,7 @@ option(build_doc "Build user manual (HTML and PDF)" OFF) + option(build_doc_chm "Build user manual (CHM)" OFF) + option(use_sqlite3 "Add support for sqlite3 output [experimental]." OFF) + if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") +- option(use_libc++ "Use libc++ as C++ standard library." ON) ++ option(use_libc++ "Use libc++ as C++ standard library." OFF) + endif() + option(use_libclang "Add support for libclang parsing." OFF) + option(static_libclang "Link to a statically compiled version of LLVM/libclang." OFF) diff --git a/app-text/doxygen/files/doxygen-1.9.1-ignore-bad-encoding.patch b/app-text/doxygen/files/doxygen-1.9.1-ignore-bad-encoding.patch new file mode 100644 index 000000000000..5dd7578f24ec --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.1-ignore-bad-encoding.patch @@ -0,0 +1,23 @@ +Hack to avoid "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 45: invalid start byte" +in src/._xmlgen.cpp which is binary. This doesn't seem like it should be present at the time the docs +are generated, but this is simpler for now. +--- a/doc/translator.py ++++ b/doc/translator.py +@@ -1454,10 +1454,13 @@ class TrManager: + + # Read content of the file as one string.
+ assert os.path.isfile(fname)
+- f = xopen(fname)
+- cont = f.read()
+- cont = ''.join(cont.split('\n')) # otherwise the 'match' function won't work.
+- f.close()
++ try:
++ with xopen(fname) as f:
++ cont = f.read()
++ cont = ''.join(cont.split('\n')) # otherwise the 'match' function won't work.
++ except UnicodeDecodeError:
++ print("Skipping {0} because of decoding errors".format(fname))
++ return
+
+ # Remove the items for identifiers that were found in the file.
+ while lst_in:
diff --git a/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch b/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch new file mode 100644 index 000000000000..66093eb7deb9 --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.4-link_with_pthread.patch @@ -0,0 +1,24 @@ +diff --git a/addon/doxywizard/.CMakeLists.txt.swp b/addon/doxywizard/.CMakeLists.txt.swp +deleted file mode 100644 +index fc379d2..0000000 +Binary files a/addon/doxywizard/.CMakeLists.txt.swp and /dev/null differ +diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt +index bb0e0eb..b6135bd 100644 +--- a/addon/doxywizard/CMakeLists.txt ++++ b/addon/doxywizard/CMakeLists.txt +@@ -132,12 +132,12 @@ apply_editbin(doxywizard windows) + endif() + + if(Qt5Core_FOUND) +- target_link_libraries(doxywizard Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml doxygen_version) ++ target_link_libraries(doxywizard Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml doxygen_version pthread) + else() + if(Qt6Core_FOUND) +- target_link_libraries(doxywizard Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Xml doxygen_version) ++ target_link_libraries(doxywizard Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Xml doxygen_version pthread) + else() +- target_link_libraries(doxywizard ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY} doxygen_version) ++ target_link_libraries(doxywizard ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY} doxygen_version pthread) + endif() + endif() + diff --git a/app-text/doxygen/files/doxygen-1.9.7-musl-1.2.4.patch b/app-text/doxygen/files/doxygen-1.9.7-musl-1.2.4.patch new file mode 100644 index 000000000000..2c71a0af9ae8 --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.7-musl-1.2.4.patch @@ -0,0 +1,26 @@ +https://bugs.gentoo.org/906920 +https://gitlab.exherbo.org/exherbo/arbor/-/commit/7b517ba0068adc471fe7b2ed8cfbb191a197ca17 + +From 6d713aa98b36ee8219294515142c0225fbd09dfc Mon Sep 17 00:00:00 2001 +From: Heiko Becker <heirecka@exherbo.org> +Date: Thu, 25 May 2023 10:52:29 +0200 +Subject: [PATCH] Apply upstream fix for spdlog + +Fixes the build with musl >= 1.2.4, see +https://github.com/gabime/spdlog/commit/287a00d364990edbb621fe5e392aeb550135fb96 +for details. +--- a/deps/spdlog/include/spdlog/details/os-inl.h ++++ b/deps/spdlog/include/spdlog/details/os-inl.h +@@ -236,8 +236,8 @@ SPDLOG_INLINE size_t filesize(FILE *f) + # else + int fd = ::fileno(f); + # endif +-// 64 bits(but not in osx or cygwin, where fstat64 is deprecated) +-# if (defined(__linux__) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64)) ++// 64 bits(but not in osx, linux/musl or cygwin, where fstat64 is deprecated) ++# if ((defined(__linux__) && defined(__GLIBC__)) || defined(__sun) || defined(_AIX)) && (defined(__LP64__) || defined(_LP64)) + struct stat64 st; + if (::fstat64(fd, &st) == 0) + { +-- +2.41.0.rc2 diff --git a/app-text/doxygen/files/doxygen-1.9.8-spdlog-link.patch b/app-text/doxygen/files/doxygen-1.9.8-spdlog-link.patch new file mode 100644 index 000000000000..e73385dec3b2 --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.8-spdlog-link.patch @@ -0,0 +1,51 @@ +https://github.com/doxygen/doxygen/issues/10265 +https://github.com/doxygen/doxygen/pull/10284 + +From 70bb112352ae7f3130647dcc009d8de5d4134e6d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?= + =?UTF-8?q?=20=28Mehdi=20Chinoune=29?= <mehdi.chinoune@hotmail.com> +Date: Mon, 4 Sep 2023 18:49:27 +0100 +Subject: [PATCH 1/2] doxyapp: Fix linking to spdlog + +--- + addon/doxyapp/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/addon/doxyapp/CMakeLists.txt b/addon/doxyapp/CMakeLists.txt +index 4f3c31feacd..6097a3cca69 100644 +--- a/addon/doxyapp/CMakeLists.txt ++++ b/addon/doxyapp/CMakeLists.txt +@@ -46,7 +46,7 @@ mscgen + doxygen_version + doxycfg + vhdlparser +-spdlog ++spdlog::spdlog + ${ICONV_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ${SQLITE3_LIBRARIES} + +From 71f2ed171a6d14a67f1905802714add974c31789 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?= + =?UTF-8?q?=20=28Mehdi=20Chinoune=29?= <mehdi.chinoune@hotmail.com> +Date: Mon, 4 Sep 2023 18:50:25 +0100 +Subject: [PATCH 2/2] doxyparse: Fix linking to spdlog + +--- + addon/doxyparse/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/addon/doxyparse/CMakeLists.txt b/addon/doxyparse/CMakeLists.txt +index 24881e3ef12..0157afb45e2 100644 +--- a/addon/doxyparse/CMakeLists.txt ++++ b/addon/doxyparse/CMakeLists.txt +@@ -35,7 +35,7 @@ mscgen + doxygen_version + doxycfg + vhdlparser +-spdlog ++spdlog::spdlog + ${ICONV_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ${SQLITE3_LIBRARIES} + diff --git a/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch b/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch new file mode 100644 index 000000000000..1da9a2da6459 --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.8-suppress-unused-option-libcxx.patch @@ -0,0 +1,16 @@ +Always expose the use_libc++ option. It's only useful for Clang but cmake.class +tries to find when we've used CMake options which are unused/unknown and this +triggers it for GCC builds if we set -Duse_libc++=OFF. + +So, always expose the option so we can turn it off without a warning. +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,7 +21,7 @@ option(build_xmlparser "Automatically update the XML parser modules when updatin + option(build_search "Build external search tools (doxysearch and doxyindexer)" OFF) + option(build_doc "Build user manual (HTML and PDF)" OFF) + option(build_doc_chm "Build user manual (CHM)" OFF) +-if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") ++if (TRUE) + option(use_libc++ "Use libc++ as C++ standard library." ON) + endif() + option(use_libclang "Add support for libclang parsing." OFF) diff --git a/app-text/doxygen/files/doxygen-1.9.8-unbundle-sqlite.patch b/app-text/doxygen/files/doxygen-1.9.8-unbundle-sqlite.patch new file mode 100644 index 000000000000..04d1d69b7b86 --- /dev/null +++ b/app-text/doxygen/files/doxygen-1.9.8-unbundle-sqlite.patch @@ -0,0 +1,119 @@ +https://github.com/doxygen/doxygen/issues/10263 +https://github.com/doxygen/doxygen/commit/28609fecd41d885e54fa170e499a0e5b55def2c2 + +From 28609fecd41d885e54fa170e499a0e5b55def2c2 Mon Sep 17 00:00:00 2001 +From: Dimitri van Heesch <doxygen@gmail.com> +Date: Mon, 28 Aug 2023 20:19:16 +0200 +Subject: [PATCH] issue #10263 please add a use_sys_sqlite3 config option + +--- + CMakeLists.txt | 6 +++++- + cmake/FindSQLite3.cmake | 38 ++++++++++++++++++++++++++++++++++++++ + deps/CMakeLists.txt | 4 +++- + src/CMakeLists.txt | 4 +++- + 4 files changed, 49 insertions(+), 3 deletions(-) + create mode 100644 cmake/FindSQLite3.cmake + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4957c34c24d..31e53cc8440 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -25,7 +25,8 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + option(use_libc++ "Use libc++ as C++ standard library." ON) + endif() + option(use_libclang "Add support for libclang parsing." OFF) +-option(use_sys_spdlog "Use system spdlog instead of bundled." OFF) ++option(use_sys_spdlog "Use system spdlog library instead of the one bundled." OFF) ++option(use_sys_sqlite3 "Use system sqlite3 library instead of the one bundled." OFF) + option(static_libclang "Link to a statically compiled version of LLVM/libclang." OFF) + option(win_static "Link with /MT in stead of /MD on windows" OFF) + option(enable_console "Enable that executables on Windows get the CONSOLE bit set for the doxywizard executable [development]" OFF) +@@ -67,6 +68,9 @@ endif() + if (use_sys_spdlog) + find_package(spdlog CONFIG REQUIRED) + endif() ++if (use_sys_sqlite3) ++ find_package(SQLite3 REQUIRED) ++endif() + if (build_wizard) + if (force_qt STREQUAL "Qt6") + if (CMAKE_SYSTEM MATCHES "Darwin") +diff --git a/cmake/FindSQLite3.cmake b/cmake/FindSQLite3.cmake +new file mode 100644 +index 00000000000..7c21de223a7 +--- /dev/null ++++ b/cmake/FindSQLite3.cmake +@@ -0,0 +1,38 @@ ++# Copyright (C) 2007-2009 LuaDist. ++# Created by Peter Kapec <kapecp@gmail.com> ++# Redistribution and use of this file is allowed according to the terms of the MIT license. ++# For details see the COPYRIGHT file distributed with LuaDist. ++# Note: ++# Searching headers and libraries is very simple and is NOT as powerful as scripts ++# distributed with CMake, because LuaDist defines directories to search for. ++# Everyone is encouraged to contact the author with improvements. Maybe this file ++# becomes part of CMake distribution sometimes. ++ ++# - Find sqlite3 ++# Find the native SQLite3 headers and libraries. ++# ++# SQLite3_INCLUDE_DIRS - where to find sqlite3.h, etc. ++# SQLite3_LIBRARIES - List of libraries when using sqlite. ++# SQLite3_FOUND - True if sqlite found. ++ ++# Look for the header file. ++FIND_PATH(SQLite3_INCLUDE_DIR NAMES sqlite3.h) ++ ++# Look for the library. ++FIND_LIBRARY(SQLite3_LIBRARY NAMES sqlite3) ++ ++# Handle the QUIETLY and REQUIRED arguments and set SQLITE3_FOUND to TRUE if all listed variables are TRUE. ++INCLUDE(FindPackageHandleStandardArgs) ++FIND_PACKAGE_HANDLE_STANDARD_ARGS(SQLite3 DEFAULT_MSG SQLite3_LIBRARY SQLite3_INCLUDE_DIR) ++ ++# Copy the results to the output variables. ++IF(SQLite3_FOUND) ++ SET(SQLite3_LIBRARIES ${SQLite3_LIBRARY}) ++ SET(SQLite3_INCLUDE_DIRS ${SQLite3_INCLUDE_DIR}) ++ELSE(SQLite3_FOUND) ++ SET(SQLite3_LIBRARIES) ++ SET(SQLite3_INCLUDE_DIRS) ++ENDIF(SQLite3_FOUND) ++ ++MARK_AS_ADVANCED(SQLite3_INCLUDE_DIRS SQLite3_LIBRARIES) ++ +diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt +index a689b4a7018..eb716417f22 100644 +--- a/deps/CMakeLists.txt ++++ b/deps/CMakeLists.txt +@@ -4,4 +4,6 @@ add_subdirectory(libmscgen) + if (NOT use_sys_spdlog) + add_subdirectory(spdlog) + endif() +-add_subdirectory(sqlite3) ++if (NOT use_sys_sqlite3) ++ add_subdirectory(sqlite3) ++endif() +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 78a55c3f2bf..02c52240e5b 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -6,7 +6,6 @@ include_directories( + ${PROJECT_SOURCE_DIR}/deps/libmd5 + ${PROJECT_SOURCE_DIR}/deps/liblodepng + ${PROJECT_SOURCE_DIR}/deps/libmscgen +- ${PROJECT_SOURCE_DIR}/deps/sqlite3 + ${PROJECT_SOURCE_DIR}/libversion + ${PROJECT_SOURCE_DIR}/libxml + ${PROJECT_SOURCE_DIR}/vhdlparser +@@ -18,6 +17,9 @@ include_directories( + if (NOT use_sys_spdlog) + include_directories(${PROJECT_SOURCE_DIR}/deps/spdlog/include) + endif() ++if (NOT use_sys_sqlite) ++ include_directories(${PROJECT_SOURCE_DIR}/deps/sqlite3) ++endif() + + + file(MAKE_DIRECTORY ${GENERATED_SRC}) + diff --git a/app-text/doxygen/metadata.xml b/app-text/doxygen/metadata.xml new file mode 100644 index 000000000000..1a7e4e52585a --- /dev/null +++ b/app-text/doxygen/metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>tamiko@gentoo.org</email> + <name>Matthias Maier</name> + </maintainer> + <longdescription> + Doxygen is a tool for analyzing, documenting, and reverse-engineering + source code of various languages using a variety of output formats + (try it and see). Doxygen supports C++, C, Java, Objective-C, Python, + IDL (Corba and Microsoft flavors) and to some extent PHP, C#, and D, + as well as other languages (using additional helper tools). + </longdescription> + <upstream> + <remote-id type="github">doxygen/doxygen</remote-id> + <remote-id type="sourceforge">doxygen</remote-id> + </upstream> + <use> + <flag name="clang">support for <pkg>sys-devel/clang</pkg> assisted parsing</flag> + <flag name="dot">allow to create dot graphs using <pkg>media-gfx/graphviz</pkg></flag> + <flag name="doxysearch">build doxyindexer and doxysearch.cgi</flag> + </use> +</pkgmetadata> |