aboutsummaryrefslogtreecommitdiff
path: root/databases/postgresql-odbc
diff options
context:
space:
mode:
authorMax Khon <fjoe@FreeBSD.org>2009-01-27 05:13:10 +0000
committerMax Khon <fjoe@FreeBSD.org>2009-01-27 05:13:10 +0000
commit3f65f803c1a50cc5084e81709f115916aeef47cc (patch)
tree19c8e5949ee8b520eaf3343bbacd12b015b5b8fe /databases/postgresql-odbc
parent14681a6608367c4de09d5c5eee399fd808ea6812 (diff)
downloadports-3f65f803c1a50cc5084e81709f115916aeef47cc.tar.gz
ports-3f65f803c1a50cc5084e81709f115916aeef47cc.zip
Notes
Diffstat (limited to 'databases/postgresql-odbc')
-rw-r--r--databases/postgresql-odbc/Makefile4
-rw-r--r--databases/postgresql-odbc/files/patch-odbcapi.c32
-rw-r--r--databases/postgresql-odbc/files/patch-odbcapi30.c13
-rw-r--r--databases/postgresql-odbc/files/patch-odbcapi30w.c11
-rw-r--r--databases/postgresql-odbc/files/patch-psqlodbc.h16
5 files changed, 74 insertions, 2 deletions
diff --git a/databases/postgresql-odbc/Makefile b/databases/postgresql-odbc/Makefile
index 536753a748af..f3f2c4d00b54 100644
--- a/databases/postgresql-odbc/Makefile
+++ b/databases/postgresql-odbc/Makefile
@@ -21,6 +21,7 @@
PORTNAME= postgresql
PORTVERSION= 08.03.0400
+PORTREVISION= 1
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_PGSQL}
MASTER_SITE_SUBDIR= odbc/versions/src
@@ -43,9 +44,8 @@ WITH_UNIXODBC= yes
.if defined(WITH_UNIXODBC)
# I.e. even if WITH_IODBC is defined
LIB_DEPENDS+= odbc.1:${PORTSDIR}/databases/unixODBC
+BUILD_DEPENDS+= unixODBC>=2.2.14_1:${PORTSDIR}/databases/unixODBC
CONFIGURE_ARGS+= --with-unixodbc=${LOCALBASE}
-
-BROKEN= does not compile
.else
LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
CONFIGURE_ARGS+= --with-iodbc=${LOCALBASE}
diff --git a/databases/postgresql-odbc/files/patch-odbcapi.c b/databases/postgresql-odbc/files/patch-odbcapi.c
new file mode 100644
index 000000000000..b7675e5b93bf
--- /dev/null
+++ b/databases/postgresql-odbc/files/patch-odbcapi.c
@@ -0,0 +1,32 @@
+--- odbcapi.c.orig 2009-01-26 23:29:21.000000000 +0600
++++ odbcapi.c 2009-01-26 23:30:15.000000000 +0600
+@@ -1111,11 +1111,7 @@
+ HSTMT hstmt,
+ SQLUSMALLINT fFetchType,
+ SQLLEN irow,
+-#ifdef WITH_UNIXODBC
+- SQLROWSETSIZE *pcrow,
+-#else
+ SQLULEN *pcrow,
+-#endif /* WITH_UNIXODBC */
+ SQLUSMALLINT *rgfRowStatus)
+ {
+ RETCODE ret;
+@@ -1125,17 +1121,7 @@
+ ENTER_STMT_CS(stmt);
+ SC_clear_error(stmt);
+ StartRollbackState(stmt);
+-#ifdef WITH_UNIXODBC
+- {
+- SQLULEN retrieved;
+-
+- ret = PGAPI_ExtendedFetch(hstmt, fFetchType, irow, &retrieved, rgfRowStatus, 0, SC_get_ARDF(stmt)->size_of_rowset_odbc2);
+- if (pcrow)
+- *pcrow = retrieved;
+- }
+-#else
+ ret = PGAPI_ExtendedFetch(hstmt, fFetchType, irow, pcrow, rgfRowStatus, 0, SC_get_ARDF(stmt)->size_of_rowset_odbc2);
+-#endif /* WITH_UNIXODBC */
+ stmt->transition_status = STMT_TRANSITION_EXTENDED_FETCH;
+ ret = DiscardStatementSvp(stmt, ret, FALSE);
+ LEAVE_STMT_CS(stmt);
diff --git a/databases/postgresql-odbc/files/patch-odbcapi30.c b/databases/postgresql-odbc/files/patch-odbcapi30.c
new file mode 100644
index 000000000000..58d277bdffd6
--- /dev/null
+++ b/databases/postgresql-odbc/files/patch-odbcapi30.c
@@ -0,0 +1,13 @@
+--- odbcapi30.c.orig 2009-01-26 23:20:59.000000000 +0600
++++ odbcapi30.c 2009-01-26 23:21:47.000000000 +0600
+@@ -118,9 +118,7 @@
+ SQLPOINTER CharacterAttribute,
+ SQLSMALLINT BufferLength,
+ SQLSMALLINT *StringLength,
+-#if defined(_WIN64)
+- SQLLEN *NumericAttribute
+-#elif defined(WITH_UNIXODBC) || defined(WIN32)
++#if defined(WIN32)
+ SQLPOINTER NumericAttribute
+ #else
+ SQLLEN *NumericAttribute
diff --git a/databases/postgresql-odbc/files/patch-odbcapi30w.c b/databases/postgresql-odbc/files/patch-odbcapi30w.c
new file mode 100644
index 000000000000..65e83482a4b5
--- /dev/null
+++ b/databases/postgresql-odbc/files/patch-odbcapi30w.c
@@ -0,0 +1,11 @@
+--- odbcapi30w.c.orig 2009-01-26 23:23:19.000000000 +0600
++++ odbcapi30w.c 2009-01-26 23:24:07.000000000 +0600
+@@ -255,7 +255,7 @@
+ SQLPOINTER pCharAttr,
+ SQLSMALLINT cbCharAttrMax,
+ SQLSMALLINT *pcbCharAttr,
+-#if defined(WITH_UNIXODBC) || (defined(WIN32) && ! defined(_WIN64))
++#if defined(WIN32)
+ SQLPOINTER pNumAttr
+ #else
+ SQLLEN *pNumAttr
diff --git a/databases/postgresql-odbc/files/patch-psqlodbc.h b/databases/postgresql-odbc/files/patch-psqlodbc.h
new file mode 100644
index 000000000000..648746558d9a
--- /dev/null
+++ b/databases/postgresql-odbc/files/patch-psqlodbc.h
@@ -0,0 +1,16 @@
+--- psqlodbc.h.orig 2008-09-21 22:35:44.000000000 +0700
++++ psqlodbc.h 2009-01-26 23:19:02.000000000 +0600
+@@ -140,13 +140,8 @@
+ #if (SIZEOF_VOID_P == 8)
+ #define FORMAT_INTEGER "%d" /* SQLINTEGER */
+ #define FORMAT_UINTEGER "%u" /* SQLUINTEGER */
+-#if defined(WITH_UNIXODBC) && !defined(BUILD_REAL_64_BIT_MODE)
+-#define FORMAT_LEN "%d" /* SQLLEN */
+-#define FORMAT_ULEN "%u" /* SQLULEN */
+-#else
+ #define FORMAT_LEN "%ld" /* SQLLEN */
+ #define FORMAT_ULEN "%lu" /* SQLULEN */
+-#endif /* WITH_UNIXODBC */
+ #else
+ #define FORMAT_LEN "%ld" /* SQLLEN */
+ #define FORMAT_ULEN "%lu" /* SQLULEN */