瀏覽代碼

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

git-svn-id: trunk@20692 -
marco 13 年之前
父節點
當前提交
f8e33a7a9c

+ 1 - 1
packages/dblib/fpmake.pp

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

+ 4 - 4
packages/fcl-db/fpmake.pp

@@ -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');

+ 1 - 1
packages/fcl-db/src/sqldb/mssql/fpmake.inc

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

+ 6 - 0
packages/fcl-db/src/sqldb/mssql/readme.txt

@@ -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:
 =====================================
 =====================================

+ 2 - 6
packages/fcl-db/tests/sqldbtoolsunit.pas

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