Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-postgresql-libpq for
openSUSE:Factory checked in at 2025-07-16 15:52:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-postgresql-libpq (Old)
and /work/SRC/openSUSE:Factory/.ghc-postgresql-libpq.new.7373 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-postgresql-libpq"
Wed Jul 16 15:52:14 2025 rev:14 rq:1293497 version:0.11.0.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/ghc-postgresql-libpq/ghc-postgresql-libpq.changes
2024-07-22 17:17:34.852265233 +0200
+++
/work/SRC/openSUSE:Factory/.ghc-postgresql-libpq.new.7373/ghc-postgresql-libpq.changes
2025-07-16 15:53:09.132212212 +0200
@@ -1,0 +2,19 @@
+Fri Dec 27 19:45:48 UTC 2024 - Peter Simons <[email protected]>
+
+- Update postgresql-libpq to version 0.11.0.0 revision 1.
+ 0.11
+ ----
+
+ - Add pipeline mode API
+ https://www.postgresql.org/docs/current/libpq-pipeline-mode.html
+
+ There are new values in `ExecStatus`, therefore the major version release.
+
+ 0.10.2.0
+ --------
+
+ - Split the c library dependency into separate packages.
+ Now the dependencies are either all `build-type: Simple` (`-f
+use-pkg-config`)
+ or `build-type: Configure` (`-f -use-pkg-config`).
+
+-------------------------------------------------------------------
Old:
----
postgresql-libpq-0.10.1.0.tar.gz
New:
----
postgresql-libpq-0.11.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-postgresql-libpq.spec ++++++
--- /var/tmp/diff_new_pack.GHl7q9/_old 2025-07-16 15:53:11.020291000 +0200
+++ /var/tmp/diff_new_pack.GHl7q9/_new 2025-07-16 15:53:11.032291501 +0200
@@ -20,7 +20,7 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.10.1.0
+Version: 0.11.0.0
Release: 0
Summary: Low-level binding to libpq
License: BSD-3-Clause
@@ -28,15 +28,16 @@
Source0:
https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
Source1:
https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal
BuildRequires: ghc-Cabal-devel
-BuildRequires: ghc-Cabal-prof
BuildRequires: ghc-base-devel
BuildRequires: ghc-base-prof
BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-bytestring-prof
+BuildRequires: ghc-postgresql-libpq-configure-devel
+BuildRequires: ghc-postgresql-libpq-configure-prof
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-unix-devel
BuildRequires: ghc-unix-prof
-BuildRequires: postgresql-server-devel
+BuildRequires: postgresql-devel
ExcludeArch: %{ix86}
%if %{with tests}
BuildRequires: ghc-tasty-devel
@@ -55,7 +56,6 @@
Summary: Haskell %{pkg_name} library development files
Requires: %{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
-Requires: postgresql-server-devel
Requires(post): ghc-compiler = %{ghc_version}
Requires(postun): ghc-compiler = %{ghc_version}
++++++ postgresql-libpq-0.10.1.0.tar.gz -> postgresql-libpq-0.11.0.0.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/postgresql-libpq-0.10.1.0/CHANGELOG.md
new/postgresql-libpq-0.11.0.0/CHANGELOG.md
--- old/postgresql-libpq-0.10.1.0/CHANGELOG.md 2001-09-09 03:46:40.000000000
+0200
+++ new/postgresql-libpq-0.11.0.0/CHANGELOG.md 2001-09-09 03:46:40.000000000
+0200
@@ -1,3 +1,19 @@
+0.11
+----
+
+- Add pipeline mode API
+ https://www.postgresql.org/docs/current/libpq-pipeline-mode.html
+
+ There are new values in `ExecStatus`, therefore the major version release.
+
+
+0.10.2.0
+--------
+
+- Split the c library dependency into separate packages.
+ Now the dependencies are either all `build-type: Simple` (`-f
+use-pkg-config`)
+ or `build-type: Configure` (`-f -use-pkg-config`).
+
0.10.1.0
--------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/postgresql-libpq-0.10.1.0/Setup.hs
new/postgresql-libpq-0.11.0.0/Setup.hs
--- old/postgresql-libpq-0.10.1.0/Setup.hs 2001-09-09 03:46:40.000000000
+0200
+++ new/postgresql-libpq-0.11.0.0/Setup.hs 1970-01-01 01:00:00.000000000
+0100
@@ -1,55 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-import Distribution.Simple.Setup
-import Distribution.PackageDescription
-import Distribution.Version
-
-import Distribution.Simple.LocalBuildInfo
-import Distribution.Simple.Program
-import Distribution.Verbosity
-
-import Data.Char (isSpace)
-import Data.List (dropWhile,reverse)
-
-import Distribution.Types.UnqualComponentName
-
-flag :: String -> FlagName
-flag = mkFlagName
-
-unqualComponentName :: String -> UnqualComponentName
-unqualComponentName = mkUnqualComponentName
-
-main :: IO ()
-main = defaultMainWithHooks simpleUserHooks {
- confHook = \pkg flags -> do
- if lookup (flag "use-pkg-config")
- (unFlagAssignment (configConfigurationsFlags flags)) == Just True
- then do
- confHook simpleUserHooks pkg flags
- else do
- lbi <- confHook simpleUserHooks pkg flags
- bi <- psqlBuildInfo lbi
-
- return lbi {
- localPkgDescr = updatePackageDescription
- (Just bi, [(unqualComponentName "runtests", bi)])
(localPkgDescr lbi)
- }
-}
-
-psqlBuildInfo :: LocalBuildInfo -> IO BuildInfo
-psqlBuildInfo lbi = do
- (pgconfigProg, _) <- requireProgram verbosity
- (simpleProgram "pg_config") (withPrograms lbi)
- let pgconfig = getProgramOutput verbosity pgconfigProg
-
- incDir <- pgconfig ["--includedir"]
- libDir <- pgconfig ["--libdir"]
-
- return emptyBuildInfo {
- extraLibDirs = [strip libDir],
- includeDirs = [strip incDir]
- }
- where
- verbosity = normal -- honestly, this is a hack
- strip x = dropWhile isSpace $ reverse $ dropWhile isSpace $ reverse x
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/postgresql-libpq-0.10.1.0/postgresql-libpq.cabal
new/postgresql-libpq-0.11.0.0/postgresql-libpq.cabal
--- old/postgresql-libpq-0.10.1.0/postgresql-libpq.cabal 2001-09-09
03:46:40.000000000 +0200
+++ new/postgresql-libpq-0.11.0.0/postgresql-libpq.cabal 2001-09-09
03:46:40.000000000 +0200
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: postgresql-libpq
-version: 0.10.1.0
+version: 0.11.0.0
synopsis: low-level binding to libpq
description:
This is a binding to libpq: the C application
@@ -21,7 +21,7 @@
(c) 2011 Leon P Smith
category: Database
-build-type: Custom
+build-type: Simple
extra-source-files: cbits/hs-libpq.h
tested-with:
GHC ==8.6.5
@@ -32,14 +32,10 @@
|| ==9.4.8
|| ==9.6.5
|| ==9.8.2
+ || ==9.10.1
extra-source-files: CHANGELOG.md
-custom-setup
- setup-depends:
- , base >=4.12.0.0 && <5
- , Cabal >=2.4 && <3.11
-
-- If true, use pkg-config, otherwise use the pg_config based build
-- configuration
flag use-pkg-config
@@ -75,34 +71,20 @@
Database.PostgreSQL.LibPQ.Ptr
build-depends:
- , base >=4.12.0.0 && <4.20
+ , base >=4.12.0.0 && <4.21
, bytestring >=0.10.8.2 && <0.13
if !os(windows)
build-depends: unix >=2.7.2.2 && <2.9
if os(windows)
- build-depends: Win32 >=2.2.0.2 && <2.14
+ build-depends: Win32 >=2.2.0.2 && <2.15
if flag(use-pkg-config)
- pkgconfig-depends: libpq >=10.22
+ build-depends: postgresql-libpq-pkgconfig ^>=0.11
else
- if os(windows)
- -- Due to https://sourceware.org/bugzilla/show_bug.cgi?id=22948,
- -- if we specify pq instead of libpq, then ld might link against
- -- libpq.dll directly, which can lead to segfaults. As a temporary hack,
- -- we force ld to link against the libpq.lib import library directly
- -- by specifying libpq here.
- extra-libraries: libpq
-
- else
- extra-libraries: pq
-
- if os(openbsd)
- extra-libraries:
- crypto
- ssl
+ build-depends: postgresql-libpq-configure ^>=0.11
build-tool-depends: hsc2hs:hsc2hs >=0.68.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ/Enums.hsc
new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ/Enums.hsc
--- old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ/Enums.hsc
2001-09-09 03:46:40.000000000 +0200
+++ new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ/Enums.hsc
2001-09-09 03:46:40.000000000 +0200
@@ -37,23 +37,42 @@
| NonfatalError -- ^ A nonfatal error (a notice or
-- warning) occurred.
| FatalError -- ^ A fatal error occurred.
- | SingleTuple -- ^ The PGresult contains a single result tuple
+ | SingleTuple -- ^ The 'Result' contains a single result tuple
-- from the current command. This status occurs
-- only when single-row mode has been selected
-- for the query.
+
+ | PipelineSync -- ^ The 'Result' represents a synchronization
+ -- point in pipeline mode, requested by
+ -- 'pipelineSync'. This status occurs only
+ -- when pipeline mode has been selected.
+ --
+ -- @since 0.11.0.0
+
+ | PipelineAbort -- ^ The 'Result' represents a pipeline that
+ -- has received an error from the server.
+ -- 'getResult' must be called repeatedly,
+ -- and each time it will return this status
+ -- code until the end of the current pipeline,
+ -- at which point it will return 'PipelineSync'
+ -- and normal processing can resume.
+ --
+ -- @since 0.11.0.0
deriving (Eq, Show)
instance FromCInt ExecStatus where
- fromCInt (#const PGRES_EMPTY_QUERY) = Just EmptyQuery
- fromCInt (#const PGRES_COMMAND_OK) = Just CommandOk
- fromCInt (#const PGRES_TUPLES_OK) = Just TuplesOk
- fromCInt (#const PGRES_COPY_OUT) = Just CopyOut
- fromCInt (#const PGRES_COPY_IN) = Just CopyIn
- fromCInt (#const PGRES_COPY_BOTH) = Just CopyBoth
- fromCInt (#const PGRES_BAD_RESPONSE) = Just BadResponse
- fromCInt (#const PGRES_NONFATAL_ERROR) = Just NonfatalError
- fromCInt (#const PGRES_FATAL_ERROR) = Just FatalError
- fromCInt (#const PGRES_SINGLE_TUPLE) = Just SingleTuple
+ fromCInt (#const PGRES_EMPTY_QUERY) = Just EmptyQuery
+ fromCInt (#const PGRES_COMMAND_OK) = Just CommandOk
+ fromCInt (#const PGRES_TUPLES_OK) = Just TuplesOk
+ fromCInt (#const PGRES_COPY_OUT) = Just CopyOut
+ fromCInt (#const PGRES_COPY_IN) = Just CopyIn
+ fromCInt (#const PGRES_COPY_BOTH) = Just CopyBoth
+ fromCInt (#const PGRES_BAD_RESPONSE) = Just BadResponse
+ fromCInt (#const PGRES_NONFATAL_ERROR) = Just NonfatalError
+ fromCInt (#const PGRES_FATAL_ERROR) = Just FatalError
+ fromCInt (#const PGRES_SINGLE_TUPLE) = Just SingleTuple
+ fromCInt (#const PGRES_PIPELINE_SYNC) = Just PipelineSync
+ fromCInt (#const PGRES_PIPELINE_ABORTED) = Just PipelineAbort
fromCInt _ = Nothing
instance ToCInt ExecStatus where
@@ -67,6 +86,8 @@
toCInt NonfatalError = (#const PGRES_NONFATAL_ERROR)
toCInt FatalError = (#const PGRES_FATAL_ERROR)
toCInt SingleTuple = (#const PGRES_SINGLE_TUPLE)
+ toCInt PipelineSync = (#const PGRES_PIPELINE_SYNC)
+ toCInt PipelineAbort = (#const PGRES_PIPELINE_ABORTED)
data FieldCode
@@ -230,7 +251,7 @@
fromCInt (#const CONNECTION_SSL_STARTUP) = return
ConnectionSSLStartup
-- fromCInt (#const CONNECTION_NEEDED) = return ConnectionNeeded
fromCInt _ = Nothing
-
+
data TransactionStatus
= TransIdle -- ^ currently idle
@@ -263,6 +284,25 @@
fromCInt 1 = Just Binary
fromCInt _ = Nothing
+
+-- |
+--
+-- @since 0.11.0.0
+data PipelineStatus
+ = PipelineOn -- ^ The 'Connection' is in pipeline mode.
+ | PipelineOff -- ^ The 'Connection' is /not/ in pipeline mode.
+ | PipelineAborted -- ^ The 'Connection' is in pipeline mode and an
error
+ -- occurred while processing the current pipeline.
The
+ -- aborted flag is cleared when 'getResult' returns
a
+ -- result with status 'PipelineSync'.
+ deriving (Eq, Show)
+
+instance FromCInt PipelineStatus where
+ fromCInt (#const PQ_PIPELINE_ON) = return PipelineOn
+ fromCInt (#const PQ_PIPELINE_OFF) = return PipelineOff
+ fromCInt (#const PQ_PIPELINE_ABORTED) = return PipelineAborted
+ fromCInt _ = Nothing
+
-------------------------------------------------------------------------------
-- System.IO enumerations
-------------------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ/FFI.hs
new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ/FFI.hs
--- old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ/FFI.hs
2001-09-09 03:46:40.000000000 +0200
+++ new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ/FFI.hs
2001-09-09 03:46:40.000000000 +0200
@@ -302,6 +302,21 @@
foreign import capi "hs-libpq.h PQfreemem"
c_PQfreemem :: Ptr a -> IO ()
+foreign import capi "hs-libpq.h PQpipelineStatus"
+ c_PQpipelineStatus :: Ptr PGconn -> IO CInt
+
+foreign import capi "hs-libpq.h PQenterPipelineMode"
+ c_PQenterPipelineMode :: Ptr PGconn -> IO CInt
+
+foreign import capi "hs-libpq.h PQexitPipelineMode"
+ c_PQexitPipelineMode :: Ptr PGconn -> IO CInt
+
+foreign import capi "hs-libpq.h PQpipelineSync"
+ c_PQpipelineSync :: Ptr PGconn -> IO CInt
+
+foreign import capi "hs-libpq.h PQsendFlushRequest"
+ c_PQsendFlushRequest :: Ptr PGconn -> IO CInt
+
-------------------------------------------------------------------------------
-- FFI imports: noticebuffers
-------------------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ.hs
new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ.hs
--- old/postgresql-libpq-0.10.1.0/src/Database/PostgreSQL/LibPQ.hs
2001-09-09 03:46:40.000000000 +0200
+++ new/postgresql-libpq-0.11.0.0/src/Database/PostgreSQL/LibPQ.hs
2001-09-09 03:46:40.000000000 +0200
@@ -171,6 +171,15 @@
, FlushStatus(..)
, flush
+ -- * Pipeline Mode
+ -- $pipelinemode
+ , PipelineStatus(..)
+ , pipelineStatus
+ , enterPipelineMode
+ , exitPipelineMode
+ , pipelineSync
+ , sendFlushRequest
+
-- * Cancelling Queries in Progress
-- $cancel
, Cancel
@@ -1640,6 +1649,60 @@
1 -> return FlushWriting
_ -> return FlushFailed
+-- $pipelinemode
+-- These functions control behaviour in pipeline mode.
+--
+-- Pipeline mode allows applications to send a query
+-- without having to read the result of the previously
+-- sent query. Taking advantage of the pipeline mode,
+-- a client will wait less for the server, since multiple
+-- queries/results can be sent/received in
+-- a single network transaction.
+
+-- | Returns the current pipeline mode status of the libpq connection.
+--
+-- @since 0.11.0.0
+pipelineStatus :: Connection
+ -> IO PipelineStatus
+pipelineStatus connection = do
+ stat <- withConn connection c_PQpipelineStatus
+ maybe
+ (fail $ "Unknown pipeline status " ++ show stat)
+ return
+ (fromCInt stat)
+
+-- | Causes a connection to enter pipeline mode if it is currently idle or
already in pipeline mode.
+--
+-- @since 0.11.0.0
+enterPipelineMode :: Connection
+ -> IO Bool
+enterPipelineMode connection =
+ enumFromConn connection c_PQenterPipelineMode
+
+-- | Causes a connection to exit pipeline mode if it is currently in pipeline
mode with an empty queue and no pending results.
+--
+-- @since 0.11.0.0
+exitPipelineMode :: Connection
+ -> IO Bool
+exitPipelineMode connection =
+ enumFromConn connection c_PQexitPipelineMode
+
+-- | Marks a synchronization point in a pipeline by sending a sync message and
flushing the send buffer. This serves as the delimiter of an implicit
transaction and an error recovery point>
+--
+-- @since 0.11.0.0
+pipelineSync :: Connection
+ -> IO Bool
+pipelineSync connection =
+ enumFromConn connection c_PQpipelineSync
+
+-- | Sends a request for the server to flush its output buffer.
+--
+-- @since 0.11.0.0
+sendFlushRequest :: Connection
+ -> IO Bool
+sendFlushRequest connection =
+ enumFromConn connection c_PQsendFlushRequest
+
-- $cancel
-- A client application can request cancellation of a command that is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/postgresql-libpq-0.10.1.0/test/Smoke.hs
new/postgresql-libpq-0.11.0.0/test/Smoke.hs
--- old/postgresql-libpq-0.10.1.0/test/Smoke.hs 2001-09-09 03:46:40.000000000
+0200
+++ new/postgresql-libpq-0.11.0.0/test/Smoke.hs 2001-09-09 03:46:40.000000000
+0200
@@ -5,7 +5,6 @@
import Data.Foldable (toList)
import Database.PostgreSQL.LibPQ
import System.Environment (getEnvironment)
-import System.Exit (exitFailure)
import Test.Tasty (defaultMain, testGroup)
import Test.Tasty.HUnit (assertEqual, testCaseSteps)
@@ -18,6 +17,7 @@
withConnstring $ \connString -> defaultMain $ testGroup "postgresql-libpq"
[ testCaseSteps "smoke" $ smoke connString
, testCaseSteps "issue54" $ issue54 connString
+ , testCaseSteps "pipeline" $ testPipeline connString
]
withConnstring :: (BS8.ByteString -> IO ()) -> IO ()
@@ -57,6 +57,7 @@
transactionStatus conn >>= infoShow
protocolVersion conn >>= infoShow
serverVersion conn >>= infoShow
+ pipelineStatus conn >>= infoShow
s <- status conn
assertEqual "connection not ok" ConnectionOk s
@@ -87,3 +88,34 @@
assertEqual "fst not null" BS.empty val1
assertEqual "snd not null" BS.empty val2
+
+testPipeline :: BS8.ByteString -> (String -> IO ()) -> IO ()
+testPipeline connstring info = do
+ conn <- connectdb connstring
+
+ setnonblocking conn True `shouldReturn` True
+ enterPipelineMode conn `shouldReturn` True
+ pipelineStatus conn `shouldReturn` PipelineOn
+ sendQueryParams conn (BS8.pack "select 1") [] Text `shouldReturn` True
+ sendQueryParams conn (BS8.pack "select 2") [] Text `shouldReturn` True
+ pipelineSync conn `shouldReturn` True
+
+ Just r1 <- getResult conn
+ resultStatus r1 `shouldReturn` TuplesOk
+ getvalue r1 0 0 `shouldReturn` Just (BS8.pack "1")
+ Nothing <- getResult conn
+
+ Just r2 <- getResult conn
+ getvalue r2 0 0 `shouldReturn` Just (BS8.pack "2")
+ Nothing <- getResult conn
+
+ Just r3 <- getResult conn
+ resultStatus r3 `shouldReturn` PipelineSync
+
+ finish conn
+ where
+ shouldBe r value = assertEqual "shouldBe" r value
+
+ shouldReturn action value = do
+ r <- action
+ r `shouldBe` value
++++++ postgresql-libpq.cabal ++++++
--- /var/tmp/diff_new_pack.GHl7q9/_old 2025-07-16 15:53:11.740321046 +0200
+++ /var/tmp/diff_new_pack.GHl7q9/_new 2025-07-16 15:53:11.772322382 +0200
@@ -1,6 +1,6 @@
cabal-version: 2.4
name: postgresql-libpq
-version: 0.10.1.0
+version: 0.11.0.0
x-revision: 1
synopsis: low-level binding to libpq
description:
@@ -22,7 +22,7 @@
(c) 2011 Leon P Smith
category: Database
-build-type: Custom
+build-type: Simple
extra-source-files: cbits/hs-libpq.h
tested-with:
GHC ==8.6.5
@@ -31,17 +31,13 @@
|| ==9.0.2
|| ==9.2.8
|| ==9.4.8
- || ==9.6.5
- || ==9.8.2
+ || ==9.6.6
+ || ==9.8.4
|| ==9.10.1
+ || ==9.12.1
extra-source-files: CHANGELOG.md
-custom-setup
- setup-depends:
- , base >=4.12.0.0 && <5
- , Cabal >=2.4 && <3.13
-
-- If true, use pkg-config, otherwise use the pg_config based build
-- configuration
flag use-pkg-config
@@ -77,7 +73,7 @@
Database.PostgreSQL.LibPQ.Ptr
build-depends:
- , base >=4.12.0.0 && <4.21
+ , base >=4.12.0.0 && <4.22
, bytestring >=0.10.8.2 && <0.13
if !os(windows)
@@ -87,24 +83,10 @@
build-depends: Win32 >=2.2.0.2 && <2.15
if flag(use-pkg-config)
- pkgconfig-depends: libpq >=10.22
+ build-depends: postgresql-libpq-pkgconfig ^>=0.11
else
- if os(windows)
- -- Due to https://sourceware.org/bugzilla/show_bug.cgi?id=22948,
- -- if we specify pq instead of libpq, then ld might link against
- -- libpq.dll directly, which can lead to segfaults. As a temporary hack,
- -- we force ld to link against the libpq.lib import library directly
- -- by specifying libpq here.
- extra-libraries: libpq
-
- else
- extra-libraries: pq
-
- if os(openbsd)
- extra-libraries:
- crypto
- ssl
+ build-depends: postgresql-libpq-configure ^>=0.11
build-tool-depends: hsc2hs:hsc2hs >=0.68.5