[fpc-pascal] Re: RE : Database problem on Solaris SPARC
Reinier Olislagers
reinierolislagers at gmail.com
Mon Jul 16 15:58:38 CEST 2012
On 16-7-2012 15:15, michael.vancanneyt-0Is9KJ9Sb0A at public.gmane.org wrote:
>
>
> On Mon, 16 Jul 2012, Mark Morgan Lloyd wrote:
>
>> michael.vancanneyt-0Is9KJ9Sb0A at public.gmane.org wrote:
>>
>>>> On a side note:
>>>> My quoted paragraph doesn't mention FreeBSD, but I have successfully
>>>> ran Firebird Server & clients under FreeBSD 9.0 on x86, and there are
>>>> FreeBSD downloads on the Firebird website for 2.1.x and older. So just
>>>> because the latest version doesn't contain a download for a specific
>>>> OS+CPU, doesn't make it "not supported". Firebird rocks! :)
>>>
>>> That means we should compile & distribute IBase and ibconnection in FPC,
>>> because I think currently they are not.
>>
>> On a Solaris SPARC system, looking at /usr/local/lib/fpc,
<snip>
>> i.e. it's in 2.6.1 but isn't being built in 2.7.1 (trunk).
<snip>
> Apparently, it is available for your platform too.
>
> Strange that it was removed from trunk, though. We'll need to re-enable it.
> Maybe it is the switch to fpmake that caused this.
>
> Michael.
Not sure if this is where I should be looking but:
Trunk
\packages\fcl-db
SqldbConnectionOSes =
[beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd,aix];
SqldbWithoutPostgresOSes = [win64];
Mmmm... no solaris in there?!? Suggesting no PostgreSQL, Interbase at
all for solaris in trunk!??!
later on
P.SourcePath.Add('src/sqldb/postgres',
SqldbConnectionOSes-SqldbWithoutPostgresOSes);
and
P.SourcePath.Add('src/sqldb/interbase', SqldbConnectionOSes);
... suggesting that if you have postgresql, you should have
interbase/firebird (except on windows64)
Patch attached that adds solaris to SQLDBConnectionOSes [3], but no idea
if it fixes the issue... and if the resulting additional database
drivers/code, e.g.:
examples
src/sqldb/mysql
src/sqldb/odbc
would be correct
Note: FreeTDS can probably also be built for Solaris [1]; an older
binary release for both Solaris and x86 indicates it must at least have
been possible [2]
If so, adding this makes sense in order to get Sybase ASE and MS SQL
Server support (the latter obviously client-only). Even if you don't
have freetds, compiling the mssqlconn unit won't hurt, I'd think.
Also:
- cleaned up throwing in Oracle with PostgreSQL: separated constant
- sorted constants lines so it's easier to see what OSes get what
- added mssqlconn support (added solaris to MSSQLOSes)
- merged
P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes);
P.SourcePath.Add('src/sqldb/sqlite', SqliteOSes);
into
P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes+SqliteOSes);
for clarity on who gets sqlite
Question: shouldn't this line
P.SourcePath.Add('src/dbase');
be changed into
P.SourcePath.Add('src/dbase', DBaseOSes);
or do other units also depend on code in src/dbase
[1]
http://stackoverflow.com/questions/704631/access-sql-server-from-solaris
[2]
http://www.ibiblio.org/pub/packages/solaris/sparc/
[3]
Both original (DOS EOL) and Unix line ending versions
-------------- next part --------------
Index: packages/fcl-db/fpmake.pp
===================================================================
--- packages/fcl-db/fpmake.pp (revision 21919)
+++ packages/fcl-db/fpmake.pp (working copy)
@@ -9,11 +9,12 @@
const
ParadoxOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32];
- DatadictOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,aix];
- SqldbConnectionOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd,aix];
- SqliteOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,wince,aix];
- DBaseOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,win64,wince,aix];
- MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32,win64];
+ DatadictOSes = [aix,beos,darwin,haiku,linux,freebsd,win32,win64,wince];
+ SqldbConnectionOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,win64,wince];
+ SqliteOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,wince];
+ DBaseOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,win64,wince];
+ MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,solaris,win32,win64];
+ SqldbWithoutOracleOSes = [win64];
SqldbWithoutPostgresOSes = [win64];
Var
@@ -41,12 +42,12 @@
P.SourcePath.Add('src/paradox', ParadoxOSes);
P.SourcePath.Add('src/sqldb');
P.SourcePath.Add('src/sqldb/postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
- P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes);
+ P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes+SqliteOSes);
P.SourcePath.Add('src/sqldb/interbase', SqldbConnectionOSes);
P.SourcePath.Add('src/sqldb/mysql', SqldbConnectionOSes);
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/oracle', SqldbConnectionOSes-SqldbWithoutOracleOSes);
P.SourcePath.Add('src/sqldb/mssql', MSSQLOSes);
P.SourcePath.Add('src/sdf');
P.SourcePath.Add('src/json');
@@ -54,7 +55,6 @@
P.SourcePath.Add('src/memds');
P.SourcePath.Add('src/codegen', DatadictOSes);
P.SourcePath.Add('src/export', DatadictOSes);
- P.SourcePath.Add('src/sqlite', SqliteOSes);
P.SourcePath.Add('src/dbase');
P.IncludePath.Add('src/base');
P.IncludePath.Add('src/sqldb');
@@ -71,7 +71,7 @@
P.Dependencies.Add('ibase', SqldbConnectionOSes);
P.Dependencies.Add('mysql', SqldbConnectionOSes);
P.Dependencies.Add('odbc', SqldbConnectionOSes);
- P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
+ P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutOracleOSes);
P.Dependencies.Add('postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
P.Dependencies.Add('sqlite', SqldbConnectionOSes+SqliteOSes);
P.Dependencies.Add('dblib', MSSQLOSes);
@@ -419,7 +419,7 @@
AddUnit('fpddsqldb');
AddUnit('odbcconn');
end;
- T:=P.Targets.AddUnit('fpddoracle.pp', DatadictOSes-SqldbWithoutPostgresOSes);
+ T:=P.Targets.AddUnit('fpddoracle.pp', DatadictOSes-SqldbWithoutOracleOSes);
with T.Dependencies do
begin
AddUnit('sqldb');
@@ -637,7 +637,7 @@
AddUnit('bufdataset');
AddUnit('dbconst');
end;
- T:=P.Targets.AddUnit('oracleconnection.pp', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
+ T:=P.Targets.AddUnit('oracleconnection.pp', SqldbConnectionOSes-SqldbWithoutOracleOSes);
T.ResourceStrings:=true;
with T.Dependencies do
begin
-------------- next part --------------
Index: packages/fcl-db/fpmake.pp
===================================================================
--- packages/fcl-db/fpmake.pp (revision 21919)
+++ packages/fcl-db/fpmake.pp (working copy)
@@ -9,11 +9,12 @@
const
ParadoxOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32];
- DatadictOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,aix];
- SqldbConnectionOSes = [beos,haiku,linux,freebsd,win32,win64,wince,darwin,iphonesim,netbsd,openbsd,aix];
- SqliteOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,wince,aix];
- DBaseOSes = [beos,haiku,linux,freebsd,darwin,iphonesim,solaris,netbsd,openbsd,win32,win64,wince,aix];
- MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,win32,win64];
+ DatadictOSes = [aix,beos,darwin,haiku,linux,freebsd,win32,win64,wince];
+ SqldbConnectionOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,win64,wince];
+ SqliteOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,wince];
+ DBaseOSes = [aix,beos,haiku,linux,freebsd,darwin,iphonesim,netbsd,openbsd,solaris,win32,win64,wince];
+ MSSQLOSes = [beos,haiku,linux,freebsd,netbsd,openbsd,solaris,win32,win64];
+ SqldbWithoutOracleOSes = [win64];
SqldbWithoutPostgresOSes = [win64];
Var
@@ -41,12 +42,12 @@
P.SourcePath.Add('src/paradox', ParadoxOSes);
P.SourcePath.Add('src/sqldb');
P.SourcePath.Add('src/sqldb/postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
- P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes);
+ P.SourcePath.Add('src/sqldb/sqlite', SqldbConnectionOSes+SqliteOSes);
P.SourcePath.Add('src/sqldb/interbase', SqldbConnectionOSes);
P.SourcePath.Add('src/sqldb/mysql', SqldbConnectionOSes);
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/oracle', SqldbConnectionOSes-SqldbWithoutOracleOSes);
P.SourcePath.Add('src/sqldb/mssql', MSSQLOSes);
P.SourcePath.Add('src/sdf');
P.SourcePath.Add('src/json');
@@ -54,7 +55,6 @@
P.SourcePath.Add('src/memds');
P.SourcePath.Add('src/codegen', DatadictOSes);
P.SourcePath.Add('src/export', DatadictOSes);
- P.SourcePath.Add('src/sqlite', SqliteOSes);
P.SourcePath.Add('src/dbase');
P.IncludePath.Add('src/base');
P.IncludePath.Add('src/sqldb');
@@ -71,7 +71,7 @@
P.Dependencies.Add('ibase', SqldbConnectionOSes);
P.Dependencies.Add('mysql', SqldbConnectionOSes);
P.Dependencies.Add('odbc', SqldbConnectionOSes);
- P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
+ P.Dependencies.Add('oracle', SqldbConnectionOSes-SqldbWithoutOracleOSes);
P.Dependencies.Add('postgres', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
P.Dependencies.Add('sqlite', SqldbConnectionOSes+SqliteOSes);
P.Dependencies.Add('dblib', MSSQLOSes);
@@ -419,7 +419,7 @@
AddUnit('fpddsqldb');
AddUnit('odbcconn');
end;
- T:=P.Targets.AddUnit('fpddoracle.pp', DatadictOSes-SqldbWithoutPostgresOSes);
+ T:=P.Targets.AddUnit('fpddoracle.pp', DatadictOSes-SqldbWithoutOracleOSes);
with T.Dependencies do
begin
AddUnit('sqldb');
@@ -637,7 +637,7 @@
AddUnit('bufdataset');
AddUnit('dbconst');
end;
- T:=P.Targets.AddUnit('oracleconnection.pp', SqldbConnectionOSes-SqldbWithoutPostgresOSes);
+ T:=P.Targets.AddUnit('oracleconnection.pp', SqldbConnectionOSes-SqldbWithoutOracleOSes);
T.ResourceStrings:=true;
with T.Dependencies do
begin
More information about the fpc-pascal
mailing list