pantry/projects/pandoc.org/package.yml

74 lines
1.9 KiB
YAML
Raw Normal View History

2022-08-23 04:45:08 +03:00
distributable:
#FIXME: pandoc and pandoc-cli have been split :/
# url: https://hackage.haskell.org/package/pandoc-cli{{ version }}/pandoc-cli-{{ version }}.tar.gz
url: https://github.com/jgm/pandoc/archive/refs/tags/{{ version }}.tar.gz
2022-08-23 04:45:08 +03:00
strip-components: 1
#FIXME pandoc has 4 digit versions : /
# so we miss a whole bunch
versions:
github: jgm/pandoc
strip: /^pandoc /
provides:
- bin/pandoc
dependencies:
gnu.org/gmp: 6
zlib.net: 1
2022-12-02 02:19:23 +03:00
sourceware.org/libffi: 3
2022-08-23 04:45:08 +03:00
build:
dependencies:
haskell.org: '>=8.6.5'
2022-08-23 04:45:08 +03:00
haskell.org/cabal: ^3
crates.io/semverator: ^0
working-directory: pandoc-cli
2023-10-28 09:14:01 +03:00
script:
# FIXME: these are seriously hacky; we need to understand how to tweak ghc's `settings`
# file better
# it really wants ld.bfd or ld.gold, but those both bring in a host of compiler matching
# issues, so we'll just do a trick
- run: |
mkdir .fakebin
cat $PROP > .fakebin/ld.bfd
cat $PROP > .fakebin/ld.gold
chmod +x .fakebin/*
export PATH=$PWD/.fakebin:$PATH
prop: |
#!/bin/sh
ld.lld "$@"
if: linux
2023-10-28 09:14:01 +03:00
# pandoc 2.x - no pandoc-cli subdirectory
- run: cd ..
if: <3
2023-10-28 09:14:01 +03:00
- cabal update
- mkdir -p {{prefix}}/bin
# digest versions above 0.0.1.4 have RPATH issues for us.
- run: |
sed -i.bak -e's/text$/text, digest <0.0.1.4/' pandoc-cli.cabal
rm pandoc-cli.cabal.bak
- cabal v2-install $ARGS
2022-08-23 04:45:08 +03:00
env:
ARGS:
- --install-method=copy
- --installdir={{prefix}}/bin
- --jobs={{hw.concurrency}}
# https://pandoc.org/installing.html#creating-a-relocatable-binary
- -fembed_data_files
linux:
ARGS:
# else segfaults
- --enable-relocatable
- --ghc-option=-fPIC
- --ghc-option=-optl=-pie
2022-08-23 04:45:08 +03:00
test:
fixture: |
# tea
brew2 for you
2023-10-28 09:14:01 +03:00
script: pandoc -f markdown -t html5 $FIXTURE
2022-08-23 04:45:08 +03:00
#TODO check output is HTML!