Re: [Haskell-cafe] Cabal Configurations - Beta-Testers Wanted
Hi Pepe, I partially fixed it. A full fix would require a feature that is not yet implemented. I'll take a look at it later today. The problem was, that shim has no library section, but my compatibility translator created an incomplete one, just to carry the dependencies. The right solution would be to add them to each executable, but there they won't be check yet for them, yet. So, your Cabal file is now internally translated to: Name: shim Version: 0.1 License: BSD3 License-file: LICENSE Copyright: (c) 2006 Benedikt Schmidt Maintainer: Benedikt Schmidt <beschmi@cloaked.de> Library { -- library section is only there to contain the dependencies -- It is therefore marked as not buildable Buildable: False Build-Depends: unix, ghc, haskell98, base, parsec, network, Cabal<1.1.7, mtl, filepath } Executable shim { Main-is: Main.hs Ghc-Options: -O0 } Executable shim-udproxy { Main-is: Shim/Udproxy.hs Ghc-Options: -O0 -main-is Shim.Udproxy.main } Please, update cabal+configs.
configure: Reading installed packages... Configuring shim-0.1... Setup.lhs: Error: Non-empty library, but empty exposed modules list. Cabal may not build this library correctly
If this is a bug, let me know as soon as it's fixed. I want to use the os() predicate in the shim descriptor, is that already working?
This should work: Name: shim Version: 0.1 License: BSD3 License-file: LICENSE Copyright: (c) 2006 Benedikt Schmidt Maintainer: Benedikt Schmidt <beschmi@cloaked.de> Library { Buildable: False if os(mingw32) { Build-depends: ghc, haskell98, base, parsec, network, Cabal<1.1.7, mtl, filepath } else { Build-Depends: unix, ghc, haskell98, base, parsec, network, Cabal<1.1.7, mtl, filepath } } Executable shim { Main-is: Main.hs Ghc-Options: -O0 } Executable shim-udproxy { Main-is: Shim/Udproxy.hs Ghc-Options: -O0 -main-is Shim.Udproxy.main } BTW, the os() test should test for the value returned by System.Info.os . / Thomas
participants (1)
-
Thomas Schilling