# Maintainer: Alexey Pavlov _realname=doxygen pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") pkgver=1.10.0 pkgrel=3 pkgdesc="A documentation system for C++, C, Java, IDL and PHP (mingw-w64)" arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') url="https://www.doxygen.nl/" msys2_repository_url="https://github.com/doxygen/doxygen" msys2_references=( 'archlinux: doxygen' "cpe: cpe:/a:doxygen:doxygen" ) license=('spdx:GPL-2.0-only') depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" "${MINGW_PACKAGE_PREFIX}-clang-libs" "${MINGW_PACKAGE_PREFIX}-fmt" "${MINGW_PACKAGE_PREFIX}-libiconv" "${MINGW_PACKAGE_PREFIX}-sqlite3" "${MINGW_PACKAGE_PREFIX}-xapian-core") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-ninja" "${MINGW_PACKAGE_PREFIX}-pkgconf" "${MINGW_PACKAGE_PREFIX}-clang-tools-extra" "${MINGW_PACKAGE_PREFIX}-python" "${MINGW_PACKAGE_PREFIX}-spdlog" $([[ ${CARCH} == i686 ]] || echo "${MINGW_PACKAGE_PREFIX}-qt6-base")) if [[ ${CARCH} != i686 ]]; then optdepends=("${MINGW_PACKAGE_PREFIX}-qt6-base: for doxywizard") fi source=(https://github.com/doxygen/doxygen/archive/Release_${pkgver//./_}/${_realname}-${pkgver}.tar.gz cmake-mingw.patch) sha256sums=('795692a53136ca9bb9a6cd72656968af7858a78be7d6d011e12ab1dce6b9533c' '7a74cdd4cfaba3f5521b5179a91eec4ad96c1da89534576be356238809df4aa6') apply_patch_with_msg() { for _patch in "$@" do msg2 "Applying $_patch" patch -Nbp1 -i "${srcdir}/$_patch" done } prepare() { cd "${srcdir}/${_realname}-Release_${pkgver//./_}" apply_patch_with_msg \ cmake-mingw.patch } build() { mkdir -p build-${MSYSTEM} && cd build-${MSYSTEM} declare -a _extra_config if check_option "debug" "n"; then _extra_config+=("-DCMAKE_BUILD_TYPE=Release") else _extra_config+=("-DCMAKE_BUILD_TYPE=Debug") fi if [[ ${CARCH} != i686 ]]; then _extra_config+=("-Dbuild_wizard=ON") fi if [[ "${MSYSTEM}" == "CLANG32" ]]; then # https://github.com/msys2/MINGW-packages/issues/11787 _extra_config+=("-DCMAKE_CXX_FLAGS_RELEASE=-O1 -DNDEBUG") _extra_config+=("-DDCMAKE_C_FLAGS_RELEASE=-O1 -DNDEBUG") fi MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake -Wno-dev \ -G"Ninja" \ "${_extra_config[@]}" \ -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ -DCMAKE_INSTALL_LIBDIR=lib \ -DCMAKE_INSTALL_BINDIR=bin \ -Dbuild_parse=ON \ -Dbuild_xmlparser=ON \ -Dbuild_search=ON \ -Duse_sys_spdlog=ON \ -Duse_libclang=ON \ -Duse_sys_sqlite3=ON \ -DPython_EXECUTABLE=${MINGW_PREFIX}/bin/python \ ../${_realname}-Release_${pkgver//./_} ${MINGW_PREFIX}/bin/cmake --build . } package() { cd "${srcdir}"/build-${MSYSTEM} DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install . install -Dm644 "${srcdir}"/${_realname}-Release_${pkgver//./_}/LICENSE "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE }