Re: PHP4 and Solid DB re-integration help

From: Date: Fri, 02 Jun 2000 13:55:06 +0000
Subject: Re: PHP4 and Solid DB re-integration help
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-20049@lists.php.net to get a copy of this message
Daniel Kalowsky wrote: > I've noticed that Solid's own database files have changed drastically > between 2.2, 3.0.X, and 3.5 (meaning any 3.0 code won't work for 3.5, etc). > > Question1: Is it possible to change the #define of HAVE_SOLID to a series > of: > #define HAVE_SOLID_2 // for use in Solid v2.x databases > #define HAVE_SOLID_30 // for use in Solid v3.0, 3.0.x databases > #define HAVE_SOLID_35 // for use in Solid v3.5 database > > each of these will require different includes, and libraries, but > unfortunately I have no real way to tell a difference other than if such a > library exists (suggestions on better methods of testing are welcome). I do > not have a copy of a 3.0 setup so I cannot be sure of its layout (which libs > it does have, and doesn't). If anyone can send me a list of the libs and > includes, I will try to incorporate it. > I would appreciate if you could help with integrating support for Solid 3.x. I have some information regarding headers an libs for the various versions but haven't found the time to integrate them - and I don't have any Solid version at hand;-) Here's what I have (directly from Solid): ---------------------------------------------- - Which header files are required? Header file names are cli0*.h in Versions 2.3 and 3.0, and sql*.h in Version 3.5. - Which libraries need to be linked? This is version and platform dependent. In general, the library file names are sZZXXXVV.YYY, where: ZZ is a version dependent library designator (specified below for each version) XXX is the operating system mnemonic (like l2x for Linux MT) (listed below) VV is the version designator (23 for V2.3, 30 for V3.0, and 35 for V3.5) YYY is shared library extension (e.g., .so for Linux) For version 3.5 (and SynchroNet 2.0): socXXX35.YYY For version 3.0 (and SynchroNet 1.1): sclXXX30.YYY For version 2.3: sclXXX23.YYY Older versions are no longer actively supported. The platform mnemonic, XXX is from the list below: ------------------------------------------------- a3x AIX 3 a4x AIX 4 cpx ChorusOS PowerPC crx ChorusOS Intel x86 dix Digital UNIX e32 EPOC32 fbx FreeBSD fex FreeBSD 3.x (ELF format) h0x HP-UX 10 h1x HP-UX 11 h9x HP-UX 9 irx IRIX lux Linux libc5 l2x Linux glibc2 lxa Linux Alpha nnw Novell NetWare 4 n5w Novell NetWare 5 nta Windows NT Alpha nti Windows NT Intel x86 (=w32) o32 OS/2 ova OpenVMS Alpha ovv OpenVMS VAX qnx QNX Intel x86 scx SCO UNIX s5x SCO OpenServer 5 suw UnixWare ssx Solaris SPARC vpx VxWorks PowerPC vxw VxWorks Intel x86 w16 16bit Windows w32 32bit Windows Intel x86 Please note that not all versions are supported on platforms. - Is there a way to get version information (e.g. from a configuration script) to determine which libraries / headers need to be used? Solid doesn't have any mechanisms like this. ------------------------------ > 1a: If it is possible who do I have to talk with about incorporating these > changes properly into the configure script? > You would have to change config.m4 in ext/odbc, and maybe setup.stub if you need to add additional --with-xxx switches. > Question 2: I have found various sections commented out from Solid, while > the 3.5 system does seem to support these options (e.g. odbc_foreignkeys). > Does anyone remember why these were #ifdef !(HAVE_SOLID)'ed out? Those #ifdefs were needed for Solid 2.x (No SQLExtendedFetch etc.) -Andreas -- Andreas Karajannis GMD National Research Center for Information Technology Schloss Birlinghoven, D-53754 Sankt Augustin Phone +49 2241 142948

« previous php.dev (#20049) next »