packages feed

casadi-bindings-3.4.5.0: casadi-bindings.cabal

name:                casadi-bindings
version:             3.4.5.0
synopsis:            mid-level bindings to CasADi
category:            Numerical, Math
description:
    Haskell bindings to the CasADi algorithmic differentiation and optimal control library.
    VERSION POLICY VIOLATION: version number x.y.z.w corresponds to the CasADi C++ library version x.y.z; the w referse to binding changes and may be completely breaking.
    .
    This package is a mid-level interface to the autogenerated low-level bindings `casadi-bindings-core`.
    .
    The module `casadi-bindings-core` is autogenerated
    from casadi's swig interface and corresponds to the casadi C++ API
    (though some functions will be missing).
    .
    The `casadi-bindings-internal` package is handwritten and provides some casadi memory management
    wrappers, C++ standard type marsahalling, and some hand-written wrapper code.
    .
    For high-level bindings, see my <https://github.com/ghorn/dynobud dynobud> project
    .
    To install this, first install casadi using instructions from <http://www.casadi.org www.casadi.org>. MAKE SURE pkg-config CAN FIND THE CASADI INSTALLATION, AS THIS IS HOW CABAL FINDS CASADI!!
    .
    Then cabal install this package:
    .
    >> cabal update && cabal install casadi-bindings
    .
    If you are upgrading this package and see linker errors, you may need to first manually `ghc-pkg unregister casadi-bindings-internal`.
    .
    Temporary note: there is something wrong with casadi and ipopt related to http://list.coin-or.org/pipermail/ipopt/2014-April/003670.html, and https://github.com/casadi/casadi/issues/1075. Either update IPOPT or use a different linear solver than MUMPS.


homepage:            http://github.com/ghorn/casadi-bindings
license:             LGPL-3
license-file:        LICENSE
author:              Greg Horn
maintainer:          gregmainland@gmail.com
copyright:           (c) Greg Horn 2013-2018
build-type:          Simple
cabal-version:       >=1.10

extra-tmp-files:     Casadi/Callback_stub.h

library
  hs-source-dirs:      src
  exposed-modules:     Casadi.Callback
                       Casadi.DM
                       Casadi.Function
                       Casadi.GenericType
                       Casadi.Interpolant
                       Casadi.Matrix
                       Casadi.MX
                       Casadi.Overloading
                       Casadi.Slice
                       Casadi.Sparsity
                       Casadi.SX
                       Casadi.Viewable
  other-modules:       Casadi.SharedObject
  build-depends:       base >=4.6 && <5,
                       linear,
                       spatial-math >= 0.2.6.0,
                       vector,
                       containers,
                       cereal,
                       binary,
                       vector-binary-instances,
                       casadi-bindings-internal == 0.1.6.1,
                       casadi-bindings-core     == 3.4.5.0
  default-language:    Haskell2010

  C-sources:           cbits/casadi_bindings.cpp
  extra-libraries:     stdc++ casadi
  cc-options:          -Wall -Wextra -Werror -std=c++11
  ghc-prof-options:    -O2
  ghc-options:         -O2 -Wall

source-repository head
  type: git
  location: git://github.com/ghorn/casadi-bindings.git

test-suite doctests
  type:                exitcode-stdio-1.0
  main-is:             doctests.hs
  build-depends:       base >= 4 && < 5,
                       doctest >= 0.8
  default-language:    Haskell2010
  cc-options:          -std=c++11
  extra-libraries:     stdc++
  hs-source-dirs:      tests


test-suite unit-tests
  type:                exitcode-stdio-1.0
  hs-source-dirs:      tests
  main-is:             UnitTests.hs
  other-modules:       CallbackTests
                       GTypeTests
  default-language:    Haskell2010
  build-depends:       QuickCheck >= 2,
                       HUnit,
                       test-framework,
                       test-framework-hunit,
                       test-framework-quickcheck2,
                       containers,
                       vector,
                       casadi-bindings,
                       base >=4.6 && < 5
  ghc-options:         -O2