chiark / gitweb /
disorder
14 years agoSIGTERM and wait for subprocesses on server shutdown.
Richard Kettlewell [Sat, 24 Oct 2009 16:48:05 +0000 (17:48 +0100)]
SIGTERM and wait for subprocesses on server shutdown.

14 years agoFiner-grained wait for socket to appear when testing.
Richard Kettlewell [Sat, 24 Oct 2009 16:29:22 +0000 (17:29 +0100)]
Finer-grained wait for socket to appear when testing.

14 years agoMerge playlist support.
Richard Kettlewell [Sat, 24 Oct 2009 16:25:28 +0000 (17:25 +0100)]
Merge playlist support.

14 years agoMerge from disorder.dev.
Richard Kettlewell [Sun, 18 Oct 2009 21:54:18 +0000 (22:54 +0100)]
Merge from disorder.dev.

14 years agoShun time(), since on Linux it is not monotonic with gettimeofday().
Richard Kettlewell [Sun, 18 Oct 2009 13:00:03 +0000 (14:00 +0100)]
Shun time(), since on Linux it is not monotonic with gettimeofday().

http://ewx.livejournal.com/530850.html describes the underlying issue
and http://code.google.com/p/disorder/issues/detail?id=35 describes the
effect of this on DisOrder.

14 years agoIf including both program name and date in log message, put date first.
Richard Kettlewell [Sat, 17 Oct 2009 12:37:16 +0000 (13:37 +0100)]
If including both program name and date in log message, put date first.

14 years agoFix mis-merged trackdb_open().
Richard Kettlewell [Sat, 17 Oct 2009 11:51:57 +0000 (12:51 +0100)]
Fix mis-merged trackdb_open().

14 years agoMerge from trunk
Richard Kettlewell [Thu, 15 Oct 2009 19:55:55 +0000 (20:55 +0100)]
Merge from trunk

14 years agoDon't catch SystemExit 77 in tests.
Richard Kettlewell [Thu, 15 Oct 2009 19:55:15 +0000 (20:55 +0100)]
Don't catch SystemExit 77 in tests.

14 years agoDisable (incomplete) Disobedience playlist support.
Richard Kettlewell [Sat, 10 Oct 2009 20:06:36 +0000 (21:06 +0100)]
Disable (incomplete) Disobedience playlist support.

14 years agoMerge playlist support.
Richard Kettlewell [Sat, 10 Oct 2009 20:03:23 +0000 (21:03 +0100)]
Merge playlist support.

14 years agoDitch --with-bits and detect Fink bitness automatically.
Richard Kettlewell [Sat, 10 Oct 2009 09:56:17 +0000 (10:56 +0100)]
Ditch --with-bits and detect Fink bitness automatically.

14 years agoUpdate copyright dates
Richard Kettlewell [Sat, 3 Oct 2009 13:38:01 +0000 (14:38 +0100)]
Update copyright dates

14 years agoAdd missing -liconv in various places.
Richard Kettlewell [Sat, 3 Oct 2009 13:27:42 +0000 (14:27 +0100)]
Add missing -liconv in various places.
Why were they missing and this only spotted now?
 - on Linux no separate iconv is needed
 - on OS X it is but it was probably being pulled in via *.la files
 - I've moved aside Fink's *.la files (since they reflect system
   libraries from their own build time not the current situation)

14 years agoTurn off deprecated symbol warnings under OS X.
Richard Kettlewell [Sat, 3 Oct 2009 13:15:01 +0000 (14:15 +0100)]
Turn off deprecated symbol warnings under OS X.

14 years agoDefault to 32-bit builds on OS X. Apple's compiler now defaults to 64
Richard Kettlewell [Sat, 3 Oct 2009 13:04:27 +0000 (14:04 +0100)]
Default to 32-bit builds on OS X.  Apple's compiler now defaults to 64
bits but existing Fink installs will be 32 bits.  DisOrder's default
is liable to change when I change my Fink l-)

Use --with-bits=32 or --with-bits=64 to override the default.

14 years agoDon't depend on oggdec at build time. It is still needed for 'make
Richard Kettlewell [Sun, 6 Sep 2009 10:03:31 +0000 (11:03 +0100)]
Don't depend on oggdec at build time.  It is still needed for 'make
check'.
Resolves issue #48.

