Skip to content

Commit ea498db

Browse files
committed
[build] patches folder doesn't have to exist
1 parent 0df2f10 commit ea498db

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

app/Foliage/CmdBuild.hs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ module Foliage.CmdBuild (cmdBuild) where
66
import Codec.Archive.Tar qualified as Tar
77
import Codec.Archive.Tar.Entry qualified as Tar
88
import Codec.Compression.GZip qualified as GZip
9-
import Control.Monad (unless)
9+
import Control.Monad (unless, when)
1010
import Data.ByteString.Lazy qualified as BSL
1111
import Data.Foldable (for_)
1212
import Data.List (isPrefixOf, sortOn)
@@ -348,12 +348,15 @@ cmdBuild
348348
withTempDir $ \tmpDir -> do
349349
putInfo $ " Creating source distribution for " <> pkgIdToString pkgId
350350

351-
patches <- getDirectoryFiles (inputDir </> pkgName </> pkgVersion </> "patches") ["*.patch"]
351+
let patchesDir = inputDir </> pkgName </> pkgVersion </> "patches"
352+
hasPatches <- doesDirectoryExist patchesDir
352353

353-
for_ patches $ \patch -> do
354-
let patchfile = inputDir </> pkgName </> pkgVersion </> "patches" </> patch
355-
putInfo $ "Applying patch: " <> patch
356-
cmd_ Shell (Cwd srcDir) (FileStdin patchfile) "patch --backup -p1"
354+
when hasPatches $ do
355+
patches <- getDirectoryFiles (inputDir </> pkgName </> pkgVersion </> "patches") ["*.patch"]
356+
for_ patches $ \patch -> do
357+
let patchfile = inputDir </> pkgName </> pkgVersion </> "patches" </> patch
358+
putInfo $ "Applying patch: " <> patch
359+
cmd_ Shell (Cwd srcDir) (FileStdin patchfile) "patch --backup -p1"
357360

358361
cmd_ Shell (Cwd srcDir) (FileStdout path) ("cabal sdist --ignore-project --output-directory " <> tmpDir)
359362

0 commit comments

Comments
 (0)