diff --git a/packages/dblib/fpmake.pp b/packages/dblib/fpmake.pp index 9ac1a29e3a..7c9e5bb718 100644 --- a/packages/dblib/fpmake.pp +++ b/packages/dblib/fpmake.pp @@ -9,7 +9,7 @@ uses fpmkunit; procedure add_dblib; Const - DBLibOSes = [linux,freebsd,netbsd,openbsd,win32,haiku]; + DBLibOSes = [linux,freebsd,netbsd,openbsd,win32,win64,haiku]; Var P : TPackage; diff --git a/packages/fcl-db/fpmake.pp b/packages/fcl-db/fpmake.pp index b5b908b3d5..c14164e464 100644 --- a/packages/fcl-db/fpmake.pp +++ b/packages/fcl-db/fpmake.pp @@ -13,7 +13,7 @@ const SqldbConnectionOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd]; 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]; - MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32]; + MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32,win64]; SqldbWithoutPostgresOSes = [win64]; Var @@ -47,7 +47,7 @@ begin P.SourcePath.Add('src/sqldb/odbc', SqldbConnectionOSes); P.SourcePath.Add('src/sqldb/examples', SqldbConnectionOSes); 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/json'); P.SourcePath.Add('src/datadict', DatadictOSes); @@ -74,7 +74,7 @@ begin P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes); P.Dependencies.Add('postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes); P.Dependencies.Add('sqlite', SqldbConnectionOSes+SqliteOSes); - P.Dependencies.Add('dblib', MSSQLOses); + P.Dependencies.Add('dblib', MSSQLOSes); P.Dependencies.Add('pxlib',ParadoxOSes); P.Dependencies.Add('fcl-json'); @@ -642,7 +642,7 @@ begin AddUnit('dbconst'); AddUnit('bufdataset'); end; - T:=P.Targets.AddUnit('mssqlconn.pp', mssqlOSes); + T:=P.Targets.AddUnit('mssqlconn.pp', MSSQLOSes); with T.Dependencies do begin AddUnit('sqldb'); diff --git a/packages/fcl-db/src/sqldb/mssql/fpmake.inc b/packages/fcl-db/src/sqldb/mssql/fpmake.inc index 160b682de7..a3a16c6c2d 100644 --- a/packages/fcl-db/src/sqldb/mssql/fpmake.inc +++ b/packages/fcl-db/src/sqldb/mssql/fpmake.inc @@ -6,6 +6,6 @@ Targets.ResetDefaults; Targets.DefaultDir:='db/sqldb/mssql'; { 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.ResourceStrings:=False; diff --git a/packages/fcl-db/src/sqldb/mssql/readme.txt b/packages/fcl-db/src/sqldb/mssql/readme.txt index 3b9a9a5675..3b1f143ee1 100644 --- a/packages/fcl-db/src/sqldb/mssql/readme.txt +++ b/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 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: ===================================== diff --git a/packages/fcl-db/tests/sqldbtoolsunit.pas b/packages/fcl-db/tests/sqldbtoolsunit.pas index fe49066ea9..319096689e 100644 --- a/packages/fcl-db/tests/sqldbtoolsunit.pas +++ b/packages/fcl-db/tests/sqldbtoolsunit.pas @@ -7,7 +7,8 @@ interface uses Classes, SysUtils, toolsunit ,db, sqldb - ,mysql40conn, mysql41conn, mysql50conn, mysql51conn, mysql55conn,ibconnection + ,mysql40conn, mysql41conn, mysql50conn, mysql51conn, mysql55conn + ,ibconnection {$IFNDEF WIN64} {See packages\fcl-db\src\sqldb\postgres\fpmake.pp: postgres connector won't be present on Win64} ,pqconnection @@ -18,10 +19,7 @@ uses ,oracleconnection {$ENDIF WIN64} ,sqlite3conn - {$IFNDEF WIN64} - {This won't be available on Windows 64, either; perhaps other systems as well} ,mssqlconn - {$ENDIF WIN64} ; type TSQLDBTypes = (mysql40,mysql41,mysql50,mysql51,mysql55,postgresql,interbase,odbc,oracle,sqlite3,mssql); @@ -175,7 +173,6 @@ begin {$IFNDEF Win64} if SQLDbType = ORACLE then Fconnection := TOracleConnection.Create(nil); {$ENDIF Win64} - {$IFNDEF Win64} if SQLDbType = MSSQL then begin Fconnection := TMSSQLConnection.Create(nil); @@ -190,7 +187,6 @@ begin FieldtypeDefinitions[ftMemo] := 'TEXT'; FieldtypeDefinitions[ftGraphic] := ''; end; - {$ENDIF Win64} if SQLDbType in [mysql40,mysql41,mysql50,mysql51,mysql55,odbc,interbase] then begin