14 years agoRemove duplicate reference to about.tmpl
Richard Kettlewell [Tue, 1 Sep 2009 08:15:30 +0000 (09:15 +0100)]
Remove duplicate reference to about.tmpl

14 years agoUpdate CHANGES.html for FLAC bug fix.
Richard Kettlewell [Sun, 2 Aug 2009 15:45:49 +0000 (16:45 +0100)]
Update CHANGES.html for FLAC bug fix.

14 years agoPatch from Ross Younger to correct FLAC decoding.
Richard Kettlewell [Sun, 2 Aug 2009 15:44:45 +0000 (16:44 +0100)]
Patch from Ross Younger to correct FLAC decoding.

14 years agoDo a test decode of a FLAC file.
Richard Kettlewell [Sun, 2 Aug 2009 15:44:25 +0000 (16:44 +0100)]
Do a test decode of a FLAC file.

14 years agoMention bug-fixes below in CHANGES.html.
Richard Kettlewell [Sun, 2 Aug 2009 15:17:20 +0000 (16:17 +0100)]
Mention bug-fixes below in CHANGES.html.

14 years agoDisobedience now configures its sound device correctly.
Richard Kettlewell [Sun, 2 Aug 2009 15:14:17 +0000 (16:14 +0100)]
Disobedience now configures its sound device correctly.
Patch from Ross Younger.

14 years agoPlacate picky compiler.
Richard Kettlewell [Sun, 2 Aug 2009 15:08:39 +0000 (16:08 +0100)]
Placate picky compiler.
Patch from Ross Younger.

14 years agoInclude sys/time.h in a few places, necessary for older libc versions.
Richard Kettlewell [Sun, 2 Aug 2009 15:07:14 +0000 (16:07 +0100)]
Include sys/time.h in a few places, necessary for older libc versions.
Patch from Ross Younger.

14 years agoAdd trackdb_deinit() stub.
Richard Kettlewell [Sun, 2 Aug 2009 15:04:54 +0000 (16:04 +0100)]
Add trackdb_deinit() stub.
Patch from Ross Younger.

14 years agoplayrtp shouldn't bind twice when in unicast/broadcast mode.
Richard Kettlewell [Sun, 2 Aug 2009 15:02:34 +0000 (16:02 +0100)]
playrtp shouldn't bind twice when in unicast/broadcast mode.
Patch from Ross Younger.

14 years agoFix empeg-only syntax error. Fixes issue #42.
Richard Kettlewell [Mon, 27 Jul 2009 19:56:03 +0000 (20:56 +0100)]
Fix empeg-only syntax error.  Fixes issue #42.

14 years agoSlightly chattier tests/schedule.py.
Richard Kettlewell [Sat, 18 Jul 2009 14:15:49 +0000 (15:15 +0100)]
Slightly chattier tests/schedule.py.
Might help with issue #35.

14 years agoTypo fix.
Richard Kettlewell [Sat, 18 Jul 2009 14:13:57 +0000 (15:13 +0100)]
Typo fix.

14 years agoServer postinst now waits for server to start working in a more reliable
Richard Kettlewell [Sat, 18 Jul 2009 14:13:00 +0000 (15:13 +0100)]
Server postinst now waits for server to start working in a more reliable
way.  It'll give up after about 30s, and assume that the server has
failed.

14 years agoDon't create socket until database is in a sensible state. Should
Richard Kettlewell [Sat, 18 Jul 2009 14:01:57 +0000 (15:01 +0100)]
Don't create socket until database is in a sensible state.  Should
lead to less in the way of semi-random test failures.

14 years agoLeave a bit of headroom above test port number, since we go at least
Richard Kettlewell [Sat, 18 Jul 2009 12:43:11 +0000 (13:43 +0100)]
Leave a bit of headroom above test port number, since we go at least
one above it.  Almost certainly the cause of issue #36.

14 years agoDon't attempt to set the database version if TRACKDB_READ_ONLY.
Richard Kettlewell [Sun, 24 May 2009 11:50:07 +0000 (12:50 +0100)]
Don't attempt to set the database version if TRACKDB_READ_ONLY.

14 years agoTests terminate server with SIGTERM rather than trying to send a
Richard Kettlewell [Sun, 24 May 2009 11:42:49 +0000 (12:42 +0100)]
Tests terminate server with SIGTERM rather than trying to send a
shutdown command; the latter may not work if users haven't been set up
right.

