| #### |
| # Based partly on https://www.archlinux.org/packages/extra/x86_64/gnome-calculator/ |
| #### |
| # Past Maintainer: Andrea Zagli <andrea.zagli.free@gmail.com> |
| # Contributor: Tim Stahlhut <stahta01@gmail.com> |
| |
| _realname=gnome-calculator |
| pkgbase=mingw-w64-${_realname} |
| pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" |
| pkgver=3.38.1 |
| pkgrel=2 |
| arch=('any') |
| mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64') |
| pkgdesc="GNOME desktop calculator (mingw-w64)" |
| options=(strip staticlibs) |
| depends=("${MINGW_PACKAGE_PREFIX}-glib2" |
| "${MINGW_PACKAGE_PREFIX}-gtk3" |
| "${MINGW_PACKAGE_PREFIX}-gtksourceview4" |
| "${MINGW_PACKAGE_PREFIX}-gsettings-desktop-schemas" |
| "${MINGW_PACKAGE_PREFIX}-libsoup" |
| "${MINGW_PACKAGE_PREFIX}-mpfr") |
| makedepends=("${MINGW_PACKAGE_PREFIX}-pkg-config" |
| "${MINGW_PACKAGE_PREFIX}-vala" |
| "${MINGW_PACKAGE_PREFIX}-gobject-introspection" |
| "${MINGW_PACKAGE_PREFIX}-cmake" |
| "${MINGW_PACKAGE_PREFIX}-appstream-glib" |
| "${MINGW_PACKAGE_PREFIX}-libgee" # Not sure if it is only needed during make |
| "${MINGW_PACKAGE_PREFIX}-gmp" |
| "${MINGW_PACKAGE_PREFIX}-yelp-tools" # Used in package step |
| "${MINGW_PACKAGE_PREFIX}-meson" |
| "${MINGW_PACKAGE_PREFIX}-ninja") |
| license=("GPL 3") |
| url="https://wiki.gnome.org/Apps/Calculator" |
| install=${_realname}-${CARCH}.install |
| source=(https://download.gnome.org/sources/${_realname}/${pkgver%.*}/${_realname}-${pkgver}.tar.xz |
| 001-win.patch |
| ) |
| sha256sums=('7cffffd07f7a463d65d30a3d67e1cf774a76cfe1f80194aae7168d21687b5249' |
| '72c5b1975665df6b16eceb319a24d253382fc41331a9939f06241656e26260e5') |
| |
| # 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 "${srcdir}"/${_realname}-${pkgver} |
| del_file_exists "${srcdir}/${_realname}-${pkgver}/lib/windows.c" |
| apply_patch_with_msg 001-win.patch |
| } |
| |
| build() { |
| [[ -d build-${MINGW_CHOST} ]] && rm -rf build-${MINGW_CHOST} |
| mkdir -p build-${MINGW_CHOST} |
| cd build-${MINGW_CHOST} |
| |
| MSYS2_ARG_CONV_EXCL="--prefix=" \ |
| ${MINGW_PREFIX}/bin/meson \ |
| --prefix="${MINGW_PREFIX}" \ |
| --buildtype plain \ |
| ../${_realname}-${pkgver} |
| |
| # Both mpc and mpfr needs the gmp library or linker error happens. |
| sed -e 's|"-lmpc" "-lmpfr"|"-lmpc" "-lmpfr" "-lgmp"|g' -e 's|-lmpc -lmpfr|-lmpc -lmpfr -lgmp|g' -i build.ninja |
| |
| ninja |
| } |
| |
| check() { |
| cd "${srcdir}/build-${MINGW_CHOST}" |
| ${MINGW_PREFIX}/bin/meson test |
| } |
| |
| package() { |
| cd "${srcdir}/build-${MINGW_CHOST}" |
| DESTDIR="${pkgdir}" ninja install |
| |
| install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING" |
| } |