packages feed

hamid-0.9: hamid.cabal

name:               hamid
version:            0.9
cabal-version:      >= 1.6
synopsis:           Binding to the OS level Midi services (fork of system-midi).

description:        Cross-platform binding to Midi libraries. 
                    Supports OS X and Windows (limited testing).
                    
                    The API use the same represeentation as Codec.Midi so system
                    and file I/O have the same interface.

                    This package was based on the system-midi package.

license:            BSD3
license-file:       LICENSE
author:             Balazs Komuves, Hans Hoglund
copyright:          (c) 2008-2012 Balazs Komuves, Hans Hoglund
maintainer:         Hans Hoglund <hans@hanshoglund.se>
stability:          Stable
category:           Sound, System
build-type:         Simple

extra-source-files: examples/monitor.hs, 
                    examples/chords.hs, 
                    examples/playmidi.hs,
                    examples/SMF.hs, 
                    examples/GM.hs

source-repository head
  type:             git
  location:         git://github.com/hanshoglund/hamid.git
  
library
    build-depends:
        base        >= 4     && < 5,
        HCodecs     >= 0.2.2 && < 1,
        newtype     >= 0.2   && < 1
    hs-source-dirs: src
    exposed-modules:
        System.Midi
    other-modules:
        System.Midi.Base
    extensions:
        ForeignFunctionInterface,
        CPP,
        TypeSynonymInstances,
        FlexibleInstances,
        EmptyDataDecls

    if os(darwin)
        other-modules:
            System.MacOSX.CoreFoundation,
            System.MacOSX.CoreAudio,
            System.MacOSX.CoreMidi
            System.Midi.MacOSX
        frameworks:
            CoreFoundation,
            CoreAudio,
            CoreMidi

    if os(windows)
        build-depends:
            Win32
        other-modules:
            System.Win32.Midi
            System.Midi.Win32
        extra-libraries:
            winmm

    if !os(darwin) && !os(windows)
        other-modules:
            System.Midi.Placeholder