blob: 9cd46f1b3b20e2510fb55c95975ea86c19888320 [file] [log] [blame]
# Maintainer: Konstantin Podsvirov <konstantin@podsvirov.pro>
_realname=pelican
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=4.2.0
pkgrel=1
pkgdesc='A tool to generate a static blog, with restructured text (or markdown) input files (mingw-w64)'
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url='https://getpelican.com/'
license=('AGPL3')
depends=("${MINGW_PACKAGE_PREFIX}-python"
"${MINGW_PACKAGE_PREFIX}-python-jinja"
"${MINGW_PACKAGE_PREFIX}-python-pygments"
"${MINGW_PACKAGE_PREFIX}-python-feedgenerator"
"${MINGW_PACKAGE_PREFIX}-python-pytz"
"${MINGW_PACKAGE_PREFIX}-python-docutils"
"${MINGW_PACKAGE_PREFIX}-python-blinker"
"${MINGW_PACKAGE_PREFIX}-python-unidecode"
"${MINGW_PACKAGE_PREFIX}-python-six"
"${MINGW_PACKAGE_PREFIX}-python-dateutil")
makedepends=("${MINGW_PACKAGE_PREFIX}-python-setuptools"
"${MINGW_PACKAGE_PREFIX}-python-sphinx"
"${MINGW_PACKAGE_PREFIX}-python-sphinx_rtd_theme")
checkdepends=("${MINGW_PACKAGE_PREFIX}-python-nose")
optdepends=("${MINGW_PACKAGE_PREFIX}-python-markdown: Markdown support"
"${MINGW_PACKAGE_PREFIX}-asciidoc: AsciiDoc support"
"${MINGW_PACKAGE_PREFIX}-python-beautifulsoup4: importing from wordpress/dotclear/posterous"
#"${MINGW_PACKAGE_PREFIX}-python-feedparser: importing from feeds"
"${MINGW_PACKAGE_PREFIX}-python-rst2pdf: PDF generation"
"openssh: uploading through SSH"
"rsync: uploading through rsync+SSH"
"lftp: uploading through FTP"
#"s3cmd: uploading through S3"
#"${MINGW_PACKAGE_PREFIX}-python-ghp-import: uploading through gh-pages"
#"${MINGW_PACKAGE_PREFIX}-python-typogrify: typographical enhancements"
#"${MINGW_PACKAGE_PREFIX}-pandoc: for pelican-import auto convert"
#"${MINGW_PACKAGE_PREFIX}-python-mdx-video: easier embedding of youtube videos in markdown"
)
source=("pelican-${pkgver}.tar.gz"::"https://github.com/getpelican/pelican/archive/${pkgver}.tar.gz")
install=${_realname}-${CARCH}.install
sha256sums=('4b0d4c9439217b49ace89f4f8b52c90e13fa283a786d7b12e2020a11f32f9a33')
prepare() {
cd "${srcdir}"
rm -rf "python-build-${CARCH}" | true
cp -r "pelican-${pkgver}" "python-build-${CARCH}"
}
build() {
msg "Python build for ${CARCH}"
cd "${srcdir}/python-build-${CARCH}"
${MINGW_PREFIX}/bin/python setup.py build
msg "Building documentation"
cd "${srcdir}/python-build-${CARCH}/docs"
PYTHONPATH="${srcdir}/python-build-${CARCH}/build/lib" \
make man html
}
check() {
cd "${srcdir}/python-build-${CARCH}"
PYTHONPATH="${srcdir}/python-build-${CARCH}/build/lib" \
${MINGW_PREFIX}/bin/nosetests
}
package() {
cd "${srcdir}/python-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python setup.py install --prefix=${MINGW_PREFIX} --root="${pkgdir}" -O1 --skip-build
# fix python command in files
local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
for _ff in "${pkgdir}${MINGW_PREFIX}/bin/*.py"; do
sed -e "s|${PREFIX_WIN}|${MINGW_PREFIX}|g" -i ${_ff}
done
# documentation
local _docdir="${srcdir}/python-build-${CARCH}/docs/_build"
mkdir -p "${pkgdir}${MINGW_PREFIX}/share/man/man1"
for _ff in "${_docdir}/man/*.1"
do
cp ${_ff} "${pkgdir}${MINGW_PREFIX}/share/man/man1/"
done
mkdir -p "${pkgdir}${MINGW_PREFIX}/share/doc"
cp -r "${_docdir}/html/" "${pkgdir}${MINGW_PREFIX}/share/doc/${_realname}"
# license
install -Dm644 LICENSE "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}
# vim: ts=2 sw=2 et: