# Maintainer: Biswapriyo Nath _realname=android-tools pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") pkgver=35.0.2 _tag=${pkgver} pkgrel=7 pkgdesc='Android platform tools (mingw-w64)' arch=('any') mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64') url='http://tools.android.com/' license=('spdx:Apache-2.0') depends=("${MINGW_PACKAGE_PREFIX}-brotli" "${MINGW_PACKAGE_PREFIX}-fmt" "${MINGW_PACKAGE_PREFIX}-lz4" "${MINGW_PACKAGE_PREFIX}-pcre2" "${MINGW_PACKAGE_PREFIX}-protobuf" "${MINGW_PACKAGE_PREFIX}-zstd") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-go" "${MINGW_PACKAGE_PREFIX}-gtest" "${MINGW_PACKAGE_PREFIX}-nasm" "${MINGW_PACKAGE_PREFIX}-ninja") source=("https://github.com/nmeum/android-tools/releases/download/${_tag}/${_realname}-${_tag}.tar.xz" "https://github.com/msys2/adbwinapi/releases/download/${pkgver}/adbwinapi.zip" "https://github.com/msys2/adbwinapi/releases/download/${pkgver}/adbwinapi_sources.zip" "AdbWinApi.def" "0001-android-tools-cmake.patch" "0002-android-tools-vendor.patch" "0003-fix-building-with-gcc-mingw.patch" "0004-leave-wstat-as-is.patch") noextract=("${_realname}-${_tag}.tar.xz") sha256sums=('d2c3222280315f36d8bfa5c02d7632b47e365bfe2e77e99a3564fb6576f04097' 'a7bdcc611b29e2ccea87a39ea86e451839bb18631376bde0e3e72d1cab499a51' 'd504ae37cd1519311ef29e90fcb5216df3db82e72fda0edacce72489273807a3' 'e6fc31c148e120fc69be53e0464434c492ab0eaa0dbc8f18dd3c19eb2dd2577b' '89e43362c47586418d886809564e0a20f98c8b0c817d48151fc32d3515153984' 'cb82aacba65f581c74e2c50097731e997aa741af9b281628b2940172e6d315d1' '528e7a2dbf366832d6ae339e013de7c311efb7fa9139ce3478bc18fe29b0542d' '4c670ab8a96da18f26741bad300a8c218ac50cfa96efb713d36a6883d774c300') # Helper macros to help make tasks easier # apply_patch_with_msg() { for _patch in "$@" do msg2 "Applying ${_patch}" patch -p1 -i "${srcdir}/${_patch}" done } prepare() { tar -xf "${_realname}-${_tag}.tar.xz" || true cd "${srcdir}/${_realname}-${_tag}" cp "${srcdir}"/AdbWinApi.def ./vendor/ cp -r "${srcdir}"/development ./vendor/ apply_patch_with_msg \ 0001-android-tools-cmake.patch \ 0002-android-tools-vendor.patch \ 0003-fix-building-with-gcc-mingw.patch \ 0004-leave-wstat-as-is.patch } build() { mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/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 MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ "${MINGW_PREFIX}"/bin/cmake.exe \ -GNinja \ -DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \ "${_extra_config[@]}" \ -DANDROID_TOOLS_USE_BUNDLED_FMT=OFF \ -DANDROID_TOOLS_USE_BUNDLED_LIBUSB=ON \ ../${_realname}-${_tag} "${MINGW_PREFIX}"/bin/cmake.exe --build . } package() { cd "${srcdir}/build-${MSYSTEM}" DESTDIR="${pkgdir}" "${MINGW_PREFIX}"/bin/cmake.exe --install . install -Dm644 "${srcdir}/${_realname}-${_tag}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE" if [ "${MSYSTEM}" = "CLANGARM64" ]; then cp -r "${srcdir}/arm64"/*.dll "${pkgdir}${MINGW_PREFIX}/bin" elif [ "${CARCH}" = "x86_64" ]; then cp -r "${srcdir}/x64"/*.dll "${pkgdir}${MINGW_PREFIX}/bin" else cp -r "${srcdir}/win32"/*.dll "${pkgdir}${MINGW_PREFIX}/bin" fi }