aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--INSTALL2
-rw-r--r--Makefile12
-rw-r--r--Setup.hs17
-rwxr-xr-xmake_deb.sh3
-rwxr-xr-xmake_osx_package.sh3
-rw-r--r--pandoc.cabal2
6 files changed, 23 insertions, 16 deletions
diff --git a/INSTALL b/INSTALL
index c3c18b154..88d962a85 100644
--- a/INSTALL
+++ b/INSTALL
@@ -77,7 +77,7 @@ Quick install
To build the `pandoc.1` man page:
- make man/man1/pandoc.1
+ pandoc --print-default-data-file pandoc.1 > pandoc.1
To build the `pandoc-citeproc` man pages, go to the pandoc-citeproc
build directory, and
diff --git a/Makefile b/Makefile
index 265786a6c..46c2be669 100644
--- a/Makefile
+++ b/Makefile
@@ -40,21 +40,11 @@ debpkg:
osxpkg:
./make_osx_package.sh
-man/man1/pandoc.1: README man/pandoc.1.template
- @[ -n "$(pandoc)" ] || \
- (echo "Could not find pandoc in dist/" && exit 1)
- $(pandoc) $< -t man -s --template man/pandoc.1.template \
- --filter man/capitalizeHeaders.hs \
- --filter man/removeNotes.hs \
- --filter man/removeLinks.hs \
- -o $@
-
download_stats:
curl https://api.github.com/repos/jgm/pandoc/releases | \
jq '[.[] | .assets | .[] | {name: .name, download_count: .download_count}]'
clean:
cabal clean
- -rm man/man1/pandoc.1
-.PHONY: deps quick full install man clean test bench haddock osxpkg dist bindist prof download_stats
+.PHONY: deps quick full install clean test bench osxpkg dist prof download_stats
diff --git a/Setup.hs b/Setup.hs
index 6db3b1aec..03e3248ef 100644
--- a/Setup.hs
+++ b/Setup.hs
@@ -31,6 +31,8 @@ main :: IO ()
main = defaultMainWithHooks $ simpleUserHooks {
-- enable hsb2hs preprocessor for .hsb files
hookedPreProcessors = [ppBlobSuffixHandler]
+ , postBuild = \args bf pkgdescr lbi ->
+ makeManPages args bf pkgdescr lbi
}
ppBlobSuffixHandler :: PPSuffixHandler
@@ -45,3 +47,18 @@ ppBlobSuffixHandler = ("hsb", \_ _ ->
Nothing -> error "hsb2hs is needed to build this program: cabal install hsb2hs"
return ()
})
+
+makeManPages :: Args -> BuildFlags -> PackageDescription -> LocalBuildInfo
+ -> IO ()
+makeManPages _ bf _ LocalBuildInfo{buildDir=buildDir}
+ = do info verbosity "Creating data/pandoc.1"
+ rawSystemExit verbosity progPath args
+ where verbosity = fromFlagOrDefault normal $ buildVerbosity bf
+ progPath = buildDir </> "pandoc" </> "pandoc"
+ args = ["README", "-t", "man", "-s",
+ "--template", "man/pandoc.1.template",
+ "--filter", "man/capitalizeHeaders.hs",
+ "--filter", "man/removeNotes.hs",
+ "--filter", "man/removeLinks.hs",
+ "-o", "data/pandoc.1"]
+
diff --git a/make_deb.sh b/make_deb.sh
index ebe82b01f..b61a43d32 100755
--- a/make_deb.sh
+++ b/make_deb.sh
@@ -30,7 +30,6 @@ echo Building pandoc...
cabal clean
cabal install --force --reinstall --flags="embed_data_files make-pandoc-man-pages" . pandoc-citeproc
-make -B man/man1/pandoc.1
# get pandoc-citeproc man page:
PANDOC_CITEPROC_PATH=`cabal unpack -d make_binary_package.tmp.$$ pandoc-citeproc | awk '{print $3;}'`
strip $SANDBOX/bin/pandoc
@@ -43,7 +42,7 @@ mkdir -p $DEST/share/doc/pandoc-citeproc
find $DIST -type d | xargs chmod 755
cp $SANDBOX/bin/pandoc $DEST/bin/
cp $SANDBOX/bin/pandoc-citeproc $DEST/bin/
-cp man/man1/pandoc.1 $DEST/share/man/man1/pandoc.1
+$SANDBOX/bin/pandoc --print-default-data-file pandoc.1 > $DEST/share/man/man1/pandoc.1
gzip -9 $DEST/share/man/man1/pandoc.1
cp $PANDOC_CITEPROC_PATH/man/man1/pandoc-citeproc.1 $DEST/share/man/man1/
gzip -9 $DEST/share/man/man1/pandoc-citeproc.1
diff --git a/make_osx_package.sh b/make_osx_package.sh
index da069565f..32314f967 100755
--- a/make_osx_package.sh
+++ b/make_osx_package.sh
@@ -27,7 +27,6 @@ cabal clean
cabal install cpphs hsb2hs
cabal install --ghc-options="-optl-mmacosx-version-min=10.6" --reinstall --flags="embed_data_files make-pandoc-man-pages" --ghc-options "-pgmP$CPPHS -optP--cpp" . pandoc-citeproc
-make -B man/man1/pandoc.1
# get pandoc-citeproc man page:
PANDOC_CITEPROC_PATH=`cabal unpack -d $DIST pandoc-citeproc | awk '{print $3;}'`
@@ -38,7 +37,7 @@ for f in pandoc pandoc-citeproc; do
cp $SANDBOX/bin/$f $DEST/bin/;
done
cp $PANDOC_CITEPROC_PATH/man/man1/pandoc-citeproc.1 $DEST/share/man/man1/
-cp man/man1/pandoc.1 $DEST/share/man/man1/pandoc.1
+$SANDBOX/bin/pandoc --print-default-data-file pandoc.1 > $DEST/share/man/man1/pandoc.1
chown -R $ME:staff $DIST
diff --git a/pandoc.cabal b/pandoc.cabal
index f7f743072..8d69358fb 100644
--- a/pandoc.cabal
+++ b/pandoc.cabal
@@ -106,6 +106,8 @@ Data-Files:
data/sample.lua
-- documentation
README, COPYRIGHT
+ -- man page (generated by Setup.hs after build:)
+ data/pandoc.1
Extra-Source-Files:
-- documentation
INSTALL, BUGS, CONTRIBUTING.md, changelog