I've uploaded Takusen-0.8.5 to hackage, and it's visible at
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Takusen
but "cabal install Takusen" still tries to get 0.8.4. Is there a
separate database/file for cabal install which is rebuilt
periodically, and it so, how often? i.e. how long is the delay between
upload and being able to test cabal-install?
Thanks,
Alistair
#551: cabal-install config file lacking
---------------------------------+------------------------------------------
Reporter: guest | Owner:
Type: defect | Status: new
Priority: high | Milestone: cabal-install-0.6
Component: cabal-install tool | Version: 1.6.0.1
Severity: normal | Keywords:
Difficulty: unknown | Ghcversion:
Platform: Mac OS |
---------------------------------+------------------------------------------
1. cabal-install can't work without a remote package server address.[[BR]]
2. this server should be specified in the ~/.cabal/config file.[[BR]]
3. cabal-install 0.6.2 does not provide such a file.[[BR]]
4. instructions on cabal-install page say that this file will be
downloaded through a "cabal update" command.[[BR]]
5. however as no server is provided, "cabal update" can't download
anything...[[BR]]
6. Goto step 2...[[BR]]
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/551>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects
#504: executables with a C main function
------------------------------+---------------------------------------------
Reporter: duncan | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone:
Component: Cabal library | Version: 1.6.0.1
Severity: normal | Keywords:
Difficulty: easy (<4 hours) | Ghcversion:
Platform: |
------------------------------+---------------------------------------------
We would like to be able to do:
{{{
executable blah
main-is: main.c
}}}
Either for pure C programs or mixed C/Haskell programs with main in the C
code rather than Haskell code.
== Workaround ==
Until this is implemented one can use a main in Haskell that calls out to
the C main function. For example:
`main.c`
{{{
int real_main () {
return 42;
}
}}}
`Main.hs`
{{{
import System.Exit
import Foreign.C
main = real_main >>= exitWith . ExitFailure . fromIntegral
foreign import ccall "real_main" real_main :: IO CInt
}}}
`c-main.cabal`
{{{
name: c-main
version: 0.0
build-type: Simple
cabal-version: >= 1.2
extra-source-files: main.h
executable c-main
main-is: Main.hs
c-sources: main.c
includes: main.h
extensions: ForeignFunctionInterface
build-depends: base
}}}
== Implementation notes ==
At the moment Cabal's "Simple" build system requires `main-is` to specify
a `.hs` or `.lhs` file (though it does allow that to be generated by a
pre-processor). If we lift that restriction the first thing to go wrong
will be that `ghc --make` does not work with `-no-hs-main`. We will have
to do the build and link steps separately (which is probably a good thing
anyway). We would use `ghc --make` to compile all Haskell modules to `.o`
files and then invoke `ghc` in batch mode passing it all the `.o` files
(from Haskell and C modules) and `-package` flags. If we're using a C main
then we'd do the link step with `-no-hs-main`.
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/504>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects