2022-08-23 04:45:08 +03:00
|
|
|
distributable:
|
2023-04-10 05:00:03 +03:00
|
|
|
#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:
|
2024-02-24 23:17:17 +03:00
|
|
|
haskell.org: '>=8.6.5'
|
2022-08-23 04:45:08 +03:00
|
|
|
haskell.org/cabal: ^3
|
2023-04-10 05:00:03 +03:00
|
|
|
crates.io/semverator: ^0
|
|
|
|
working-directory: pandoc-cli
|
2023-10-28 09:14:01 +03:00
|
|
|
script:
|
2024-02-24 23:17:17 +03:00
|
|
|
# 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-04-10 05:00:03 +03:00
|
|
|
|
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
|
2023-02-14 06:08:18 +03:00
|
|
|
- --jobs={{hw.concurrency}}
|
2023-04-10 05:00:03 +03:00
|
|
|
# https://pandoc.org/installing.html#creating-a-relocatable-binary
|
|
|
|
- -fembed_data_files
|
2023-02-14 06:08:18 +03:00
|
|
|
linux:
|
|
|
|
ARGS:
|
|
|
|
# else segfaults
|
|
|
|
- --enable-relocatable
|
2023-08-24 08:48:07 +03:00
|
|
|
- --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!
|