blob: 8923158233fca9ac372b767dfa1e7ed33b6c9a03 [file] [log] [blame] [edit]
# Maintainer: Bjoern Lemke <lemke@lemke-it.com>
_realname=lfcbase
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.16.0
pkgrel=1
pkgdesc="LFC C++ base classes (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url='http://www.lemke-it.com/'
license=('GPL3')
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-ncurses")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
source=("http://www.lemke-it.com/${_realname}-${pkgver}.tar.gz")
sha256sums=("9ffa9f2ba2fbd4f17234e7055eaa8ccdc771ca1c202d7407e4322fa84ea6a351")
prepare() {
# for mingw build, we have to patch the tap-driver to filter out windows carrige returns from the test program output
# yes, this is an ugly patch
cat $srcdir/${_realname}-${pkgver}/build-aux/tap-driver.sh | sed "s/LC_ALL\=C/sed \'s\/\\\\r\/\/g\'| LC_ALL=C/" > $srcdir/${_realname}-${pkgver}/build-aux/tap-driver-patch.sh
mv $srcdir/${_realname}-${pkgver}/build-aux/tap-driver-patch.sh $srcdir/${_realname}-${pkgver}/build-aux/tap-driver.sh
cd $srcdir/${_realname}-${pkgver}
}
build() {
export CXXFLAGS="-DLFCNOCURSES -DDISABLE_SYSLOG"
cd "$srcdir"/${_realname}-${pkgver}
[[ -d "${srcdir}"/build-${CARCH} ]] && rm -rf "${srcdir}"/build-${CARCH}
mkdir -p "${srcdir}"/build-${CARCH} && cd "${srcdir}"/build-${CARCH}
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${MINGW_CHOST} \
--enable-static \
--enable-shared
make
${MINGW_PREFIX}/bin/gcc -shared \
-Wl,--out-implib,liblfcbase.dll.a \
-o liblfcbase-0.dll \
${srcdir}/build-${CARCH}/src/*.o \
-lsystre -lws2_32 -lpthread -lstdc++
}
check() {
cd "${srcdir}"/build-${CARCH}
make check
}
package() {
cd "${srcdir}"/build-${CARCH}
make install DESTDIR="${pkgdir}"
mkdir -p "${pkgdir}"${MINGW_PREFIX}/{bin,lib}
install -m 0755 liblfcbase-0.dll "${pkgdir}${MINGW_PREFIX}/bin"
install -m 0644 liblfcbase.dll.a "${pkgdir}${MINGW_PREFIX}/lib"
}