diff --git a/mingw-w64-creduce-git/PKGBUILD b/mingw-w64-creduce-git/PKGBUILD new file mode 100644 index 0000000000..779b235048 --- /dev/null +++ b/mingw-w64-creduce-git/PKGBUILD @@ -0,0 +1,64 @@ +# Maintainer: Ray Donnelly + +_realname=creduce +pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}-git") +provides=("${MINGW_PACKAGE_PREFIX}-${_realname}") +conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}") +pkgver=creduce.2.3.0.14.g49782e7 +pkgrel=1 +pkgdesc="A C program reducer (mingw-w64)" +depends=('delta' + 'perl-Benchmark-Timer' + 'perl-Exporter-Lite' + 'perl-File-Which' + 'perl-Getopt-Tabular' + 'perl-Regexp-Common' + 'perl-Sys-CPU' + "${MINGW_PACKAGE_PREFIX}-astyle" + "${MINGW_PACKAGE_PREFIX}-indent") +arch=('any') +url='https://github.com/csmith-project/creduce' +license=('custom:University of Illinois/NCSA Open Source License') +makedepends=("git" "flex" "${MINGW_PACKAGE_PREFIX}-clang") +source=(${_realname}::git+https://github.com/csmith-project/creduce.git + "llvm-config-cygpath") +sha256sums=('SKIP' + '03a7239d1e26d8a5dd5f405e10826679725cae6c01a9c37e80c6f1c184dad0a9') + +pkgver() { + cd "${srcdir}/${_realname}" + git describe --always | sed 's|-|.|g' +} + +prepare() { + cd "${srcdir}" + [[ -d tools ]] && rm -rf tools + mkdir tools + cp -f "${srcdir}"/llvm-config-cygpath tools/llvm-config +} + +build() { + cd "${srcdir}" + [ -d ${CARCH} ] && rm -rf ${CARCH} + mkdir ${CARCH} + cd ${CARCH} + PATH="${srcdir}/tools:$PATH" \ + ../${_realname}/configure \ + --prefix=${MINGW_PREFIX} \ + --build=${MINGW_CHOST} \ + --host=${MINGW_CHOST} + + make +} + +package() { + cd "${srcdir}/${CARCH}" + make DESTDIR="${pkgdir}" install + install -Dm644 "../${_realname}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING" + + # Point creduce perl script: + # lib $FindBin::Bin, '${MINGW_PREFIX}/share/creduce/perl'; + # .. to msys2 perl. + sed "s|${MINGW_PREFIX}|/usr|g" \ + -i ${pkgdir}${MINGW_PREFIX}/bin/creduce +} diff --git a/mingw-w64-creduce-git/llvm-config-cygpath b/mingw-w64-creduce-git/llvm-config-cygpath new file mode 100644 index 0000000000..427bcc178e --- /dev/null +++ b/mingw-w64-creduce-git/llvm-config-cygpath @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +# Translates output from MSYS2/MinGW-w64 llvm-config.exe to MSYS2 form. +# It may make sense to include this as part of the llvm packages? + +MINGW_PREFIX_M=$(cygpath -m $(dirname $(dirname $(which llvm-config)))) +# echo "input $*" >> /tmp/llvm-config.log +# echo "output " $(llvm-config.exe $*) | tr '\\' '/' | sed "s|${MINGW_PREFIX_M}|$(cygpath -u ${MINGW_PREFIX_M})|g" >> /tmp/llvm-config.log +echo $(llvm-config.exe $*) | tr '\\' '/' | sed "s|${MINGW_PREFIX_M}|$(cygpath -u ${MINGW_PREFIX_M})|g"