packages feed

hashtables-1.4.2: test/hashtables-test.cabal

Name:                hashtables-test
Version:             0.2
Author:              Gregory Collins
Maintainer:          greg@gregorycollins.net
Copyright:           (c) 2011-2013, Google, Inc.
Category:            Data
Build-type:          Simple
Cabal-version:       >= 1.10

------------------------------------------------------------------------------
Flag debug
  Description: if on, spew debugging output to stdout
  Default: False


Flag unsafe-tricks
  Description: turn on unsafe GHC tricks
  Default:   False


Flag bounds-checking
  Description: if on, use bounds-checking array accesses
  Default: False

Flag sse42
  Description: if on, use SSE 4.2 extensions to search cache lines very
               efficiently. The portable flag forces this off.
  Default: False

Flag portable
  Description: if on, use only pure Haskell code and no GHC extensions.
  Default: False


Executable compute-overhead
  hs-source-dirs:    ../src suite compute-overhead
  main-is:           ComputeOverhead.hs

  if flag(sse42) && !flag(portable)
    cc-options:  -DUSE_SSE_4_2 -msse4.2
    cpp-options: -DUSE_SSE_4_2
    C-sources:   ../cbits/sse-42.c

  if !flag(portable) && !flag(sse42)
    C-sources:       ../cbits/default.c

  if !flag(portable)
    C-sources:       ../cbits/common.c

  ghc-prof-options:  -prof -auto-all

  if flag(portable)
    cpp-options: -DNO_C_SEARCH -DPORTABLE

  if !flag(portable) && flag(unsafe-tricks) && impl(ghc)
    cpp-options: -DUNSAFETRICKS
    build-depends: ghc-prim

  if flag(debug)
    cpp-options: -DDEBUG

  if flag(bounds-checking)
    cpp-options: -DBOUNDS_CHECKING

  Build-depends:     base                       >= 4       && <5,
                     hashable >= 1.1 && <1.2 || >= 1.2.1 && <1.3,
                     mwc-random                 >= 0.8     && <0.14,
                     QuickCheck                 >= 2.9     && <3,
                     HUnit                      >= 1.2     && <2,
                     test-framework             >= 0.3.1   && <0.9,
                     test-framework-quickcheck2 >= 0.2.6   && <0.4,
                     test-framework-hunit       >= 0.2.6   && <3,
                     statistics                 >= 0.14    && <0.15,
                     primitive,
                     vector                     >= 0.7

  if impl(ghc >= 7)
    ghc-options: -rtsopts

  if impl(ghc >= 6.12.0)
    ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
                 -fno-warn-unused-do-bind -threaded
  else
    ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2 -threaded