SOURCES: unixODBC-types.patch - do it the riht way using SIZEOF_LONG
havner
havner w smtp.kamp.pl
Pią, 8 Paź 2004, 19:40:11 CEST
On Fri, Oct 08, 2004 at 10:54:46AM +0200, Jakub Bogusz wrote:
> On Sun, Oct 03, 2004 at 01:39:00AM +0000, havner wrote:
> > Author: havner Date: Sun Oct 3 01:39:00 2004 GMT
> > Module: SOURCES Tag: HEAD
> > ---- Log message:
> > - do it the riht way using SIZEOF_LONG
> >
> > ---- Files affected:
> > SOURCES:
> > unixODBC-types.patch (1.1 -> 1.2)
> >
> > ---- Diffs:
> >
> > ================================================================
> > Index: SOURCES/unixODBC-types.patch
> > diff -u SOURCES/unixODBC-types.patch:1.1 SOURCES/unixODBC-types.patch:1.2
> > --- SOURCES/unixODBC-types.patch:1.1 Sat Oct 2 23:14:42 2004
> > +++ SOURCES/unixODBC-types.patch Sun Oct 3 01:38:54 2004
> > @@ -1,15 +1,19 @@
> > diff -ur unixODBC-2.2.9.orig/include/sqltypes.h unixODBC-2.2.9/include/sqltypes.h
> > --- unixODBC-2.2.9.orig/include/sqltypes.h 2004-06-25 19:01:15.000000000 +0200
> > -+++ unixODBC-2.2.9/include/sqltypes.h 2004-10-03 00:51:29.842492392 +0200
> > -@@ -256,9 +256,9 @@
> > ++++ unixODBC-2.2.9/include/sqltypes.h 2004-10-03 03:35:55.969613088 +0200
> > +@@ -256,9 +256,14 @@
> > typedef signed short int SWORD;
> > typedef unsigned short int UWORD;
> > typedef unsigned int UINT;
> > --typedef signed long SLONG;
> > ++#if (SIZEOF_LONG == 4)
> > + typedef signed long SLONG;
> > +-typedef signed short SSHORT;
> > + typedef unsigned long ULONG;
> > ++#else
> > +typedef signed int SLONG;
> > - typedef signed short SSHORT;
> > --typedef unsigned long ULONG;
> > +typedef unsigned int ULONG;
> > ++#endif
> > ++typedef signed short SSHORT;
> > typedef unsigned short USHORT;
> > typedef double SDOUBLE;
> > typedef double LDOUBLE;
>
> Skąd informacja, że SLONG/ULONG w API/ABI ODBC mają być 32-bitowe?
> Jest to w jakiejś specyfikacji ODBC?
>
> Druga rzecz, to taka zmiana wymaga zmiany SONAME na 64-bitowych
> architekturach ze względu na binarną niekompatybilność.
Tak wymaga tego Firebird. W naglowku jest wyraznie napisane, ze
wymuszaja 32bit na 64bit architekturach. I przy takim ODBC nie budowal
sie php (includowal oba, i byl konfikt typow) Spytalem arekm co z tym
zrobic. Powiedzial, ze chyba najlepiej wymusic to w ODBC, zeby bylo
calkowicie jednolite. Nie mam pewnosci jak powinno byc, ale nikt inny
nie chcial tego poprawic.
--
Regards Havner {jid,mail}:havner(at)pld-linux.org
PLD developer && PLD 2.0 release manager http://www.pld-linux.org
PLD LiveCD author http://livecd.pld-linux.org
"Quis custodiet ipsos custodes?"
Więcej informacji o liście dyskusyjnej pld-devel-pl