14 years agoMore graceful handling of test failure; the exception is now reported
Richard Kettlewell [Sat, 23 May 2009 08:48:51 +0000 (09:48 +0100)]
More graceful handling of test failure; the exception is now reported
before the daemon is stopped, making it clearer where the failure was.

Add tests/fail.py, a test that always fails.  Naturally this is not
normally run, it's only there to test failure cleanup!

14 years agoHorrible bodge to wait for root user to be created before attempting to
Richard Kettlewell [Thu, 21 May 2009 19:31:34 +0000 (19:31 +0000)]
Horrible bodge to wait for root user to be created before attempting to
connect from test scripts.  Really the server's startup ordering needs
to be adjusted instead.

14 years agoQuieten compiler.
Richard Kettlewell [Sun, 3 May 2009 09:32:38 +0000 (10:32 +0100)]
Quieten compiler.

14 years agoUse -isystem for Fink includes
Richard Kettlewell [Sat, 2 May 2009 19:41:50 +0000 (20:41 +0100)]
Use -isystem for Fink includes

14 years agoAdd SHELL=bash debian/rules for benefit of systems with rubbish default
Richard Kettlewell [Sat, 2 May 2009 11:13:07 +0000 (12:13 +0100)]
Add SHELL=bash debian/rules for benefit of systems with rubbish default
shells.

14 years agoCorrectly bracket check for resuming with a pause-incapable standalone
Richard Kettlewell [Sat, 2 May 2009 10:14:34 +0000 (11:14 +0100)]
Correctly bracket check for resuming with a pause-incapable standalone
player (which shouldn't happen in the first place, so the bug as it
was was actually pretty harmless).

14 years agoWork around stupid excessively strict warning in GCC 4.4.
Richard Kettlewell [Sat, 2 May 2009 10:12:21 +0000 (11:12 +0100)]
Work around stupid excessively strict warning in GCC 4.4.

15 years agoDocumentation + comments re recent disorder-playrtp changes.
Richard Kettlewell [Sat, 18 Apr 2009 13:26:04 +0000 (14:26 +0100)]
Documentation + comments re recent disorder-playrtp changes.

15 years agoBuild fix.
Richard Kettlewell [Sat, 18 Apr 2009 12:46:54 +0000 (13:46 +0100)]
Build fix.

