[sqlite] [DBD-SQLite] Re: SQLite bug ticket - build fails on sun4-solaris-64int 2.10

Darren Duncan darren at darrenduncan.net
Tue Jan 5 06:52:34 GMT 2010


Roger Binns wrote [on Sun, 03 Jan 2010 09:56:46 -0800]:
> Adam Kennedy wrote:
>> Unfortunately, we neither have the ability to run configure (as we
>> don't have reliable access to /bin/sh or any of the other stuff it
>> needs) or the ability to use a pregenerated static configuration
>> across all platforms.
> 
> Well, you already pre-generate -DHAVE_USLEEP which doesn't exist on Windows
> or older Unixen!  Your only workaround is to read/run the real configure to
> see what kind of stuff it generates and then write your own tests to
> generate the same flags.
> 
> GMTIME_R/LOCALTIME_R will affect performance if doing date/time code - not
> having them means SQLite internally uses a mutex around calls to
> gmtime/localtime which still leaves you vulnerable to bogus data if any
> other non-SQLite thread in the program calls those functions.
> 
> The other flags mainly cover header file presence and you'll generally get
> away without defines for them (unistd.h likely has everything anyway).  The
> only likely gotcha is if you have extension loading enabled in which case
> SQLite needs to know which header contains dlopen and friends.

In response to the above message, following is Adam Kennedy's reply of 
yesterday, which I am forwarding to the sqlite-users list.

Anyone on sqlite-users who wants to respond on this thread, please cross-post to 
dbd-sqlite at lists.scsys.co.uk (which I moderate) and I will let it in.  Anyone on 
dbd-sqlite only that is interested in such issues should also join sqlite-users 
so they can post to it directly.

-- Darren Duncan

-------- Original Message --------
Subject: Re: [Fwd: Re: [sqlite] [DBD-SQLite] Re: SQLite bug ticket - build 
fails on sun4-solaris-64int 2.10]
Date: Mon, 4 Jan 2010 10:40:21 +1100
From: Adam Kennedy <adamkennedybackup at gmail.com>
Reply-To: adam at ali.as
To: Darren Duncan <darren at darrenduncan.net>
CC: DBD::SQLite Mailing List <dbd-sqlite at lists.scsys.co.uk>
References: <4B41113F.1060502 at darrenduncan.net>

(Darren can you bump this onto the SQLite list? Thanks)

The HAVE_USLEEP flag is provided by the following.

if ( $Config{d_usleep} || $Config{osname} =~ m/linux/ ) {
	push @CC_DEFINE, '-DHAVE_USLEEP=1';
}

The %Config hash exposes the internal flags and settings that the
underlying Perl language was originally compiled with.

The $Config{d_usleep} flag should be true if the original Perl
./Configure run detected it.

I can confirm that when I build on Windows we don't use HAVE_USLEEP

Adam K



More information about the DBD-SQLite mailing list