[commit: ghc] wip/nfs-locking: Split libgmp.a (d3d5b11)

git at git.haskell.org git at git.haskell.org
Fri Oct 27 00:22:24 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/nfs-locking
Link       : http://ghc.haskell.org/trac/ghc/changeset/d3d5b11ab21eaee5e7dcdca007acc05131d512be/ghc

>---------------------------------------------------------------

commit d3d5b11ab21eaee5e7dcdca007acc05131d512be
Author: Moritz Angermann <moritz.angermann at gmail.com>
Date:   Sun Jan 3 23:01:17 2016 +0800

    Split libgmp.a
    
    Fixes the issue mentioned in #83
    ```
    * utils/hpc/stage1/build/tmp/hpc-bin
    * libraries/integer-gmp/stage1/build/libHSinteger-gmp-1.0.0.0.a
    * getDirectoryFiles  [libraries/integer-gmp/gmp/objs/*.o]
    libraries/integer-gmp/gmp/objs: getDirectoryContents: does not exist (No such file or directory)
    ```


>---------------------------------------------------------------

d3d5b11ab21eaee5e7dcdca007acc05131d512be
 src/Rules/IntegerGmp.hs | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/Rules/IntegerGmp.hs b/src/Rules/IntegerGmp.hs
index 443b912..1f50dc0 100644
--- a/src/Rules/IntegerGmp.hs
+++ b/src/Rules/IntegerGmp.hs
@@ -53,6 +53,7 @@ integerGmpRules = do
 
         -- remove the old build folder, if it exists.
         liftIO $ removeFiles integerGmpBuild ["//*"]
+        liftIO $ removeFiles (integerGmpBase -/- "objs") ["//*"]
 
         -- unpack the gmp tarball.
         -- Note: We use a tarball like gmp-4.2.4-nodoc.tar.bz2, which is
@@ -102,10 +103,13 @@ integerGmpRules = do
             copyFileChanged (integerGmpBuild -/- file) file'
             putBuild $ "| Copy " ++ file ++ " -> " ++ file'
 
-        -- TODO: do we need these as well?
-        -- mkdir integerGmpBase -/- objs
-        -- unit $ cmd Shell [Cwd integerGmpBase -/- "objs"] "$AR_STAGE1 x ../libgmp.a"
-        -- $RANLIB_CMD integerGmpBase -/- "libgmp.a"
+        ar  <- builderPath Ar
+        ran <- builderPath Ranlib
+        -- unpack libgmp.a
+        putBuild "| Unpacking libgmp.a..."
+        unit $ cmd Shell [Cwd integerGmpBase] "mkdir -p objs"
+        unit $ cmd Shell [Cwd (integerGmpBase -/- "objs")] [ar] " x ../libgmp.a"
+        unit $ cmd Shell [Cwd integerGmpBase] [ran] " libgmp.a"
 
         putSuccess "| Successfully build custom library 'integer-gmp'"
 



More information about the ghc-commits mailing list