15 years agodisorder-playrtp now prefers to drop silent packets (rather than
Richard Kettlewell [Sat, 18 Apr 2009 12:44:05 +0000 (13:44 +0100)]
disorder-playrtp now prefers to drop silent packets (rather than
filling up buffers and having the OS eventually drop them from the
input socket's buffer).

15 years agodisorder-playrtp --monitor option to keep track of how far off
Richard Kettlewell [Sat, 18 Apr 2009 11:12:24 +0000 (12:12 +0100)]
disorder-playrtp --monitor option to keep track of how far off
minbuffer we are.

15 years agoRestructure play.c to make start()/prepare() distinction clearer.
Richard Kettlewell [Mon, 13 Apr 2009 17:13:53 +0000 (18:13 +0100)]
Restructure play.c to make start()/prepare() distinction clearer.
The common code is moved to background.c.

It's now more likely that an (essentially spurious) "cannot play track
because no connection arrived" message will be logged.  See speaker.c
for full discussion.

15 years agoSpot changes to database parameters and rebuild database.
Richard Kettlewell [Mon, 13 Apr 2009 16:30:26 +0000 (17:30 +0100)]
Spot changes to database parameters and rebuild database.

This change stores a hash of the current database parameters, i.e.
options that affect alias construction, the search database, etc in the
database.  If it is missing or changes then aliases and the search
database are deleted and recomputed.

15 years agodocument latest upgrade issues
Richard Kettlewell [Mon, 13 Apr 2009 15:16:11 +0000 (16:16 +0100)]
document latest upgrade issues

15 years agotypo fix
Richard Kettlewell [Mon, 13 Apr 2009 00:07:40 +0000 (01:07 +0100)]
typo fix

15 years agoInitialize queue_entry.pid.
Richard Kettlewell [Sun, 12 Apr 2009 23:54:17 +0000 (00:54 +0100)]
Initialize queue_entry.pid.

15 years agoRemember to initialize queue_entry.pid where it needs to be.
Richard Kettlewell [Sun, 12 Apr 2009 23:47:51 +0000 (00:47 +0100)]
Remember to initialize queue_entry.pid where it needs to be.

15 years agoMissing initializers, unaccountably not spotted by lenny's GCC!
Richard Kettlewell [Sun, 12 Apr 2009 20:35:45 +0000 (21:35 +0100)]
Missing initializers, unaccountably not spotted by lenny's GCC!

15 years agoNote in various places that reconfiguring the server won't pick up all
Richard Kettlewell [Sun, 12 Apr 2009 20:31:22 +0000 (21:31 +0100)]
Note in various places that reconfiguring the server won't pick up all
changes and in some cases will reject them.

Specifics in disorder_config(5), for some options; those that aren't
updated may be changed in the near future.

Document more consistently that 'lock' and 'gap' do nothing.

Correct apostrophe l-)

15 years agoWarn on attempts to change nice_server during server lifetime.
Richard Kettlewell [Sun, 12 Apr 2009 20:30:59 +0000 (21:30 +0100)]
Warn on attempts to change nice_server during server lifetime.

15 years agoAlways take out a server lock.
Richard Kettlewell [Sun, 12 Apr 2009 20:20:28 +0000 (21:20 +0100)]
Always take out a server lock.

15 years agoMove player/decoder PIDs back into the main queue_entry structure, now
Richard Kettlewell [Sun, 12 Apr 2009 19:56:50 +0000 (20:56 +0100)]
Move player/decoder PIDs back into the main queue_entry structure, now
that queues aren't dumped and reloaded in reconfigure.

15 years agoReload now no longer cycles the database handles or reloads the queue.
Richard Kettlewell [Sun, 12 Apr 2009 19:39:20 +0000 (20:39 +0100)]
Reload now no longer cycles the database handles or reloads the queue.
Both operations are pretty pointless now that we enforce a fixed home
directory.  This also means we'll be able to stash more useful stuff in
queue structures.

15 years agoCheck namepart/stopword don't change across reload.
Richard Kettlewell [Sun, 12 Apr 2009 19:38:48 +0000 (20:38 +0100)]
Check namepart/stopword don't change across reload.

15 years agoDo some basic compatibility checking when installing a new server
Richard Kettlewell [Sun, 12 Apr 2009 16:52:03 +0000 (17:52 +0100)]
Do some basic compatibility checking when installing a new server
configuration.  There is plenty more that could be done.

15 years agoNote that prefsync doesn't do anything any more.
Richard Kettlewell [Sun, 12 Apr 2009 15:29:04 +0000 (16:29 +0100)]
Note that prefsync doesn't do anything any more.

15 years agoAdd README.reload as an aide-memoire regarding configuration handling.
Richard Kettlewell [Sun, 12 Apr 2009 15:28:42 +0000 (16:28 +0100)]
Add README.reload as an aide-memoire regarding configuration handling.

15 years agoMore comments.
Richard Kettlewell [Sun, 12 Apr 2009 15:00:06 +0000 (16:00 +0100)]
More comments.

15 years agoAdd many comments to server/play.c, in advance of possible
Richard Kettlewell [Sun, 12 Apr 2009 14:36:11 +0000 (15:36 +0100)]
Add many comments to server/play.c, in advance of possible
reorganization.

15 years ago--wait-for-device is now deprecated.
Richard Kettlewell [Sun, 12 Apr 2009 14:35:46 +0000 (15:35 +0100)]
--wait-for-device is now deprecated.

15 years ago55-pixel logo (for Google Code page)
Richard Kettlewell [Sun, 12 Apr 2009 12:50:22 +0000 (13:50 +0100)]
55-pixel logo (for Google Code page)

15 years agoupdate CHANGES
Richard Kettlewell [Sat, 11 Apr 2009 20:02:27 +0000 (21:02 +0100)]
update CHANGES

15 years agoMerge audio timing fix branch.
Richard Kettlewell [Sat, 11 Apr 2009 19:59:14 +0000 (20:59 +0100)]
Merge audio timing fix branch.

15 years agoBump up default RTP player buffer sizes. Now big enough to keep ALSA
Richard Kettlewell [Sat, 11 Apr 2009 19:53:12 +0000 (20:53 +0100)]
Bump up default RTP player buffer sizes.  Now big enough to keep ALSA
(first doubling) and ALSA's OSS emulation (second doubling) fed.  The
initial buffer size is still under half a second, and feels close to
instant to this listener.

Also, the player thread now consumes packets immediately rather than
waiting for the next iteration, preventing a race where the (inner)
playing loop at the bottom of main() can terminate unnecessarily
early.

There's bits of debugging code left lying around commented out.  It's
harmless for now!

15 years agoLarger silent interval for pauses; spinning in sub-millisecond
Richard Kettlewell [Sat, 11 Apr 2009 19:47:50 +0000 (20:47 +0100)]
Larger silent interval for pauses; spinning in sub-millisecond
nanosleeps is a bit excessive.

15 years agoAbolish playrtp's "readahead" variable (and associated -b option).
Richard Kettlewell [Sat, 11 Apr 2009 19:13:04 +0000 (20:13 +0100)]
Abolish playrtp's "readahead" variable (and associated -b option).
There's just minbuffer and maxbuffer now.  minbuffer has the same
meaning as before but is additionally used for what readahead used to
be.  maxbuffer defaults to 2*minbuffer.

The man page mentions them, but refers you to the source code, which
now goes into more detail in comment than it did before.

playrtp also no longer adjusts the socket buffer size, accepting the
operating system's default.  Even the relatively small (~40K) Mac one
gives us a couple of dozen typical-sized packets; experimentally it's
quite enough to cope even with a 'make -j' of DisOrder running on the
same host.

15 years agoMacOS build fix
Richard Kettlewell [Sat, 11 Apr 2009 18:54:19 +0000 (19:54 +0100)]
MacOS build fix

15 years agoRewrite uaudio-schedule.c. It's now much simpler and should actually
Richard Kettlewell [Sat, 11 Apr 2009 16:56:25 +0000 (17:56 +0100)]
Rewrite uaudio-schedule.c.  It's now much simpler and should actually
get the timing right.  An hour of rtpmon is encouraging.

This change pushes responsibility for pausing out towards the APIs.

For ALSA we sleep a bit.  For OSS we close the sound device and sleep a
bit.

For RTP we just pretend to send packets; the scheduler takes care of the
timing.

For command again the scheduler takes care of the timing, though as
before we have the option of either suspending writes or sending 0s.

Scantily tested!

15 years agoCompute rate over a longer interval.
Richard Kettlewell [Sat, 11 Apr 2009 15:46:27 +0000 (16:46 +0100)]
Compute rate over a longer interval.

15 years agortpmon now reports once a second, rather than based on numbers of
Richard Kettlewell [Sat, 11 Apr 2009 09:33:13 +0000 (10:33 +0100)]
rtpmon now reports once a second, rather than based on numbers of
packets received.

15 years agoNew debugging program: rtpmon. This listens for packets the same way
Richard Kettlewell [Sat, 11 Apr 2009 09:22:37 +0000 (10:22 +0100)]
New debugging program: rtpmon.  This listens for packets the same way
disorder-playrtp does (and ought to be de-duped against it), and
periodically displays the sample rate over various intervals.

As the code stands the longest-term column is consistently showing
44105Hz, which since it's faster than the rate the sound is played at
will eventually fill up playrtp's (and the kernel's) buffers and force
packets to be dropped, affecting playback quality.

