blob: 07af91ebcc2eeb88af160b2bebef3cd0eb96b348 [file] [log] [blame]
# From Greblus: https://blog.greblus.net/2014/11/18/msys2mingw-w64-cython-i-ipython-notebook/
_realname=zeromq
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=4.3.4
_cppzmqver=4.7.1
pkgrel=1
pkgdesc="Fast messaging system built on sockets, C and C++ bindings. aka 0MQ, ZMQ (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url="https://www.zeromq.org/"
license=("LGPL")
depends=("${MINGW_PACKAGE_PREFIX}-libsodium")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
options=('staticlibs' 'strip')
source=("https://github.com/zeromq/libzmq/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.gz"
"zmq-${_cppzmqver}.hpp::https://raw.githubusercontent.com/zeromq/cppzmq/v${_cppzmqver}/zmq.hpp"
"zmq_addon-${_cppzmqver}.hpp::https://raw.githubusercontent.com/zeromq/cppzmq/v${_cppzmqver}/zmq_addon.hpp"
"001-testutil_different_signedness-fix.patch"
"002-unused.patch::https://patch-diff.githubusercontent.com/raw/zeromq/libzmq/pull/4181.patch")
sha256sums=('c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5'
'92b92acc0a93f9511097df20cc9ed4041bde4d0d9c6cdd6cc2ada29c84487ab8'
'705bac35610437f22243da8cf300488d1e37c0815c60f70809051a8be8d0cb4c'
'0bfdbd8caca39791c909c2cbeba5878a9c430d8a9dd1f06458f42656f593e8c6'
'035e2d7cfa8a5d5fff2d0ae9be17c58f0e4d300cc34182091fa25d2d7ac4ac57')
# Helper macros to help make tasks easier #
apply_patch_with_msg() {
for _patch in "$@"
do
msg2 "Applying ${_patch}"
patch -Nbp1 -i "${srcdir}/${_patch}"
done
}
prepare() {
cd ${_realname}-${pkgver}
apply_patch_with_msg \
001-testutil_different_signedness-fix.patch \
002-unused.patch
autoreconf -fi
}
build() {
[[ -d "${srcdir}"/build-${CARCH} ]] && rm -rf "${srcdir}"/build-${CARCH}
mkdir -p ${srcdir}/build-${CARCH}
cd ${srcdir}/build-${CARCH}
# CXXFLAGS+=" -DZMQ_HAVE_WINDOWS_TARGET_XP" - for next version
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--with-libsodium \
--enable-shared \
--enable-static
make
}
package() {
mkdir -p "${pkgdir}${MINGW_PREFIX}/bin"
mkdir -p "${pkgdir}${MINGW_PREFIX}/include"
cd "${srcdir}/build-${CARCH}"
make DESTDIR="${pkgdir}" install
install -Dm644 "${srcdir}/zmq-${_cppzmqver}.hpp" "${pkgdir}${MINGW_PREFIX}/include/zmq.hpp"
install -Dm644 "${srcdir}/zmq_addon-${_cppzmqver}.hpp" "${pkgdir}${MINGW_PREFIX}/include/zmq_addon.hpp"
# Fix .pc file
local PREFIX_WIN=$(cygpath -m ${MINGW_PREFIX})
sed -e "s|${PREFIX_WIN}|${MINGW_PREFIX}|g" -i "${pkgdir}${MINGW_PREFIX}/lib/pkgconfig/libzmq.pc"
}