@@ -6,7 +6,7 @@ module Foliage.CmdBuild (cmdBuild) where
66import Codec.Archive.Tar qualified as Tar
77import Codec.Archive.Tar.Entry qualified as Tar
88import Codec.Compression.GZip qualified as GZip
9- import Control.Monad (unless )
9+ import Control.Monad (unless , when )
1010import Data.ByteString.Lazy qualified as BSL
1111import Data.Foldable (for_ )
1212import 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