15 years agodisorder-playrtp now includes timestamps in its log output (which
Richard Kettlewell [Sun, 5 Apr 2009 15:08:28 +0000 (16:08 +0100)]
disorder-playrtp now includes timestamps in its log output (which
includes error messages); the reasoning being that timing information
may be especially useful when debugging it.

The server logs to syslog, which already has timestamps.

Other programs could easily have this feature enabled if necessary.

15 years agoREADME mentions Python 2.5 now
Richard Kettlewell [Sun, 5 Apr 2009 14:11:01 +0000 (15:11 +0100)]
README mentions Python 2.5 now

15 years agoREADME.developers now reflects uaudio
Richard Kettlewell [Sun, 5 Apr 2009 14:04:10 +0000 (15:04 +0100)]
README.developers now reflects uaudio

15 years agoupdate copyright date
Richard Kettlewell [Sun, 5 Apr 2009 11:31:13 +0000 (12:31 +0100)]
update copyright date

15 years agoPython module now supports the same authorization hash functions as C.
Richard Kettlewell [Sun, 5 Apr 2009 11:28:33 +0000 (12:28 +0100)]
Python module now supports the same authorization hash functions as C.
This means we need at least Python 2.5 (which shouldn't be a very
onerous requirement any more!)

15 years agouse explicit port number
Richard Kettlewell [Sun, 5 Apr 2009 11:07:10 +0000 (12:07 +0100)]
use explicit port number

15 years agoMerge Unicode 5.1.0 support.
Richard Kettlewell [Sun, 5 Apr 2009 10:07:31 +0000 (11:07 +0100)]
Merge Unicode 5.1.0 support.

15 years agoMention Unicode 5.1.0 in CHANGES.html.
Richard Kettlewell [Sun, 5 Apr 2009 10:07:04 +0000 (11:07 +0100)]
Mention Unicode 5.1.0 in CHANGES.html.

15 years agoDon't look up before/after code points more than once in word boundary
Richard Kettlewell [Sun, 5 Apr 2009 10:05:51 +0000 (11:05 +0100)]
Don't look up before/after code points more than once in word boundary
detection.

15 years agoRename word break property values
Richard Kettlewell [Sun, 5 Apr 2009 09:59:17 +0000 (10:59 +0100)]
Rename word break property values

15 years agoUpdate word break algorithm for Unicode 5.1.0 (based on UAX #29).
Richard Kettlewell [Sun, 5 Apr 2009 09:56:55 +0000 (10:56 +0100)]
Update word break algorithm for Unicode 5.1.0 (based on UAX #29).
We look up the word break property more than once, which is ugly, so
some further work wouldn't be out of place.

15 years agoUpdate grapheme break algorithm to Unicode 5.1.0 (based on UAX #29)
Richard Kettlewell [Sun, 5 Apr 2009 09:45:15 +0000 (10:45 +0100)]
Update grapheme break algorithm to Unicode 5.1.0 (based on UAX #29)

15 years agoUse Unicode 5.1.0 for tables and tests. Approx 200 failures currently.
Richard Kettlewell [Sun, 5 Apr 2009 09:44:49 +0000 (10:44 +0100)]
Use Unicode 5.1.0 for tables and tests.  Approx 200 failures currently.

15 years agoMissing address family member in sockaddrs.
Richard Kettlewell [Sun, 5 Apr 2009 09:28:13 +0000 (10:28 +0100)]
Missing address family member in sockaddrs.

15 years agoDiscard update-rc.d output
Richard Kettlewell [Sat, 4 Apr 2009 16:48:30 +0000 (17:48 +0100)]
Discard update-rc.d output

15 years agoOverride lintian warning about start-stop-daemon
Richard Kettlewell [Sat, 4 Apr 2009 16:47:05 +0000 (17:47 +0100)]
Override lintian warning about start-stop-daemon

15 years agoUse command instead of type, for greater portability
Richard Kettlewell [Sat, 4 Apr 2009 16:39:18 +0000 (17:39 +0100)]
Use command instead of type, for greater portability

15 years agoCorrect debian changelog name
Richard Kettlewell [Sat, 4 Apr 2009 16:35:43 +0000 (17:35 +0100)]
Correct debian changelog name

15 years agoStrip installed objects in .debs
Richard Kettlewell [Sat, 4 Apr 2009 16:33:40 +0000 (17:33 +0100)]
Strip installed objects in .debs

15 years ago.debs now have md5sums
Richard Kettlewell [Sat, 4 Apr 2009 16:27:44 +0000 (17:27 +0100)]
.debs now have md5sums

15 years agoAnother man page hyphen fix
Richard Kettlewell [Sat, 4 Apr 2009 13:24:49 +0000 (14:24 +0100)]
Another man page hyphen fix

15 years agoMan page hyphen fixes
Richard Kettlewell [Sat, 4 Apr 2009 13:22:04 +0000 (14:22 +0100)]
Man page hyphen fixes

15 years agoMerge from OS X GTK+ branch
Richard Kettlewell [Sun, 22 Mar 2009 20:38:31 +0000 (20:38 +0000)]
Merge from OS X GTK+ branch

15 years ago--with-gtk-osx option to use native GTK+ on macs
Richard Kettlewell [Sun, 22 Mar 2009 20:36:50 +0000 (20:36 +0000)]
--with-gtk-osx option to use native GTK+ on macs