packages feed

bindings-libpci-0.4.0.2: bindings-libpci.cabal

cabal-version:      2.4
name:               bindings-libpci
version:            0.4.0.2
synopsis:           Low level bindings to libpci
description:        Low level bindings to libpci:
                    .
                    <https://github.com/pciutils/pciutils>
                    .
                    This package uses @bindings-DSL@
                    and conforms to its naming convention.
bug-reports:        https://github.com/standardsemiconductor/bindings-libpci/issues
license:            BSD-3-Clause
license-file:       LICENSE                    
author:             dopamane
maintainer:         dopamane <standard.semiconductor@gmail.com>
copyright:          Copyright (c) 2020 - 2022 David Cox
category:           FFI
extra-source-files:
    CHANGELOG.md
    README.md

source-repository head
                  type: git
                  location: https://github.com/standardsemiconductor/bindings-libpci
                  branch: main

flag libpci-352
     default: False
     description:
       libpci is 3.5.2 or later

flag libpci-353
     default: False
     description:
       libpci is 3.5.3 or later
       
flag libpci-355
     default: False
     description:
       libpci is 3.5.5 or later
                         
flag libpci-360
     default: False
     description:
       libpci is 3.6.0 or later

flag libpci-363
     default: False
     description:
       libpci is 3.6.3 or later

flag libpci-364
     default: False
     description:
       libpci is 3.6.4 or later
       
flag libpci-370
     default: False
     description:
       libpci is 3.7.0 or later
                                 
library
        hs-source-dirs: src
        default-extensions: ForeignFunctionInterface,
                            CPP
        build-depends:
          base         >= 4.12   && < 4.17,
          bindings-DSL >= 1.0.24 && < 1.1
        exposed-modules:
          Bindings.Libpci.Pci,
          Bindings.Libpci.Types,
          Bindings.Libpci.Header
        default-language: Haskell2010
        if os(windows)
          includes: pci.h
          extra-libraries: libpci
        else
          if flag(libpci-352)
            pkgconfig-depends: libpci >= 3.5.2
            cpp-options: -DMIN_VERSION_LIBPCI_3_5_2
          if flag(libpci-353)
            pkgconfig-depends: libpci >= 3.5.3
            cpp-options: -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2            
          if flag(libpci-355)
            pkgconfig-depends: libpci >= 3.5.5
            cpp-options: -DMIN_VERSION_LIBPCI_3_5_5,
                         -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2
          if flag(libpci-360)
            pkgconfig-depends: libpci >= 3.6.0
            cpp-options: -DMIN_VERSION_LIBPCI_3_6_0,
                         -DMIN_VERSION_LIBPCI_3_5_5,
                         -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2
          if flag(libpci-363)
            pkgconfig-depends: libpci >= 3.6.3
            cpp-options: -DMIN_VERSION_LIBPCI_3_6_3,
                         -DMIN_VERSION_LIBPCI_3_6_0,
                         -DMIN_VERSION_LIBPCI_3_5_5,
                         -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2
          if flag(libpci-364)
            pkgconfig-depends: libpci >= 3.6.4
            cpp-options: -DMIN_VERSION_LIBPCI_3_6_4,
                         -DMIN_VERSION_LIBPCI_3_6_3,
                         -DMIN_VERSION_LIBPCI_3_6_0,
                         -DMIN_VERSION_LIBPCI_3_5_5,
                         -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2
          if flag(libpci-370)
            pkgconfig-depends: libpci >= 3.7.0
            cpp-options: -DMIN_VERSION_LIBPCI_3_7_0,
                         -DMIN_VERSION_LIBPCI_3_6_4,
                         -DMIN_VERSION_LIBPCI_3_6_3,
                         -DMIN_VERSION_LIBPCI_3_6_0,
                         -DMIN_VERSION_LIBPCI_3_5_5,
                         -DMIN_VERSION_LIBPCI_3_5_3,
                         -DMIN_VERSION_LIBPCI_3_5_2