packages feed

libremidi-0.1.1: libremidi.cabal

cabal-version: 2.2

-- This file has been generated from package.yaml by hpack version 0.37.0.
--
-- see: https://github.com/sol/hpack

name:           libremidi
version:        0.1.1
synopsis:       libremidi bindings for haskell
description:    Please see the README on GitHub at <https://github.com/ejconlon/libremidi-haskell#readme>
homepage:       https://github.com/ejconlon/libremidi-haskell#readme
bug-reports:    https://github.com/ejconlon/libremidi-haskell/issues
author:         Eric Conlon
maintainer:     ejconlon@gmail.com
copyright:      (c) 2024 Eric Conlon
license:        BSD-3-Clause
build-type:     Simple
tested-with:
    GHC == 9.8.4

source-repository head
  type: git
  location: https://github.com/ejconlon/libremidi-haskell

library
  exposed-modules:
      Libremidi.Api
      Libremidi.Common
      Libremidi.Foreign
      Libremidi.Simple
  other-modules:
      Paths_libremidi
  autogen-modules:
      Paths_libremidi
  hs-source-dirs:
      src
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DeriveFunctor
      DeriveFoldable
      DeriveGeneric
      DeriveTraversable
      DerivingStrategies
      DerivingVia
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      ImportQualifiedPost
      LambdaCase
      KindSignatures
      MultiParamTypeClasses
      MultiWayIf
      PatternSynonyms
      Rank2Types
      ScopedTypeVariables
      StandaloneDeriving
      StandaloneKindSignatures
      TupleSections
      TypeApplications
      TypeOperators
      TypeFamilies
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -fno-warn-unused-top-binds
  include-dirs:
      vendor
  install-includes:
      vendor/libremidi/libremidi-c.h
  cxx-sources:
      vendor/libremidi/client.cpp
      vendor/libremidi/libremidi-c.cpp
      vendor/libremidi/libremidi.cpp
      vendor/libremidi/midi_in.cpp
      vendor/libremidi/midi_out.cpp
      vendor/libremidi/observer.cpp
      vendor/libremidi/reader.cpp
      vendor/libremidi/writer.cpp
  extra-libraries:
      stdc++
  build-depends:
      base >=4.12 && <5
    , containers >=0.6.7 && <0.7
    , data-default >=0.7.1.1 && <0.8
    , mtl >=2.3.1 && <2.4
    , stm >=2.5.1.0 && <2.6
    , text >=2.0.2 && <2.2
    , transformers >=0.6.1 && <0.7
  default-language: GHC2021
  if os(darwin)
    ghc-options: -pgmcxx=clang++
    cxx-options: -std=c++20 -DLIBREMIDI_COREMIDI=1
    frameworks:
        CoreMIDI CoreAudio CoreFoundation
    ld-options: -Wl,-keep_dwarf_unwind
  if os(linux)
    ghc-options: -pgmcxx=clang++
    cxx-options: -std=c++20 -DLIBREMIDI_PIPEWIRE=1 -DLIBREMIDI_HAS_UDEV=1
    pkgconfig-depends:
        libpipewire-0.3
      , udev

executable libremidi-exe
  main-is: Main.hs
  other-modules:
      Paths_libremidi
  autogen-modules:
      Paths_libremidi
  hs-source-dirs:
      exe
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DeriveFunctor
      DeriveFoldable
      DeriveGeneric
      DeriveTraversable
      DerivingStrategies
      DerivingVia
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      ImportQualifiedPost
      LambdaCase
      KindSignatures
      MultiParamTypeClasses
      MultiWayIf
      PatternSynonyms
      Rank2Types
      ScopedTypeVariables
      StandaloneDeriving
      StandaloneKindSignatures
      TupleSections
      TypeApplications
      TypeOperators
      TypeFamilies
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -fno-warn-unused-top-binds -threaded -rtsopts -with-rtsopts=-N
  install-includes:
      vendor/libremidi/libremidi-c.h
  build-depends:
      base >=4.12 && <5
    , containers >=0.6.7 && <0.7
    , data-default >=0.7.1.1 && <0.8
    , libremidi
    , mtl >=2.3.1 && <2.4
    , stm >=2.5.1.0 && <2.6
    , text >=2.0.2 && <2.2
    , transformers >=0.6.1 && <0.7
  default-language: GHC2021

test-suite libremidi-test
  type: exitcode-stdio-1.0
  main-is: Main.hs
  other-modules:
      Paths_libremidi
  autogen-modules:
      Paths_libremidi
  hs-source-dirs:
      test
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DeriveFunctor
      DeriveFoldable
      DeriveGeneric
      DeriveTraversable
      DerivingStrategies
      DerivingVia
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      ImportQualifiedPost
      LambdaCase
      KindSignatures
      MultiParamTypeClasses
      MultiWayIf
      PatternSynonyms
      Rank2Types
      ScopedTypeVariables
      StandaloneDeriving
      StandaloneKindSignatures
      TupleSections
      TypeApplications
      TypeOperators
      TypeFamilies
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -fno-warn-unused-top-binds -threaded -rtsopts -with-rtsopts=-N
  install-includes:
      vendor/libremidi/libremidi-c.h
  build-depends:
      base >=4.12 && <5
    , containers >=0.6.7 && <0.7
    , data-default >=0.7.1.1 && <0.8
    , libremidi
    , mtl >=2.3.1 && <2.4
    , stm >=2.5.1.0 && <2.6
    , tasty
    , tasty-hunit
    , text >=2.0.2 && <2.2
    , transformers >=0.6.1 && <0.7
  default-language: GHC2021