+ Added odbcsqldyn.pp

+ Fixed dyn. loading of ODBC and cleanup of non-fpc code
 + TODBCConnection now uses odbcsqldyn

git-svn-id: trunk@1687 -
This commit is contained in:
joost 2005-11-07 21:40:32 +00:00
parent 198e0db5a1
commit fbaa49fc9c
8 changed files with 1741 additions and 1793 deletions

2
.gitattributes vendored
View File

@ -1549,7 +1549,9 @@ packages/base/odbc/Makefile.fpc svneol=native#text/plain
packages/base/odbc/README -text packages/base/odbc/README -text
packages/base/odbc/fpmake.inc svneol=native#text/plain packages/base/odbc/fpmake.inc svneol=native#text/plain
packages/base/odbc/fpmake.pp svneol=native#text/plain packages/base/odbc/fpmake.pp svneol=native#text/plain
packages/base/odbc/odbcsql.inc svneol=native#text/plain
packages/base/odbc/odbcsql.pp svneol=native#text/plain packages/base/odbc/odbcsql.pp svneol=native#text/plain
packages/base/odbc/odbcsqldyn.pp svneol=native#text/plain
packages/base/odbc/testodbc.mdb -text packages/base/odbc/testodbc.mdb -text
packages/base/odbc/testodbc.pp svneol=native#text/plain packages/base/odbc/testodbc.pp svneol=native#text/plain
packages/base/oracle/Makefile svneol=native#text/plain packages/base/oracle/Makefile svneol=native#text/plain

View File

@ -16,7 +16,7 @@ unit odbcconn;
interface interface
uses uses
Classes, SysUtils, sqldb, db, odbcsql; Classes, SysUtils, sqldb, db, odbcsqldyn;
type type
@ -720,7 +720,7 @@ end;
constructor TODBCEnvironment.Create; constructor TODBCEnvironment.Create;
begin begin
// make sure odbc is loaded // make sure odbc is loaded
if ODBCLoadCount=0 then LoadOdbc; if ODBCLoadCount=0 then InitialiseOdbc;
Inc(ODBCLoadCount); Inc(ODBCLoadCount);
// allocate environment handle // allocate environment handle
@ -745,7 +745,7 @@ begin
// free odbc if not used by any TODBCEnvironment object anymore // free odbc if not used by any TODBCEnvironment object anymore
Dec(ODBCLoadCount); Dec(ODBCLoadCount);
if ODBCLoadCount=0 then UnLoadOdbc; if ODBCLoadCount=0 then ReleaseOdbc;
end; end;
{ TODBCCursor } { TODBCCursor }

View File

@ -1,5 +1,5 @@
# #
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/10/20] # Don't edit, this file is generated by FPCMake Version 2.0.0 [2005/11/07]
# #
default: all default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-wince powerpc64-linux
@ -233,115 +233,115 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/ext
override PACKAGE_NAME=odbc override PACKAGE_NAME=odbc
override PACKAGE_VERSION=2.0.0 override PACKAGE_VERSION=2.0.0
ifeq ($(FULL_TARGET),i386-linux) ifeq ($(FULL_TARGET),i386-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-go32v2) ifeq ($(FULL_TARGET),i386-go32v2)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-win32) ifeq ($(FULL_TARGET),i386-win32)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-os2) ifeq ($(FULL_TARGET),i386-os2)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-freebsd) ifeq ($(FULL_TARGET),i386-freebsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-beos) ifeq ($(FULL_TARGET),i386-beos)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-netbsd) ifeq ($(FULL_TARGET),i386-netbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-solaris) ifeq ($(FULL_TARGET),i386-solaris)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-qnx) ifeq ($(FULL_TARGET),i386-qnx)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-netware) ifeq ($(FULL_TARGET),i386-netware)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-openbsd) ifeq ($(FULL_TARGET),i386-openbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-wdosx) ifeq ($(FULL_TARGET),i386-wdosx)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-emx) ifeq ($(FULL_TARGET),i386-emx)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-watcom) ifeq ($(FULL_TARGET),i386-watcom)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-netwlibc) ifeq ($(FULL_TARGET),i386-netwlibc)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-wince) ifeq ($(FULL_TARGET),i386-wince)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-linux) ifeq ($(FULL_TARGET),m68k-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-freebsd) ifeq ($(FULL_TARGET),m68k-freebsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-netbsd) ifeq ($(FULL_TARGET),m68k-netbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-amiga) ifeq ($(FULL_TARGET),m68k-amiga)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-atari) ifeq ($(FULL_TARGET),m68k-atari)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-openbsd) ifeq ($(FULL_TARGET),m68k-openbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),m68k-palmos) ifeq ($(FULL_TARGET),m68k-palmos)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc-linux) ifeq ($(FULL_TARGET),powerpc-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc-netbsd) ifeq ($(FULL_TARGET),powerpc-netbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc-macos) ifeq ($(FULL_TARGET),powerpc-macos)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc-darwin) ifeq ($(FULL_TARGET),powerpc-darwin)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc-morphos) ifeq ($(FULL_TARGET),powerpc-morphos)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),sparc-linux) ifeq ($(FULL_TARGET),sparc-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),sparc-netbsd) ifeq ($(FULL_TARGET),sparc-netbsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),sparc-solaris) ifeq ($(FULL_TARGET),sparc-solaris)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),x86_64-linux) ifeq ($(FULL_TARGET),x86_64-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),x86_64-freebsd) ifeq ($(FULL_TARGET),x86_64-freebsd)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),x86_64-win64) ifeq ($(FULL_TARGET),x86_64-win64)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),arm-linux) ifeq ($(FULL_TARGET),arm-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),arm-wince) ifeq ($(FULL_TARGET),arm-wince)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),powerpc64-linux) ifeq ($(FULL_TARGET),powerpc64-linux)
override TARGET_UNITS+=odbcsql override TARGET_UNITS+=odbcsql odbcsqldyn
endif endif
ifeq ($(FULL_TARGET),i386-linux) ifeq ($(FULL_TARGET),i386-linux)
override TARGET_EXAMPLES+=testodbc override TARGET_EXAMPLES+=testodbc

View File

@ -6,7 +6,7 @@ name=odbc
version=2.0.0 version=2.0.0
[target] [target]
units=odbcsql units=odbcsql odbcsqldyn
examples=testodbc examples=testodbc
[require] [require]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
unit odbcsqldyn;
{$DEFINE DYNLOADINGODBC}
{$i odbcsql.inc}
end.

View File

@ -55,7 +55,6 @@ Var
Res : Integer; Res : Integer;
begin begin
loadODBC;
EnvHandle:=0; EnvHandle:=0;
DBHandle:=0; DBHandle:=0;
StmtHandle:=0; StmtHandle:=0;