From 491eb00e403f9a796bbf1b5ae5be82b623ce579d Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Sun, 16 Jan 2011 09:27:54 -0800 Subject: Setup.hs: Only make pandoc.1 if README modified, be more verbose. --- Setup.hs | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'Setup.hs') diff --git a/Setup.hs b/Setup.hs index 829115642..632d6a1d8 100644 --- a/Setup.hs +++ b/Setup.hs @@ -52,9 +52,20 @@ runTestSuite args _ pkg lbi = do makeManPages :: Args -> BuildFlags -> PackageDescription -> LocalBuildInfo -> IO () makeManPages _ flags _ bi = do let pandocPath = (buildDir bi) "pandoc" "pandoc" - makeManPage pandocPath (fromFlag $ buildVerbosity flags) "markdown2pdf.1" - let testCmd = "runghc -package-conf=dist/package.conf.inplace MakeManPage.hs" -- makes pandoc.1 from README - runCommand testCmd >>= waitForProcess >>= exitWith + let verbosity = fromFlag $ buildVerbosity flags + -- make markdown2pdf.1 from markdown2pdf.1.md + makeManPage pandocPath verbosity "markdown2pdf.1" + -- make pandoc.1 from README + let pandocpage = manDir "pandoc.1" + modifiedDeps <- modifiedDependencies pandocpage ["README"] + unless (null modifiedDeps) $ do + let cmd = "runghc -package-conf=dist/package.conf.inplace MakeManPage.hs" + ec <- runCommand cmd >>= waitForProcess + case ec of + ExitSuccess -> unless (verbosity == silent) $ + putStrLn $ "Created " ++ pandocpage + ExitFailure n -> putStrLn ("Error creating " ++ pandocpage ++ + ". Exit code = " ++ show n) >> exitWith ec manpages :: [FilePath] manpages = ["pandoc.1", "markdown2pdf.1"] -- cgit v1.2.3