* reenable dblib/freetds for win64, after successfull test.

git-svn-id: trunk@20692 -
This commit is contained in:
marco 2012-04-02 11:46:51 +00:00
parent ab0a7d096c
commit f8e33a7a9c
5 changed files with 14 additions and 12 deletions

View File

@ -9,7 +9,7 @@ uses fpmkunit;
procedure add_dblib; procedure add_dblib;
Const Const
DBLibOSes = [linux,freebsd,netbsd,openbsd,win32,haiku]; DBLibOSes = [linux,freebsd,netbsd,openbsd,win32,win64,haiku];
Var Var
P : TPackage; P : TPackage;

View File

@ -13,7 +13,7 @@ const
SqldbConnectionOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd]; SqldbConnectionOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd];
SqliteOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,wince]; SqliteOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,wince];
DBaseOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,win64,wince]; DBaseOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,win64,wince];
MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32]; MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32,win64];
SqldbWithoutPostgresOSes = [win64]; SqldbWithoutPostgresOSes = [win64];
Var Var
@ -47,7 +47,7 @@ begin
P.SourcePath.Add('src/sqldb/odbc', SqldbConnectionOSes); P.SourcePath.Add('src/sqldb/odbc', SqldbConnectionOSes);
P.SourcePath.Add('src/sqldb/examples', SqldbConnectionOSes); P.SourcePath.Add('src/sqldb/examples', SqldbConnectionOSes);
P.SourcePath.Add('src/sqldb/oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes); P.SourcePath.Add('src/sqldb/oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
P.SourcePath.Add('src/sqldb/mssql', MSSQlOSes); P.SourcePath.Add('src/sqldb/mssql', MSSQLOSes);
P.SourcePath.Add('src/sdf'); P.SourcePath.Add('src/sdf');
P.SourcePath.Add('src/json'); P.SourcePath.Add('src/json');
P.SourcePath.Add('src/datadict', DatadictOSes); P.SourcePath.Add('src/datadict', DatadictOSes);
@ -74,7 +74,7 @@ begin
P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes); P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
P.Dependencies.Add('postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes); P.Dependencies.Add('postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
P.Dependencies.Add('sqlite', SqldbConnectionOSes+SqliteOSes); P.Dependencies.Add('sqlite', SqldbConnectionOSes+SqliteOSes);
P.Dependencies.Add('dblib', MSSQLOses); P.Dependencies.Add('dblib', MSSQLOSes);
P.Dependencies.Add('pxlib',ParadoxOSes); P.Dependencies.Add('pxlib',ParadoxOSes);
P.Dependencies.Add('fcl-json'); P.Dependencies.Add('fcl-json');
@ -642,7 +642,7 @@ begin
AddUnit('dbconst'); AddUnit('dbconst');
AddUnit('bufdataset'); AddUnit('bufdataset');
end; end;
T:=P.Targets.AddUnit('mssqlconn.pp', mssqlOSes); T:=P.Targets.AddUnit('mssqlconn.pp', MSSQLOSes);
with T.Dependencies do with T.Dependencies do
begin begin
AddUnit('sqldb'); AddUnit('sqldb');

View File

@ -6,6 +6,6 @@
Targets.ResetDefaults; Targets.ResetDefaults;
Targets.DefaultDir:='db/sqldb/mssql'; Targets.DefaultDir:='db/sqldb/mssql';
{ Drivers only for the following OSes } { Drivers only for the following OSes }
Targets.DefaultOS:=[win32,openbsd,netbsd,freebsd,linux,haiku]; Targets.DefaultOS:=[win32,win64,openbsd,netbsd,freebsd,linux,haiku];
T:=Targets.AddUnit('mssqlconn'); T:=Targets.AddUnit('mssqlconn');
T.ResourceStrings:=False; T.ResourceStrings:=False;

View File

@ -14,6 +14,12 @@ Compiling FreeTDS DB-Lib with MS Visual C++ 2005/2008/2010:
4. The dblib.dll will appear in the .\dbdll_Release\ subdirectory 4. The dblib.dll will appear in the .\dbdll_Release\ subdirectory
Note: To avoid dependency on msvc*.dll you can set in C/C++ / Code Generation / Runtime Library : "Multi-threaded (/MT)" in all projects Note: To avoid dependency on msvc*.dll you can set in C/C++ / Code Generation / Runtime Library : "Multi-threaded (/MT)" in all projects
To build dblib.dll under MS Visual C++ 2010 Express for Win64 you must:
- download and install Microsoft Windows Software Development Kit 7.1
- setup FreeTDS project to target 64-bit platform (http://msdn.microsoft.com/en-us/library/9yb4317s.aspx)
- Right-click on project "dblib_dll" and select "Properties".
Linker / General / Additional Library Directories add path to "Microsoft SDKs\Windows\v7.1\Lib\x64"
Compiling FreeTDS with iconv support: Compiling FreeTDS with iconv support:
===================================== =====================================

View File

@ -7,7 +7,8 @@ interface
uses uses
Classes, SysUtils, toolsunit Classes, SysUtils, toolsunit
,db, sqldb ,db, sqldb
,mysql40conn, mysql41conn, mysql50conn, mysql51conn, mysql55conn,ibconnection ,mysql40conn, mysql41conn, mysql50conn, mysql51conn, mysql55conn
,ibconnection
{$IFNDEF WIN64} {$IFNDEF WIN64}
{See packages\fcl-db\src\sqldb\postgres\fpmake.pp: postgres connector won't be present on Win64} {See packages\fcl-db\src\sqldb\postgres\fpmake.pp: postgres connector won't be present on Win64}
,pqconnection ,pqconnection
@ -18,10 +19,7 @@ uses
,oracleconnection ,oracleconnection
{$ENDIF WIN64} {$ENDIF WIN64}
,sqlite3conn ,sqlite3conn
{$IFNDEF WIN64}
{This won't be available on Windows 64, either; perhaps other systems as well}
,mssqlconn ,mssqlconn
{$ENDIF WIN64}
; ;
type TSQLDBTypes = (mysql40,mysql41,mysql50,mysql51,mysql55,postgresql,interbase,odbc,oracle,sqlite3,mssql); type TSQLDBTypes = (mysql40,mysql41,mysql50,mysql51,mysql55,postgresql,interbase,odbc,oracle,sqlite3,mssql);
@ -175,7 +173,6 @@ begin
{$IFNDEF Win64} {$IFNDEF Win64}
if SQLDbType = ORACLE then Fconnection := TOracleConnection.Create(nil); if SQLDbType = ORACLE then Fconnection := TOracleConnection.Create(nil);
{$ENDIF Win64} {$ENDIF Win64}
{$IFNDEF Win64}
if SQLDbType = MSSQL then if SQLDbType = MSSQL then
begin begin
Fconnection := TMSSQLConnection.Create(nil); Fconnection := TMSSQLConnection.Create(nil);
@ -190,7 +187,6 @@ begin
FieldtypeDefinitions[ftMemo] := 'TEXT'; FieldtypeDefinitions[ftMemo] := 'TEXT';
FieldtypeDefinitions[ftGraphic] := ''; FieldtypeDefinitions[ftGraphic] := '';
end; end;
{$ENDIF Win64}
if SQLDbType in [mysql40,mysql41,mysql50,mysql51,mysql55,odbc,interbase] then if SQLDbType in [mysql40,mysql41,mysql50,mysql51,mysql55,odbc,interbase] then
begin begin