# Maintainer: Alexey Pavlov # Contributor: Andrew Sun _realname=c-ares pkgbase=mingw-w64-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" pkgver=1.28.1 pkgrel=1 pkgdesc="C library that performs DNS requests and name resolves asynchronously (mingw-w64)" arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') msys2_references=( 'archlinux: c-ares' "cpe: cpe:/a:c-ares_project:c-ares" "cpe: cpe:/a:daniel_stenberg:c-ares" ) msys2_repository_url='https://github.com/c-ares/c-ares/' msys2_changelog_url='https://c-ares.org/changelog.html' msys2_documentation_url='https://c-ares.org/docs.html' msys2_issue_tracker_url='https://github.com/c-ares/c-ares/issues/' url='https://c-ares.org/' license=("spdx:MIT") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-ninja") source=(#"https://c-ares.org/download/${_realname}-${pkgver}.tar.gz"{,.asc} "https://github.com/${_realname}/${_realname}/releases/download/${_realname//-}-${pkgver//./_}/${_realname}-${pkgver}.tar.gz"{,.asc} 0002-cares-pkgconfig-fix-paths-and-flags.patch) validpgpkeys=('914C533DF9B2ADA2204F586D78E11C6B279D5C91' '27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2') # Daniel Stenberg sha256sums=('675a69fc54ddbf42e6830bc671eeb6cd89eeca43828eb413243fd2c0a760809d' 'SKIP' '86e83d0677c8b53ced256eab53aa63e6bc665f1b935b849df7352109e89a3c0e') # Helper macros to help make tasks easier # apply_patch_with_msg() { for _patch in "$@" do msg2 "Applying $_patch" patch -Nbp1 -i "${srcdir}/$_patch" done } del_file_exists() { for _fname in "$@" do if [ -f $_fname ]; then rm -rf $_fname fi done } # =========================================== # prepare() { cd "${_realname}-${pkgver}" apply_patch_with_msg \ 0002-cares-pkgconfig-fix-paths-and-flags.patch } build() { declare -a _extra_config if check_option "debug" "n"; then _extra_config+=("-DCMAKE_BUILD_TYPE=Release") else _extra_config+=("-DCMAKE_BUILD_TYPE=Debug") fi msg2 "Build shared version ..." [[ -d "${srcdir}"/build-shared-${MSYSTEM} ]] && rm -rf "${srcdir}"/build-shared-${MSYSTEM} mkdir -p "${srcdir}"/build-shared-${MSYSTEM} && cd "${srcdir}"/build-shared-${MSYSTEM} MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake.exe \ -Wno-dev \ -G"Ninja" \ -DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \ -DCMAKE_DLL_NAME_WITH_SOVERSION=ON \ ${_extra_config[@]} \ -DCARES_STATIC=OFF \ -DCARES_SHARED=ON \ ../${_realname}-${pkgver} ${MINGW_PREFIX}/bin/cmake.exe --build ./ msg2 "Build static version ..." [[ -d "${srcdir}"/build-static-${MSYSTEM} ]] && rm -rf "${srcdir}"/build-static-${MSYSTEM} mkdir -p "${srcdir}"/build-static-${MSYSTEM} && cd "${srcdir}"/build-static-${MSYSTEM} MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake.exe \ -Wno-dev \ -G"Ninja" \ -DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \ ${_extra_config[@]} \ -DCARES_STATIC=ON \ -DCARES_SHARED=OFF \ ../${_realname}-${pkgver} ${MINGW_PREFIX}/bin/cmake.exe --build ./ } package() { cd "${srcdir}"/build-static-${MSYSTEM} DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install . cd "${srcdir}"/build-shared-${MSYSTEM} DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install . install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE.md" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE.md" }