SOURCES: unixODBC-types.patch - do it the riht way using SIZEOF_LONG

havner havner w smtp.kamp.pl
Pią, 8 Paź 2004, 20:51:02 CEST


On Fri, Oct 08, 2004 at 08:35:32PM +0200, Jakub Bogusz wrote:
> Firebird nie jest tu żadnym wyznacznikiem, bo nie dostarcza API ODBC(?),
> więc jest to tylko konflikt nazw typów używanych do różnych rzeczy - do
> rozwiązania w inny sposób (pewnie jakimiś hackami z #define).
> mikmod też używa 32-bitowych typów o nazwach [SU]LONG, a ma jeszcze
> mniej wspólnego z ODBC.
> 
> Jak to w unixODBC (i libiodbc) powinno być, to zależy do czego służy,
> czy jest używane lokalnie czy zdalnie itd. - trzeba by pośledzić.
> Czy to mają być typy odpowiadające danym typom C, czy zawsze o tym samym
> rozmiarze (ale od tego jest UDWORD i SDWORD).
> 
> Nie wiem czy jest do tego jakaś specyfikacja uwzględniająca konwencję
> LP64 - bo z tego co słyszałem Win64 używa LLP64, więc ma 32-bitowego
> longa.
> 
> Tutaj znalazłem jakieś uwagi dot. 64-bitowego ODBC - jest parę zmian,
> ale SLONG i ULONG jest zawsze longiem.
> 
> http://www-numi.fnal.gov/offline_software/external_pkgs/Linux2.4-GCC_3_2/include/sqltypes.h
> 
> Zmieniając tak sobie sqltypes.h dostajemy binarną niekompatybilność
> w ramach bibliotek ODBC z innymi dystrybucjami na 64-bitowego Linuksa
> oraz ze wszystkimi naszymi binarkami budowanym na ODBC przed tą zmianą.

Czyli unixODBC bylo ok, moge cofnac, ale poprawiac Firebirda to ja sie
nie podejme o ile nie jest to s/SLONG/FB_SLONG/ itp... A co do 64bit, to
widziales jak Firebird alphe po macoszemu potraktowal. Czemu tak btw
gcc na alphie nie definiuje _LP64?

-- 
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